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

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			ALAMO GROUP INC
		CENTRAL INDEX KEY:			0000897077
		STANDARD INDUSTRIAL CLASSIFICATION:	FARM MACHINERY & EQUIPMENT [3523]
		IRS NUMBER:				741621248
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			1231

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

	BUSINESS ADDRESS:	
		STREET 1:		1627 E WALNUT
		CITY:			SEGUIN
		STATE:			TX
		ZIP:			78155
		BUSINESS PHONE:		8303791480

	MAIL ADDRESS:	
		STREET 1:		P.O. BOX 549
		STREET 2:		1627 EAST WALNUT
		CITY:			SEGUIN
		STATE:			TX
		ZIP:			78155
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-K
<SEQUENCE>1
<FILENAME>alg-20221231.htm
<DESCRIPTION>10-K
<TEXT>
<XBRL>
<?xml version="1.0" ?><!--XBRL Document Created with Wdesk from Workiva--><!--Copyright 2023 Workiva--><!--r:7e490c47-366a-4d14-b516-70bcfe20753e,g:370dcb37-b2fc-4837-9d03-6da297616798,d:51762c1e0d7f47aeb6d24f3a0d19ea64--><html xmlns:srt="http://fasb.org/srt/2022" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.w3.org/1999/xhtml" xmlns:country="http://xbrl.sec.gov/country/2022" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:alg="http://www.alamo-group.com/20221231" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dei="http://xbrl.sec.gov/dei/2022" xmlns:us-gaap="http://fasb.org/us-gaap/2022" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2020-02-12" xml:lang="en-US"><head><meta http-equiv="Content-Type" content="text/html"/>


<title>alg-20221231</title></head><body><div style="display:none"><ix:header><ix:hidden><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:EntityCentralIndexKey" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF80L2ZyYWc6M2RhNGJjZDdmNDc1NGZkNzhjYzdlMWUwOTMwMmJjMWQvdGFibGU6MTUzNGIzYzlhZDllNGU0M2IwZjQxYzMxNWVlMDYxZWIvdGFibGVyYW5nZToxNTM0YjNjOWFkOWU0ZTQzYjBmNDFjMzE1ZWUwNjFlYl8zLTEtMS0xLTYzODg3_2a2e0118-e02c-4baa-9ac2-9435584bc924">0000897077</ix:nonNumeric><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:DocumentFiscalYearFocus" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF80L2ZyYWc6M2RhNGJjZDdmNDc1NGZkNzhjYzdlMWUwOTMwMmJjMWQvdGFibGU6MTUzNGIzYzlhZDllNGU0M2IwZjQxYzMxNWVlMDYxZWIvdGFibGVyYW5nZToxNTM0YjNjOWFkOWU0ZTQzYjBmNDFjMzE1ZWUwNjFlYl80LTEtMS0xLTYzODg3_bfdbb617-9f99-438d-82eb-c6da7b1b6130">2022</ix:nonNumeric><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:DocumentFiscalPeriodFocus" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF80L2ZyYWc6M2RhNGJjZDdmNDc1NGZkNzhjYzdlMWUwOTMwMmJjMWQvdGFibGU6MTUzNGIzYzlhZDllNGU0M2IwZjQxYzMxNWVlMDYxZWIvdGFibGVyYW5nZToxNTM0YjNjOWFkOWU0ZTQzYjBmNDFjMzE1ZWUwNjFlYl81LTEtMS0xLTYzODg3_e050029a-9ab2-4ecf-9c6d-3db711a51600">FY</ix:nonNumeric><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:AmendmentFlag" format="ixt:fixed-false" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF80L2ZyYWc6M2RhNGJjZDdmNDc1NGZkNzhjYzdlMWUwOTMwMmJjMWQvdGFibGU6MTUzNGIzYzlhZDllNGU0M2IwZjQxYzMxNWVlMDYxZWIvdGFibGVyYW5nZToxNTM0YjNjOWFkOWU0ZTQzYjBmNDFjMzE1ZWUwNjFlYl82LTEtMS0xLTYzODg3_ee837fd6-612a-4687-be86-7733fadbd2ec">FALSE</ix:nonNumeric><ix:nonNumeric contextRef="ic45bfdab6e1e4d28a243163b4189686e_D20220101-20221231" name="alg:ProductWarrantyAccrualLagPeriod" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI3OTQ_46274a57-12b5-4685-a7f7-b0ac8eb30cb6">P3M</ix:nonNumeric><ix:nonNumeric contextRef="ic45bfdab6e1e4d28a243163b4189686e_D20220101-20221231" name="alg:ProductWarrantyAccrualLagPeriod" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI4OTc_461d3e84-85a1-4af0-9172-95baabe6f27b">P3M</ix:nonNumeric><ix:nonNumeric contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" name="us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtMC0xLTEtNjM4ODc_519b9153-1678-4ae1-96d9-ece32fbc6c3b">http://fasb.org/us-gaap/2022#OtherAssetsNoncurrent</ix:nonNumeric><ix:nonNumeric contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" name="us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtMC0xLTEtNjM4ODc_5e442bd9-e082-43f6-86fc-6dbc895fe9ba">http://fasb.org/us-gaap/2022#OtherAssetsNoncurrent</ix:nonNumeric><ix:nonNumeric contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" name="us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtMC0xLTEtNjM4ODc_54be147c-36db-432e-8216-c265a23c942d">http://fasb.org/us-gaap/2022#AccruedLiabilitiesCurrent</ix:nonNumeric><ix:nonNumeric contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" name="us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtMC0xLTEtNjM4ODc_82079088-df46-459e-bc9c-032b93ad004c">http://fasb.org/us-gaap/2022#AccruedLiabilitiesCurrent</ix:nonNumeric><ix:nonNumeric contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" name="us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtMC0xLTEtNjM4ODc_152d7955-5136-4b3a-93f9-0d42b9c326e3">http://fasb.org/us-gaap/2022#OtherLiabilitiesNoncurrent</ix:nonNumeric><ix:nonNumeric contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" name="us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtMC0xLTEtNjM4ODc_39316545-72e7-4e77-b63e-2caddc622e2e">http://fasb.org/us-gaap/2022#OtherLiabilitiesNoncurrent</ix:nonNumeric><ix:nonNumeric contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" name="us-gaap:FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_9b1bfaa9-100d-4705-a145-bc36daae463f">http://fasb.org/us-gaap/2022#LongTermDebtAndCapitalLeaseObligations</ix:nonNumeric><ix:nonNumeric contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" name="us-gaap:FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_c663b58e-5137-4e83-8879-5ba725887654">http://fasb.org/us-gaap/2022#LongTermDebtAndCapitalLeaseObligationsCurrent</ix:nonNumeric><ix:nonNumeric contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" name="us-gaap:FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_fdd87ed0-80b6-4669-a105-d27b4fbd2dac">http://fasb.org/us-gaap/2022#LongTermDebtAndCapitalLeaseObligations</ix:nonNumeric><ix:nonNumeric contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" name="us-gaap:FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_ffc75352-7531-4c29-bdca-e32d1f2af6f6">http://fasb.org/us-gaap/2022#LongTermDebtAndCapitalLeaseObligationsCurrent</ix:nonNumeric></ix:hidden><ix:references xml:lang="en-US"><link:schemaRef xlink:type="simple" xlink:href="alg-20221231.xsd"></link:schemaRef></ix:references><ix:resources><xbrli:context id="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i8e372fb5454742f6ac912992828f4480_I20220630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i887f22af95754d37804e79c104c0c635_I20230217"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-02-17</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="shares"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:context id="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i4a4acb75213e4a59aa709376381730bd_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></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="i0ff65971f8a344f3afdf75aa25d869f1_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:VegetationManagementMember</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="if77ec05e8b684280b18475c39a8bf482_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:VegetationManagementMember</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="i513fb2f7accf49ecacbc7116eafbe588_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:VegetationManagementMember</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="ibaa2c0aa8b8145e0846cbc65655c330c_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:IndustrialManagementMember</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="i3182e3589e3647f599dbed14ec3a5afe_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:IndustrialManagementMember</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="i36cdf5e00a0245ce92a15de38f5924f4_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:IndustrialManagementMember</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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:context id="i48e658fbd10f456086edb59193159816_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="idfff0fc4e5bf4119bba14d59d225d229_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i106a5b274aba4c6d889b696421f6d462_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i5564749cfaa941a9b9c4d886886c9bc2_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i6b5a981954b0422baa6e0bc09771aaf4_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i418e1db8b7e1486ea4572f36257de9de_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i44bc7e6d50f24c73a6c3024416870968_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="ie4e7d0b6ff9343ecb2865f65c12499ce_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="ia7915fed79c644b58899d17704d5719d_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="ic2896861ae284cbc8784e33f237b15b8_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i4b34ed98c2754071a4684bfcab1d4059_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i54d9a911820d4073a29730b9df2e92c0_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="ie02f87b7278a4b05a734307040b023ae_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i70aaf8f3036d4bf8b567c4ab7b4b3578_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i8d341c55254649f983daa2187dbb3c28_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i5d74fc3138934e70861715f06fa062c7_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i841cff3d2384466d8e02cc714034bb6d_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i94acb5b8cf414532a2b46fc4de433694_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="icce422c6406346e18a3c8ece4f20af69_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i1492e60d49a541618463d2ed72a8cb55_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i1187989f17d7447e820b47bb6d9b9567_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i960c9c28c1b54a86adbc27a79d0d61e1_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i14d095e48a754e0d84deb55dea0e7534_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i7ae6563033b64c3fafae6f088fa245ef_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i3114f6dde5534997ba147bf29b5ba918_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i39fb48d3870446bf93d15f60c7d73de6_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i3e48d85ced0f4198be5b279ed3c2cf71_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="ida534350511f461cb3aeef03f954f40b_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i22b42d26702846c7afbfed5d7f050f34_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i4c2db2597449494ca1e4c906c5f2f579_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="ibd1277243f684704b4f9ee8707aed2a0_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i7a77b0d7f923475a9263322e96150bb1_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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:context id="i19088741b3fd4eba9737feda62eb75f5_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="ib613492db2fd4fb0b699d97c44b617be_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="ibd895d48ac38440e907abfa04402881f_D20221001-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-10-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="segment"><xbrli:measure>alg:segment</xbrli:measure></xbrli:unit><xbrli:context id="ic45bfdab6e1e4d28a243163b4189686e_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i9f473c4749174271bfd71f93c77ca853_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="id956c87fa891446f8832478c415ae209_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="icc4ff7dd1e9a4f5fbf837842648f304e_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i4a2e4f923a74483fb510a1d4aad2630b_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i81b7a9ce02d3439b9022865004507986_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="ia8717b37bc834a2c90bb4e0d9c8a9ef0_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="ie645f8221895406fbea9037626790faf_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</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="number"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit><xbrli:context id="idbd5d2e161fe40df8aef073e0d3c8443_I20211026"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alg:DutchPowerCompanyBVMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-10-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id62d12deb6a04e47bc668cc97fa66db1_D20211026-20211026"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alg:DutchPowerCompanyBVMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-10-26</xbrli:startDate><xbrli:endDate>2021-10-26</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia9823408724d4000926edbb1d190feae_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">alg:SECSchedule1209SalesDiscountsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ifb1091d992d44cf0b0f9802926f1c066_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">alg:SECSchedule1209SalesDiscountsMember</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="ibd755e8236cd4991b0c03464ecd075e5_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">alg:SECSchedule1209SalesDiscountsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2c251835505847ab9f8b8275a364aaf6_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0877b31f3bfe4be2940855869417e0ff_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</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="i6e0321a33def419ba2273d3fe76c9e9a_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7fc12cd1cf6643658925beb572783f63_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:WarrantyReservesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i278b14acd71a4ef888de09487a900f94_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:WarrantyReservesMember</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="i327013052a5348e58d6206072d5a7c00_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:WarrantyReservesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i10fd44437faf49d8a71d549da1958cff_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">alg:SECSchedule1209SalesDiscountsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i628b14e273ef4667875cefb44919b448_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">alg:SECSchedule1209SalesDiscountsMember</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="ieab4254aff3642bbadde2c564b0a85f4_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i68d46899feed46e9a18669d1773b0388_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</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="if474962fab4a4030b9eb991b08ecfdf2_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:WarrantyReservesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3ed7c8ddc75c4302a5a683b9a5d47274_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:WarrantyReservesMember</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="i21f9273d6b3548fa8973dee9a48f69e0_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">alg:SECSchedule1209SalesDiscountsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i22c526cb7bc2454ebb5a249fde941e9c_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">alg:SECSchedule1209SalesDiscountsMember</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="i1cd0e52666304b0cb6d2e91288aad69e_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i77e23cfd658449999ef76db76a8fabe0_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</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="i9e13101fce0c40dea862f82c5b2403e3_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:WarrantyReservesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9d7480f64a314da1ab83562492ffc296_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:WarrantyReservesMember</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="i2ec5941998b24e159ba1077cecd2e60e_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alg:WholegoodUnitsMember</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="i72a1ba6068504c79a2fd7f8558bca6f2_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alg:PartsMember</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="i3348296671fa487a884971b97eb216d2_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i249e2e9ad69844859b9656f0380afb9e_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i122eac470b9c48329a774c3e3bcded96_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iad324c38f2e34c1f9ded6165b72b2375_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i95aa30d2c7224485a374de947f8e7755_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i36b0126f5a16463bbe27a370ace65833_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</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="i77a694f6bf444184afdfc6dc4a57c372_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic49da4abfe964d918d3cc823a356905f_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i00b8ba35ccec46dc9f5c29a4e5a91143_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="icb424d7932f448c89223aa3397e280e9_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id99a7e4f4e834539b17bffb1ca230dd7_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id56c89efa1f343888b0c50ebff7d1899_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie25d80ccacf9429992256251efa00407_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iaa9e5101517947619a1354bfee65e555_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</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="i86aa6d9413174db0a6c0a14c0845700d_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic8fdf016860e4a6eaadd0501b7c4cce8_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3e80469457664043b7fa8c3e73b6786a_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</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="i7533dbd0266540ad9432641845a22e51_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</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="i69f6c89be1a144e883096028fa26b0da_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib8393b9f33594e8dba986d7172143777_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib99b82b5a9c64c95a4bfe92aec5e613b_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</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="iedfcf9c8e2264240a132e99838accd6d_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:VegetationManagementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iabfb89696316430eafcf64baede0be8b_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:IndustrialManagementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9b9aaca501be4ac2a3e9953b36156442_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:VegetationManagementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5bb51e7640b046fcbb14996aa5001c29_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:IndustrialManagementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ifabd95c5636e4ae29d276ed3df2f04aa_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:VegetationManagementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib5cd129a56a24fffb8578ab324d3ad87_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:IndustrialManagementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i803060fc3e714dea8c404e56b28916c4_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:VegetationManagementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3d862a4e890749ffb9f5627adbe5ad23_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:IndustrialManagementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i68a256c1723d43dbb5df670bc790f863_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</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="icbd1c5e5e7eb47c3958b7b85bf0d081c_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</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="iadf14f0daee54087a5b649d24234dac0_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i95178ffe330d48fcb4637fc13250db52_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib292af5aee0b48b289a81b72eca38568_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</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="iee07aec1619645a0ae8b12bd11a69963_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><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="i435e4507e6da42a3a9932ae15da0534c_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="id92355343cac46968b239cfc5b441c9e_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="ifc03ad598ec34d0a9d6718b3661fd473_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:IntellectualPropertyMember</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="i9c308d2b36ab400a8412ea7aeb29b0ad_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:IntellectualPropertyMember</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="i83a283f3498f4b0fbfc99e5b21267cb7_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:IntellectualPropertyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i71cdbdff48c64bc382792b93bb428b29_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:IntellectualPropertyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5c7c231201cc4d7f849189db8e3482d7_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OffMarketFavorableLeaseMember</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="i55ac1b87fd0140a5bea90053aada53dc_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OffMarketFavorableLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i470fd970d74c412eb3030b333e36860e_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OffMarketFavorableLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1a039da70c38475196938960bb28c546_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i857f1683f4514f1c9ef93bf8aebe3446_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i609e1a9b7ab549e796bb32b09b753415_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">alg:GradallMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9bfa2e1d27b04dd59a40d79958302b94_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">alg:BushHogMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i424fb85a13d04e37be619989350f15bf_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i91573b62aa034f839c16b96542b20382_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia1bd7756203d4a66b543323629c2482c_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:MediumTermNotesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i675eae9488b54f378ef618ba956ab83c_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:MediumTermNotesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia7571866d7ef4d27a8e9a1abed0c52c3_I20221028"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0e92704c63dd44fd966d6fae8d0d8e53_I20221028"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alg:TermFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9a6b48d630e74ce9aef9f9eb731b3006_I20221028"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:StandbyLettersOfCreditMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie04bb4cb3a604fbd98c2353b6aa9d56e_D20221028-20221028"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:StandbyLettersOfCreditMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-10-28</xbrli:startDate><xbrli:endDate>2022-10-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9b6e8624e81943d4beae545861849ec0_D20221028-20221028"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alg:TermFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-10-28</xbrli:startDate><xbrli:endDate>2022-10-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idfac62871e4a40fd93ae3475d46cc451_I20221028"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia094bf88179843b3a2e0b1221fc54927_I20221028"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iacedc088100e4e3cab47bb79b4393b39_I20221028"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib5a844e3ed8648eab740d6b4a8340cf8_I20221028"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia90d069988524b79a36aa083c4b5ea7f_D20221028-20221028"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-10-28</xbrli:startDate><xbrli:endDate>2022-10-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i57683f616816455b9d2d3f82dfee4e7e_D20221028-20221028"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-10-28</xbrli:startDate><xbrli:endDate>2022-10-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5d9b8bb0d7d046279d8250520b65cd6c_I20191024"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-10-24</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="covenant"><xbrli:measure>alg:covenant</xbrli:measure></xbrli:unit><xbrli:context id="iafdae17ff83f451d8586288de3217a60_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i974fb1cfb185413eb7f81ef329347fe1_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alg:TermFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i19738afad34c4dc5a87ec2fe8156ed18_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:StandbyLettersOfCreditMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i4e96c6494cd0405689a6ca0d4e5afaad_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="ib24cead7aa1d453cbb4bc6f47cb17caa_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="id39bf75be2ed41dca0e9d849b8b972d4_D20230201-20230201"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-02-01</xbrli:startDate><xbrli:endDate>2023-02-01</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i038226a8b3f3404f98d4ecbbb625c889_D20230103-20230103"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-03</xbrli:startDate><xbrli:endDate>2023-01-03</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1eae38dc9edd48f998885d656ee56f1f_I20150507"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:IncentiveStockOption2015PlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2015-05-07</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib57b490f97f0442fa5ebce9384a2da12_D20150507-20150507"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:IncentiveStockOption2015PlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2015-05-07</xbrli:startDate><xbrli:endDate>2015-05-07</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ibb8983f6dca043ffb15dcb9296db84fb_D20150507-20150507"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:IncentiveStockOption2015PlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2015-05-07</xbrli:startDate><xbrli:endDate>2015-05-07</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iaf39c77254434dd89c8e34925ee2cbf6_D20150507-20150507"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:IncentiveStockOption2015PlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheTwoMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2015-05-07</xbrli:startDate><xbrli:endDate>2015-05-07</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0eeffb1ea1e84e5890830bc854584ac6_D20150507-20150507"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VestingAxis">alg:SharebasedCompensationAwardTrancheFourMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:IncentiveStockOption2015PlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2015-05-07</xbrli:startDate><xbrli:endDate>2015-05-07</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8c4050d8889b46eb82ccc74d27f377c8_D20150507-20150507"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheThreeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:IncentiveStockOption2015PlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2015-05-07</xbrli:startDate><xbrli:endDate>2015-05-07</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i003b20a90fb44ef1bcb77f9b3c6059fc_D20150507-20150507"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VestingAxis">alg:SharebasedCompensationAwardTrancheFiveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:IncentiveStockOption2015PlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2015-05-07</xbrli:startDate><xbrli:endDate>2015-05-07</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</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="icd1fb9b0cdab41bd9c168d8388cb4c8d_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic761a5d8d966472c96815aa37af02a45_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id0b7a3a5b4e443538e02d0e614fc830b_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i51676da905124b298c0db5d4b498da5c_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</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="i219410650f93481ebd26323b8a832def_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</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="i0b10e572815d4913953edd8c1c32efa6_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ibee7f745de38423e9660fafdbc60fe1e_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alg:QualifiedStockOptionsExercisePriceRangeOneMember</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="i332b0e139818417a8cd4a2d136b9d52b_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alg:QualifiedStockOptionsExercisePriceRangeOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9ab8ee9172b244a8a8dd397b1dd4f908_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alg:QualifiedStockOptionsExercisePriceRangeTwoMember</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="i767a94e19e5e40159ac0157413db98af_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alg:QualifiedStockOptionsExercisePriceRangeTwoMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iaf629ab3836645949ab33e5501ca2f6b_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alg:QualifiedStockOptionsExercisePriceRangeThreeMember</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="i9b3455aa56ab4d2a8a3dd620f413fe46_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alg:QualifiedStockOptionsExercisePriceRangeThreeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if704f1f032cf4b038dd5aaa4540f8a40_I20190502"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:TwoZeroZeroNineEquityIncentivePlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-05-02</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if51b205dc7294d10bf77e82a58091b25_D20190502-20190502"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:TwoZeroZeroNineEquityIncentivePlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-05-02</xbrli:startDate><xbrli:endDate>2019-05-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0cdeefb3beb84a369128f330466e4a2a_D20190502-20190502"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:TwoZeroZeroNineEquityIncentivePlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-05-02</xbrli:startDate><xbrli:endDate>2019-05-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if63b9384c4f94bddbe03628bb7f1e50d_D20190502-20190502"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VestingAxis">alg:SharebasedCompensationAwardTrancheFourMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:TwoZeroZeroNineEquityIncentivePlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-05-02</xbrli:startDate><xbrli:endDate>2019-05-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i40bae31f1b4f4d67b5f1264b3662002b_D20190502-20190502"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VestingAxis">alg:SharebasedCompensationAwardTrancheFiveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:TwoZeroZeroNineEquityIncentivePlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-05-02</xbrli:startDate><xbrli:endDate>2019-05-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if834433608a64a74af49ea7398f84bde_D20190502-20190502"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheThreeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:TwoZeroZeroNineEquityIncentivePlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-05-02</xbrli:startDate><xbrli:endDate>2019-05-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic07dcf17dce848028271ce79a08ab201_D20190502-20190502"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:TwoZeroZeroNineEquityIncentivePlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheTwoMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-05-02</xbrli:startDate><xbrli:endDate>2019-05-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i667450baff3d4245af27b6b303fd59cd_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1fd93aa3097f4b8dbbca4de45cf5ed5b_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7604370e7a114affa5bb1f9fbbc2bd2c_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</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="i5ad65b8c4e4d456d9cf858ed0bf0f59f_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</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="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</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="ifc1c7939faa3461a8d5c3b191e68cfcd_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alg:NonQualifiedStockOptionsExercisePriceRangeThreeMember</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="id831c7e0d302482faca3cb3558d21e5c_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alg:NonQualifiedStockOptionsExercisePriceRangeThreeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ifc8f47975add4f749d27d6b110aa5ed3_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="ic1d5d64367254c4c819a305f0ab20b2c_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie83acb459d73467c87c99796c09994fb_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i38f33838ce91420482c5796e5388bdd8_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i1011c4830f5f4c91869fe042f30279ce_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i23b96fe554184ee8b4402d7b2035a8fc_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="if085f70a27904be0b93506b76678eba3_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i3490753726ff4591a37ea325756d1abc_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</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="i7b81e0cb72d241c4a4953368ac25f53e_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i6d534cef18a748ab92702c2c5656810b_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i2e5beadb31454176860e9cb0fa2c4b9a_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="icb775f781f264316a750b5e7578a7bad_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i92d53dcc417e4226ae49092eda85d752_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">alg:AwardDateTwoMember</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="i50ab4791b6dd43998fe818c2a7c3ceec_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i9023c726c26349e2a4c074fdc4a88989_I20060203"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2006-02-03</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="plan"><xbrli:measure>alg:plan</xbrli:measure></xbrli:unit><xbrli:context id="id2b30941a2b4404bbd80394ffc1e2677_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanNameAxis">alg:GradallCompanyEmployeesRetirementPlanMember</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="employee"><xbrli:measure>alg:employee</xbrli:measure></xbrli:unit><xbrli:context id="iddf0fe15564f4b3b90fe266fbef3b250_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i157f5442992d4d448c7b527a323d059a_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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:context id="ifb1b11ee7ef44dc39600b55c62f605e9_D20230101-20231231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if3cf207cdc8041109a3c2438a4737717_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:DefinedBenefitPlanEquitySecuritiesMember</xbrldi:explicitMember><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:context id="icd556120213a4b5fbfc69e2fa86c1d1c_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:DefinedBenefitPlanEquitySecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2c8713fba4954513b58d3eab3a03f19e_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:DefinedBenefitPlanDebtSecurityMember</xbrldi:explicitMember><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:context id="i437277f20055408d91f03cfe359bc428_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:DefinedBenefitPlanDebtSecurityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i74997fdc0ff948d29df323b4c3cb9d2c_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:ShortTermInvestmentsMember</xbrldi:explicitMember><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:context id="i5e260d6c10e145de848833420aba74ad_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:ShortTermInvestmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic0c4ecbf07bf43779d0da8efbf7bb6bb_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:OtherInvestmentsMember</xbrldi:explicitMember><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:context id="iceda45e1bd664c60986a5aa84bb37e7a_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:OtherInvestmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i717c4ae25fa44cca9308d5f5da3e076c_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:MidCapMutualFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="icdeff85d9a4e4460a5e04ee26e4619d9_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:MidCapMutualFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7bcfdde1d2ab476ca1face97be403c08_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:MidCapMutualFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2e2a67cc61a1453b91a2e7b385ffc756_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:MidCapMutualFundsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7e5d559dc3fb470b8ce236f1e3326f6e_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:InternationalMutualFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i17f2ef5d2bc0439aad7b784c1bd8f92b_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:InternationalMutualFundsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i4dc44a40978b47deb5bf75f47c6879f6_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:InternationalMutualFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib597f35825274befb83d1eae8312e811_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:InternationalMutualFundsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i971843612b4444378d4578c27098e323_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0f139e029a4a40b494b1166a43cef3ee_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8fb804c5d600424d99eb72be0c8a5b59_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ifcdac7dd37c74ab5889b9f9d01217713_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iec1e7c4f52704e7da1f7c6cf4c4d7d62_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIIMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic29f1632958d477b8f1e10e684ff8483_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIIMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i946e625a959742208f8405d66251235f_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIIMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i09714fa45c9744278086938bab8108ae_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIIMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i49454c83e1dd4a15bd286665b6172f09_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoInternationalEquityIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6deb7f4f37f24982a39c08cf0bbe04ec_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoInternationalEquityIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if70c161cc4ad4e6abc26a4e751891ee6_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoInternationalEquityIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3c88509b92544ba08854dde611a0a0f1_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoInternationalEquityIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia2aee32b51e346ddab38ffaa0211827e_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoCausewayMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="idcc624feeeef475db835d65f85ea3c8b_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoCausewayMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i76627f49e9d6466396949562e5951519_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoCausewayMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia0d76ce3ece041f79491d2d5cbafcd64_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoCausewayMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia0356ae226af468a976230d65234e8d4_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapGrowthIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9e5e7128fefd4808a7a01b152dbde9a4_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapGrowthIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5a70c21a1fbc4d4b9cd4e9d9595f7adf_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapGrowthIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8cce23c346084618907320d801b9e400_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapGrowthIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i43d1dbb904164762bfde5595aa063532_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapValueIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id7422f04eae44054bfbce6ca8038d09f_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapValueIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic7d5c518d9594876af64ab3126511b0a_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapValueIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i356b27b1b49b42638d998edc758500ca_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapValueIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id51a28a4c1164b42bc43a4db197c43fe_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMultiManagerSmallCapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i11f335c35bd048ad95f49bf90cd777f5_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMultiManagerSmallCapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ibbe83b3a4b1a40cb964629fe1d4389b9_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMultiManagerSmallCapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7413e9e2f39a40669d931c15c35251e5_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMultiManagerSmallCapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie0fca9ec3d444fb9b6e66ea2a9054de3_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoRussellTwoZeroZeroZeroIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9432d45a9e9e4191b54709416e87108b_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoRussellTwoZeroZeroZeroIndexFundMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iafff413bcb2240cb8cd16b84d0876287_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoRussellTwoZeroZeroZeroIndexFundMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5e101051344e4b1c808528e1db5e08fb_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoRussellTwoZeroZeroZeroIndexFundMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0adc6834436f4371b3cdd5696abaa8cd_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoStandardAndPoorsMidCapIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5ffb7546a8494d55939a3a4a32690ccf_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoStandardAndPoorsMidCapIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic2becb6e8fc948c1b31183516406a459_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoStandardAndPoorsMidCapIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i123930823cd8488e838f40bc3f3e1de7_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoStandardAndPoorsMidCapIndexFundMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i4cb19762171d45a0ad88bea28dd77754_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMFSValueCITFMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6d4f08d5bd87435e965b581fc8ddf576_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMFSValueCITFMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1ea986161ff549f4becf2b6e3b344053_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMFSValueCITFMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i45cd8b1f870e40358934e74c5d538a77_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMFSValueCITFMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="icb70ed98ac1149039a9bd3f56114b3c7_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoTRowePriceILargeCapGrowthManagedCITMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ibe717bc583594521a2ec81bd967b0e7c_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoTRowePriceILargeCapGrowthManagedCITMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7f157b168b604ab888264209d171f418_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoTRowePriceILargeCapGrowthManagedCITMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic50e7308c6c642d2b2906d70f4c41031_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoTRowePriceILargeCapGrowthManagedCITMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6432e734c9bb4c748ed8b984af5c19b3_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:TRowePriceEquityIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7eab14931758499c86fc981d8534c0d2_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:TRowePriceEquityIncomeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0efb16e6acb94bcc822d3f6f17ca38cc_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:TRowePriceEquityIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i35e0ecc32ef34d9fac9974d96205aab2_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:TRowePriceEquityIncomeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i42e85a08729b4b9e9936579f4f8a0368_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoVoyaLargeCapGrowthCITFMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i22991817b589465c988eb404d93742d9_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoVoyaLargeCapGrowthCITFMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5d8938ffd2a442588aa9e05718c7a497_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoVoyaLargeCapGrowthCITFMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i92b85df410eb4e1fbfe26dec8b1bbb80_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoVoyaLargeCapGrowthCITFMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i624fe9893bb340f7b9942ac31a247138_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:CashAndShortTermInvestmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i664cd5f98f364c5baf9f5761fc560d93_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:CashAndShortTermInvestmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib4f9459255a14b9fbb422a8f1f9cbb4e_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:CashAndShortTermInvestmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia858cb8acd9842f985f6c945ba0aadf2_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:CashAndShortTermInvestmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ifa59e56462b747ddaf8ef3be4a751883_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia31027b4f0e0473889357f269d8059f6_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i65fb64b53ac347dfbefe473e635b88d1_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i52a8204da7b94186bedcf26a1c8e2cce_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:MidCapMutualFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9f9353766d1f44edb266fab4456f5371_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:MidCapMutualFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i89d34b46d2424ceeb6120441cfc54cc2_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:MidCapMutualFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ifb0af5063dc548b0a8b1590b99b28194_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:MidCapMutualFundsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iaffd3941938a40d996cd8fd72f0edefd_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:InternationalMutualFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i44c9c02c4b1e480bb430af91846ceda4_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:InternationalMutualFundsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib2c563f6493944358bc2a1953334b52b_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:InternationalMutualFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i12da2b7deb3547b88815a6f6bfb98513_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:InternationalMutualFundsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia722ba49d783476685ea143590cb6c65_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="idf3ce4cf4e564e04828187933dee46a7_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i4da8e9917e44416b9288ab1d168417ed_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i71958a9a83f947ea9e8ce06c90dc71ae_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i55b7d5c6c4794483b8bc04a672aa9794_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIIMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib5a10484730344d196dbac086113cef3_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIIMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7ba63e2a3f15410f98611106dfa85749_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIIMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id41367d6d23c4aed857b87c87a87e966_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIIMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ibf0eaaa469364e438e4c2c90480cfafd_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoInternationalEquityIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="icd628f307f6c4f09b6dc7dadae3a7b76_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoInternationalEquityIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i92640efca9474f738386c749813ce4e7_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoInternationalEquityIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i985f41572bd8411fbae9a6c39ce09710_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoInternationalEquityIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2b1afabb7d6043c7acac69a09be8202d_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoCausewayMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ief613a9797ba499a90f7c0db92f2ce68_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoCausewayMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic5c27146979e4ef9be50f4eba2af5be5_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoCausewayMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i474d23e8a81945d9886590fb204080c0_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoCausewayMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i11537fc0dffb40a18449327b5ef7f16e_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapGrowthIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8b3f2b9fb9354a1caf00f74563334cc6_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapGrowthIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1b0f1051cbe14b27a274bcf0f4ea6d22_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapGrowthIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i84352f8927914e57ad97592295603b0d_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapGrowthIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i01bc55dc32dd4ede8728600610903cf8_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapValueIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i57e286ef02af480d8743e63aa262595c_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapValueIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iac060d40a1124df79664d97528f314d4_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapValueIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1e5e14dac53045a8957d2a963cceef80_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapValueIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iaa204fa8c13840f9ac86e795ecf9bffb_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMultiManagerSmallCapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie57ef8f03f86451b90f42dcfd1aaa2d3_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMultiManagerSmallCapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i36affe6e249c476598d4a73d04c0c114_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMultiManagerSmallCapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9618475f30bf45e0970dcc5782b044ed_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMultiManagerSmallCapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ieb7d8adee16741d883e98a92493e6a91_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoRussellTwoZeroZeroZeroIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0d87e1e3a66a4e32a364fcf2e77389b6_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoRussellTwoZeroZeroZeroIndexFundMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i30cdc3de298b42528f34e651ae2386d1_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoRussellTwoZeroZeroZeroIndexFundMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i61f958873ed04b5aa29b3ffa6e371cde_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoRussellTwoZeroZeroZeroIndexFundMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8abbc51f968d43709cebc0fe5e11c77d_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoStandardAndPoorsMidCapIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iabd7bcf621304c96b18970895eca7674_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoStandardAndPoorsMidCapIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib51767f59e124d79b2405724fe6182c0_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoStandardAndPoorsMidCapIndexFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i4540773b6bdc450ab7670c353e71bd24_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoStandardAndPoorsMidCapIndexFundMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie89ca23203234a5383be35c58800b3c9_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMFSValueCITFMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie02c44b94ad947cc9e3caaf03e8cd79d_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMFSValueCITFMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i92b124c33ade4aa085b770b10ae6b7d4_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMFSValueCITFMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia3290477588b42ac8d96d68467da2638_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMFSValueCITFMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0973b74189624337a8282ede68198c13_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoTRowePriceILargeCapGrowthManagedCITMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id37e990b5b4442f5990f033d0abda372_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoTRowePriceILargeCapGrowthManagedCITMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia003aefa97644225b609cf69cffcb73e_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoTRowePriceILargeCapGrowthManagedCITMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i99e3c828d28042909e8f0610df7209ce_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoTRowePriceILargeCapGrowthManagedCITMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1e06937bd5cf441f92815ced806d7b19_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:TRowePriceEquityIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if30a6b992d2b436e9abf74a084382b62_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:TRowePriceEquityIncomeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i489199d7264b48f4a9304b71e2d9194e_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:TRowePriceEquityIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5ae7dcde876c4dd7b148277937dbbe41_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:TRowePriceEquityIncomeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i69a53ea75c044ed0981595e1db730fac_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoVoyaLargeCapGrowthCITFMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i80aedcf42fa8458eab165a17fa35837f_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoVoyaLargeCapGrowthCITFMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8bee2e3fa22a4c5f946447611476c208_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoVoyaLargeCapGrowthCITFMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iedcddcb5f3d245ef9c3454670c5c7546_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoVoyaLargeCapGrowthCITFMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ifdf749fb72bd4479853fd03b81f5452e_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:CashAndShortTermInvestmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if1b4303290284d47b16fd65e0e9c4d11_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:CashAndShortTermInvestmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ieb27dc5461b54c31821de5f7e266e16a_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:CashAndShortTermInvestmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5765b80e33a24b9b942a9a75df443860_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:CashAndShortTermInvestmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iafbec1421c62426cb0104c9522fa37c0_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id4db507670fd4d0681e823b25f1b4c2b_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic0789b2d2b3a4bafa30f47ca67d0e176_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:SupplementalEmployeeRetirementPlanDefinedBenefitMember</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="i4790b17eb967429486396c862e87d4af_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:SupplementalEmployeeRetirementPlanDefinedBenefitMember</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="i98f96f8dc89b435db15fd8d85c9d19b7_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:SupplementalEmployeeRetirementPlanDefinedBenefitMember</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="i61f12f9ea51146af82634ab866ad929b_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:SupplementalEmployeeRetirementPlanDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6706afd005d94786b0e5ab016edb25ca_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:SupplementalEmployeeRetirementPlanDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:SupplementalEmployeeRetirementPlanDefinedBenefitMember</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="i514496c272c84c0391f1b5b1c3453db4_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:SupplementalEmployeeRetirementPlanDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i61d597b1e8ab48369c02c0e140ce9ea0_D20230101-20231231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:SupplementalEmployeeRetirementPlanDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ife90561e40e7493dbe5313f9928b8529_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanNameAxis">alg:InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember</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="iec9c1a66984b4509b11f082bf68d54c7_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanNameAxis">alg:InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember</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="ia275391be9294e35bd152017c5b234d7_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanNameAxis">alg:InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember</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="i196c2863265548e695dd64a326f541a3_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">country:US</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="i922b59df66db420486a5036b9009eda9_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">country:US</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="iec05639d7c2a4aa8833a1eda02bb8312_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">country:US</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="ic670f3b25ae5483f8f49ea627f090dfa_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">us-gaap:ForeignPlanMember</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="subsidiary"><xbrli:measure>alg:subsidiary</xbrli:measure></xbrli:unit><xbrli:context id="i49af53d543f043af9e73b3649ab995cc_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">us-gaap:ForeignPlanMember</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="i71e423a8bdf44280bac5df20c2d8f3f7_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">us-gaap:ForeignPlanMember</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="iccc219e591e44500b8fdb5232de4b667_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">us-gaap:ForeignPlanMember</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="iadb2db423fc143568086d3b6a3b94ea4_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">us-gaap:ForeignPlanMember</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="i273bea94087a4a249fb082e3b2436a8c_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alg:WholegoodUnitsMember</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="i152b3b0f333e4a34974ca0723f6f9128_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alg:WholegoodUnitsMember</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="i332689bfdab040e981db033ee4b0e436_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alg:WholegoodUnitsMember</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="i16ebbf0c79d74751ab10b853e6c9688a_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alg:PartsMember</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="id0ac0cc4253a48669df79c10c0160e35_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alg:PartsMember</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="i08aa06cdfd1b4f03b5aba2ec7f94c6be_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductAndServiceOtherMember</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="i0a8c7e5368d6478b995b9e33da457c37_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductAndServiceOtherMember</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="ifcdfad41cf02439ca81c141d332993bb_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductAndServiceOtherMember</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="i868c73b3d06b44ec92617f0666dc7ce7_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i6e8112f8e8a34e919c3bd3d5a628619d_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="ie3923a67e5f64f98a807cc1d853fc5e2_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ibfae7c87e3cf4e8da5fff61923d7a933_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i5c14023a880f45928fd39bb00503a4eb_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="icee1ab5ee6e94435a209bd27d6fe82fa_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i16b0080a3731492cbc6a4d1595ee7cfc_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i597d4799d22b481eadba8771012e4440_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i705d2dd97b5e442a82aac45bb61c9788_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</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="i74896465ad134617a3231a0dfd645b1b_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="if09a329cb8e041c8a3f68e4b233cb55b_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i57ec737b772646548585c2aeb7dac3ff_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</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="ibe07099a56ec451ea3c3df07c8ba0637_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i00b76891fb64454ba15460dfe356b096_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</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="i2dcafeb637cf429d913083467d301fac_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if0ccda55f2d64fc59a818cd96115d9b6_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</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="i657c47e3fca548cc9bd4932795340ed6_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</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="if56db49f517e4c219c53e22f549c5e51_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</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="i64a51b62ddf249588a55692f07e10ab7_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9d119f114b064384b061dabb8264383f_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="idf164495df244f839eada511e8dd6586_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i27471c6e5587400a91198519e9ea07aa_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</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="i540db814e238418581c3f762143bc4e6_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</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="ifa0aa1dba5c341f6875d02c968bfe5e8_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</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="i97b432e0e60f4c4abe6ff31d739da965_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:FR</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="i387d5202ed4f493c92b10a38acfc0b36_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:FR</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="ib71436cd32294b8595608c3e5043c8c2_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:FR</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="i42e1c84b9e45497590a00b266e94b06e_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</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="ic355ca56aac34b6e89fc7f98a82d288f_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</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="ie123409994a748808eacb45425e4b967_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</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="i85955310584d4321b4909f4e78a6509e_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</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="ie1a85fd409714c4680d0fdcd8133c6b0_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</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="i0571d0adc93a4f6c8577463a7d1271d5_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</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="i3424c8734bc247d283d8f7ee9792d969_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BR</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="i1df704cb487d433988240110ffba9b79_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BR</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="i2e1592132841419194fd5c912083d08e_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BR</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="i8dcb828e9ef04159bf1cadd45d580f2a_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:NL</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="ie72b110c451b4574a22c4449e0e6adfb_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:NL</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="id80ed00b297a4ecb99ebab3fe9226c6f_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:NL</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="i20cf1c9a27114877bc07026ffc45e8aa_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:DE</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="i34f6b1648a164da3931c00b818f528a3_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:DE</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="ib488cce901db40c98e68a90787544861_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:DE</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="i6483ee4d964b415286f91bb91c2908bc_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:AU</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="i92389c884a274e0fb3bbb45ba068f944_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:AU</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="i7132ad0daa6c45729c5b3891a5968b1b_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:AU</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="ie5fb7c0c4922417db62f771c171e679c_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">alg:OtherGeographicalAreasMember</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="ida2174e360e645aeab3b8ebd578d38ad_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">alg:OtherGeographicalAreasMember</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="i4de62983acdb4ec2bea2b8407cda05ae_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">alg:OtherGeographicalAreasMember</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="i53e4684044224871825bd23aac41aee3_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic1938ea617ca4f769c724f1a08e7efc5_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i529fcaeebb904bfdaccd9f21b05b0e4f_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if0925a1305784f729e9e56ed2c280661_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:NL</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i716dd7aefb954ba687184e1292435465_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:NL</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i90f80b354e6b42c5867a327caee24eeb_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:NL</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id383d018a3be4e749d23a3a0666ec989_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1df499325fc7423da4f6d70c56f75ed0_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1277e58dd79a4c2aa8489ce10cc1192f_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1095a338cfa94c2ba6be5ecdea6f7482_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i38a74560d41841908eb8dbfab7583864_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ibbc431a0d48c46c4a814fbc93cceeb31_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie9268b6721bf4d8e950f2c25210811a8_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:FR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i30d5ea028fb64ee68f0494c440e4ba4c_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:FR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2e092c63d696456a996e87a4b51deb04_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:FR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia3f71003335d424d971f475b80df2fdb_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic8f310366b2e444580858a4737d3b4c8_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8247765dd22e46fe94b851d92480a16a_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie201b7fa6daa4f13bb7cc014f2d19f4e_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:AU</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia4570f6a699a4f929c9daba151473653_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:AU</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1da150c7a78f400cb9f3b178d73ed207_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000897077</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:AU</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="i51762c1e0d7f47aeb6d24f3a0d19ea64_1"></div><div style="min-height:31.5pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%"> </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%">UNITED STATES</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%">SECURITIES AND EXCHANGE COMMISSION</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%">WASHINGTON, D.C. 20549</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:120%">Form <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:DocumentType" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDQ5_2f0f1c20-e128-4dc3-bd1f-037e4318f0c3">10-K</ix:nonNumeric></span><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:20.844%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:55.011%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:20.845%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:DocumentAnnualReport" format="ixt-sec:boolballotbox" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6MTcyM2Q0YWFiM2Q2NDBmMDhiNmNjMDc3NTMwNTgyOGEvdGFibGVyYW5nZToxNzIzZDRhYWIzZDY0MGYwOGI2Y2MwNzc1MzA1ODI4YV8wLTAtMS0xLTYzODg3_7d7709db-6ce4-474b-a104-bb2960d8e24b">&#9746;</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:8.5pt;font-weight:400;line-height:100%">ANNUAL REPORT PURSUANT TO SECTION 13 OR 15(d)</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8.5pt;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:8.5pt;font-weight:400;line-height:100%">OF THE SECURITIES EXCHANGE ACT OF 1934</span></td><td colspan="3" style="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></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" 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:8.5pt;font-weight:400;line-height:100%">FOR THE YEAR ENDED <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:DocumentPeriodEndDate" format="ixt:date-monthname-day-year-en" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6MTcyM2Q0YWFiM2Q2NDBmMDhiNmNjMDc3NTMwNTgyOGEvdGFibGVyYW5nZToxNzIzZDRhYWIzZDY0MGYwOGI2Y2MwNzc1MzA1ODI4YV8zLTEtMS0xLTYzODg3L3RleHRyZWdpb246MWUyMGQxYmZmZWE4NDgyNWFlYzNiZGRiNjkyYjc4YjdfMjM_6a3a3dbd-abcd-409f-b9e7-e7175fd2f652"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:CurrentFiscalYearEndDate" format="ixt:date-monthname-day-en" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6MTcyM2Q0YWFiM2Q2NDBmMDhiNmNjMDc3NTMwNTgyOGEvdGFibGVyYW5nZToxNzIzZDRhYWIzZDY0MGYwOGI2Y2MwNzc1MzA1ODI4YV8zLTEtMS0xLTYzODg3L3RleHRyZWdpb246MWUyMGQxYmZmZWE4NDgyNWFlYzNiZGRiNjkyYjc4YjdfMjM_4bb006e2-94d4-4e65-ae3a-70c376b91b9b">DECEMBER 31</ix:nonNumeric>, 2022</ix:nonNumeric></span></div></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:DocumentTransitionReport" format="ixt-sec:boolballotbox" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6MTcyM2Q0YWFiM2Q2NDBmMDhiNmNjMDc3NTMwNTgyOGEvdGFibGVyYW5nZToxNzIzZDRhYWIzZDY0MGYwOGI2Y2MwNzc1MzA1ODI4YV80LTAtMS0xLTYzODg3_41a89f08-8f76-4005-a5f4-8f78e3d8a695">&#9744;</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:8.5pt;font-weight:400;line-height:100%">TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d)</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8.5pt;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:8.5pt;font-weight:400;line-height:100%">OF THE SECURITIES EXCHANGE ACT OF 1934</span></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%">Commission file number <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:EntityFileNumber" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDUz_c4398d7b-ac76-45e4-aff3-d8cc690ed162">0-21220</ix:nonNumeric></span></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:12pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:EntityRegistrantName" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDUw_48b35bd2-91c8-4ab4-92fb-b38bad004ea8">ALAMO GROUP INC.</ix:nonNumeric></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%">(Exact name of registrant as specified in its charter)</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:94.722%"><tr><td style="width:1.0%"></td><td style="width:48.900%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:48.900%"></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:8.5pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:EntityIncorporationStateCountryCode" format="ixt-sec:stateprovnameen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6MzczYzE0MmNiMzM1NGI5ZmFlNDQ2MGU1ZjYyYTVhMDUvdGFibGVyYW5nZTozNzNjMTQyY2IzMzU0YjlmYWU0NDYwZTVmNjJhNWEwNV8wLTAtMS0xLTYzODg3_dcd10b6c-1d95-458d-b9d8-6ee7f8bc1ae1">Delaware</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:8.5pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:EntityTaxIdentificationNumber" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6MzczYzE0MmNiMzM1NGI5ZmFlNDQ2MGU1ZjYyYTVhMDUvdGFibGVyYW5nZTozNzNjMTQyY2IzMzU0YjlmYWU0NDYwZTVmNjJhNWEwNV8wLTEtMS0xLTYzODg3_89177b58-3e16-4c6c-a759-7f032052d264">74-1621248</ix:nonNumeric></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:8.5pt;font-weight:400;line-height:100%">(State or other jurisdiction of</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:8.5pt;font-weight:400;line-height:100%">(I.R.S. Employer</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:8.5pt;font-weight:400;line-height:100%">incorporation or organization)</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:8.5pt;font-weight:400;line-height:100%">Identification Number)</span></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:EntityAddressAddressLine1" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDU3_d444df21-ff00-494e-8a14-9d9fd05505bf">1627 East Walnut</ix:nonNumeric>, <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:EntityAddressCityOrTown" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDU0_ccea99c5-1d4f-4640-aeee-cc88bdbdce33">Seguin</ix:nonNumeric>, <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:EntityAddressStateOrProvince" format="ixt-sec:stateprovnameen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDQ1_4787b3a5-39aa-4e2f-8c8e-a6a67f10d080">Texas</ix:nonNumeric> <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:EntityAddressPostalZipCode" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDUx_6d193091-3cfa-4c82-807e-2cf1c98be369">78155</ix:nonNumeric></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-style:italic;font-weight:400;line-height:120%">(Address of principal executive offices, including zip code)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-style:italic;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:CityAreaCode" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDYy_c6c2f548-5e02-4c32-9ba6-1e03cf42d3c4">830</ix:nonNumeric>-<ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:LocalPhoneNumber" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDU4_ae691f2a-2c4d-4e77-a9c1-3ef805b39332">379-1480</ix:nonNumeric></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-style:italic;font-weight:400;line-height:120%">(Registrant&#8217;s telephone number, including area code)</span></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:8.5pt;font-weight:400;line-height:120%">Securities registered pursuant to Section 12(b) of the Act</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:700;line-height:120%">:</span><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:35.983%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:21.400%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:39.317%"></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:8.5pt;font-weight:400;line-height:100%">Title of each class</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:8.5pt;font-weight:400;line-height:100%">Trading symbol(s)</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:8.5pt;font-weight:400;line-height:100%">Name of each exchange</span></td></tr><tr style="height:14pt"><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:Security12bTitle" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6ZWVjZGYzMDUyMGEwNGM4YmE3MWI5Y2U3OGFjMWFkNTYvdGFibGVyYW5nZTplZWNkZjMwNTIwYTA0YzhiYTcxYjljZTc4YWMxYWQ1Nl8xLTAtMS0xLTYzODg3_def3c660-432b-422b-89de-71fde9300740"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Common Stock, par value</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$.10 per share</span></div></ix:nonNumeric></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:8.5pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:TradingSymbol" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6ZWVjZGYzMDUyMGEwNGM4YmE3MWI5Y2U3OGFjMWFkNTYvdGFibGVyYW5nZTplZWNkZjMwNTIwYTA0YzhiYTcxYjljZTc4YWMxYWQ1Nl8xLTEtMS0xLTYzODg3_cb578a7c-c74b-4d55-aeeb-1f9f1c1e9cdc">ALG</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:8.5pt;font-weight:400;line-height:100%">on which registered</span></td></tr><tr style="height:14pt"><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:8.5pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:SecurityExchangeName" format="ixt-sec:exchnameen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6ZWVjZGYzMDUyMGEwNGM4YmE3MWI5Y2U3OGFjMWFkNTYvdGFibGVyYW5nZTplZWNkZjMwNTIwYTA0YzhiYTcxYjljZTc4YWMxYWQ1Nl8yLTItMS0xLTYzODg3_cafa9e9e-dcde-42ad-87ca-a9272d81d361">New York Stock Exchange</ix:nonNumeric></span></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%">SECURITIES REGISTERED PURSUANT TO SECTION 12(g) OF THE ACT:&#160; None</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;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. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:EntityWellKnownSeasonedIssuer" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDU5_aa6fc533-9c06-48dc-abf7-9a66286edf4e">Yes</ix:nonNumeric> &#9746; No &#9744;</span></div><div style="text-indent:21pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%">Indicate by check mark if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Exchange Act. Yes &#9744; <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:EntityVoluntaryFilers" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDYw_4a4f75de-7277-4b22-8910-a10f1c1d5674">No</ix:nonNumeric> &#9746;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirement for the past 90 days. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:EntityCurrentReportingStatus" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDU1_234580a4-e071-451e-bd7f-3e3597776ef5">Yes</ix:nonNumeric> &#9746;  No &#9744;</span></div><div style="text-indent:21pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;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 during the preceding 12 months (or for such shorter period that the registrant was required to submit such files). <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:EntityInteractiveDataCurrent" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDYx_4c864ec5-55f3-480c-b735-09139464d340">Yes</ix:nonNumeric> &#9746; No &#9744;</span></div><div style="text-indent:21pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%">Indicate by check mark whether registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company or an emerging growth company. See definitions of &#8220;large accelerated filer,&#8221; &#8220;accelerated filer,&#8221; &#8220;smaller reporting company,&#8221; and an "emerging growth company" in Rule 12b-2 of the Exchange Act.</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:96.805%"><tr><td style="width:1.0%"></td><td style="width:14.394%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.986%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.986%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:23.577%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.557%"></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:8.5pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:EntityFilerCategory" format="ixt-sec:entityfilercategoryen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6OWJmZjhiODZiNTQ3NGZmODhhZDMxZjRhYWZjNTUwOTMvdGFibGVyYW5nZTo5YmZmOGI4NmI1NDc0ZmY4OGFkMzFmNGFhZmM1NTA5M18wLTEtMS0xLTYzODg3_dff3b23d-999e-457b-936e-7dea6e82ce4e">Large accelerated filer</ix:nonNumeric>&#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:8.5pt;font-weight:400;line-height:100%">&#9746;</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:8.5pt;font-weight:400;line-height:100%">Accelerated filer&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#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:8.5pt;font-weight:400;line-height:100%">&#9744;</span></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:8.5pt;font-weight:400;line-height:100%">Non-accelerated filer&#160;&#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:8.5pt;font-weight:400;line-height:100%">&#9744;</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:8.5pt;font-weight:400;line-height:100%">Smaller reporting company&#160;&#160;&#160;&#160;&#160;&#160;&#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:8.5pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:EntitySmallBusiness" format="ixt-sec:boolballotbox" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6OWJmZjhiODZiNTQ3NGZmODhhZDMxZjRhYWZjNTUwOTMvdGFibGVyYW5nZTo5YmZmOGI4NmI1NDc0ZmY4OGFkMzFmNGFhZmM1NTA5M18xLTQtMS0xLTYzODg3_6d6d573d-dd28-4299-8ee9-bf1cfd190835">&#9744;</ix:nonNumeric></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: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:8.5pt;font-weight:400;line-height:100%">Emerging growth company</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:8.5pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:EntityEmergingGrowthCompany" format="ixt-sec:boolballotbox" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6OWJmZjhiODZiNTQ3NGZmODhhZDMxZjRhYWZjNTUwOTMvdGFibGVyYW5nZTo5YmZmOGI4NmI1NDc0ZmY4OGFkMzFmNGFhZmM1NTA5M18yLTQtMS0xLTYzODg3_48d46f71-ec51-4444-b87c-23845b1e53b7">&#9744;</ix:nonNumeric></span></td></tr></table></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;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. &#9744;</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant has filed a report on and attestation to its management's assessment of the effectiveness of its internal control over financial reporting under Section 404(b) of the Sarbanes-Oxley Act (15 U.S.C. 7262(b)) by the registered public accounting firm that prepared or issued its audit report. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:IcfrAuditorAttestationFlag" format="ixt-sec:boolballotbox" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDUy_570ebf76-f5dd-48e8-8d76-07a5566770a3">&#9746;</ix:nonNumeric></span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;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 the registrant included in the filing reflect the correction of an error to previously issued financial statements. &#9744;</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:107%">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 </span><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:107%">&#167;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:107%">240.10D-1(b). &#9744;</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;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 Exchange Act). Yes &#9744; No <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:EntityShellCompany" format="ixt:fixed-false" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8xNDg0MzQwNjk3ODA0OA_c5110444-55ea-4ba2-9d18-706a40fc7dc2">&#9746;</ix:nonNumeric></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%">The aggregate market value of the voting stock (which consists solely of shares of common stock) held by non-affiliates of the registrant as of June&#160;30, 2022 (based upon the last reported sale price of $116.43 per share) was approximately $<ix:nonFraction unitRef="usd" contextRef="i8e372fb5454742f6ac912992828f4480_I20220630" decimals="0" name="dei:EntityPublicFloat" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8yNzEw_f138fa59-13e4-42b2-ace7-eafc1bbf4c8e">1,160,963,116</ix:nonFraction> on such date.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%">&#160;</span></div><div style="height:27pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><span><br/></span></div></div></div><hr style="page-break-after:always"/><div style="min-height:31.5pt;width:100%"><div><span><br/></span></div></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%">The number of shares of the registrant&#8217;s common stock, par value $.10 per share, outstanding as of February&#160;17, 2023 was <ix:nonFraction unitRef="shares" contextRef="i887f22af95754d37804e79c104c0c635_I20230217" decimals="INF" name="dei:EntityCommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8yODM1_66dba8a3-f223-4d25-b471-4f5ed4916ea1">11,971,477</ix:nonFraction> shares.</span></div><div style="text-align:center;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%">DOCUMENTS INCORPORATED BY REFERENCE</span></div><div style="text-align:center;text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:DocumentsIncorporatedByReferenceTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDU2_4422c4f5-8ab6-4807-9556-305094a95d27" escape="true">Portions of the registrant&#8217;s proxy statement relating to the 2023 Annual Meeting of Stockholders have been incorporated by reference herein in response to Part III.</ix:nonNumeric></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8.5pt;font-weight:400;line-height:120%">&#160;</span></div><div style="height:27pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><span><br/></span></div></div></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_7"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ALAMO GROUP INC. AND CONSOLIDATED SUBSIDIARIES</span></div><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">FORM 10-K</span></div><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">TABLE OF CONTENTS</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span><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:18.401%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:59.897%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.402%"></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:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></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:400;line-height:100%">PART I</span></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%">Page</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:100%">Item 1.</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_13">Business</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_13">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 1A.</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_16">Risk Factors</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_16">16</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 1B.</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_19">Unresolved Staff Comments</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_19">26</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 2.</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_22">Properties</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_22">27</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 3.</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_25">Legal Proceedings</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_25">28</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 4.</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_28">Mine Safety Disclosures</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_28">28</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></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:400;line-height:100%">PART II</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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:100%">Item 5.</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_34">Market for Registrant&#8217;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:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_34">28</a></span></div></td></tr><tr><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"><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: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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_43">Reserved</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_43">30</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 7.</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_46">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:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_46">30</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 7A.</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_49">Quantitative and Qualitative Disclosures about Market Risk</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_49">36</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 8.</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_52">Financial Statements and Supplementary Data</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_52">36</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 9.</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_55">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:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_55">36</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 9A.</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_58">Controls and Procedures</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_58">37</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: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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_61">Other Information</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_61">37</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: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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_64">Disclosure Regarding Foreign Jurisdictions that Prevent Inspections</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_64">37</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></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:400;line-height:100%">PART III</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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:100%">Item 10.</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_70">Directors, Executive Officers and Corporate Governance</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_70">37</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 11.</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_73">Executive Compensation</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_73">38</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 12.</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_76">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:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_76">38</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 13.</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_79">Certain Relationships, Related Transactions, and Director Independence</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_79">38</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 14.</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_82">Principal Accountant Fees and Services</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_82">39</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></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:400;line-height:100%">PART IV</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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:100%">Item 15.</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_88">Exhibits and Financial Statement Schedules</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_88">39</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:'Times New Roman',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%">Index to Consolidated Financial Statements</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_88">39</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: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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_91">Summary</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_91">39</a></span></div></td></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2</span></div></div></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_10"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PART I</span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_13"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 1. Business </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Unless the context otherwise requires, the terms &#8220;the Company,&#8221;&#160; &#8220;we,&#8221; &#8220;our&#8221; and &#8220;us&#8221; refer to Alamo Group Inc. and its subsidiaries on a consolidated basis.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">General</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The Company is a leader in the design, manufacture and servicing of high quality vegetation management and infrastructure maintenance equipment for governmental, industrial and agricultural use. The Company&#8217;s products include tractor mounted and self-propelled mowers, zero-turn mowers, agricultural implements, tree and branch chippers, forestry/wood recycling equipment, street and parking lot sweepers, leaf and debris collection equipment, pothole patchers, vacuum trucks, hydro-excavation equipment, telescopic boom excavators, and snow removal equipment</span><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:112%">. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The Company emphasizes high quality, cost-effective products for its customers and strives to develop and market innovative products while constantly monitoring and controlling its manufacturing and overhead costs. The Company has a long-standing strategy of supplementing its internal growth through acquisitions of businesses or product lines that currently complement, command, or have the potential to achieve a meaningful share of their niche markets. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has approximately 4,200 employees and manages a total of 28 plants with business operations in North America, South America, Europe, and Australia. The Company sells its products primarily through a network of independent dealers and distributors to governmental end-users and related independent contractors, as well as to other commercial customers. The primary markets for our products are North America, South America, Europe and Australia.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">  The predecessor corporation to Alamo Group Inc. was incorporated in the State of Texas in 1969, as a successor to a business that began selling mowing equipment in 1955, and Alamo Group Inc. was reincorporated in the State of Delaware in 1987.</span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">History</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Since its founding in 1969, the Company has focused on satisfying customer needs through geographic market expansion, product development and refinement, and selected acquisitions. The Company&#8217;s first products were based on rotary cutting technology. Through acquisitions, the Company added flail cutting technology in 1983 and sickle-bar cutting technology in 1984. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company entered the agricultural mowing markets in 1986 with the acquisition of Rhino Products Inc. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">(&#8220;Rhino&#8221;)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, a leading manufacturer in this field. With this acquisition, the Company embarked on a strategy to increase the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Rhino</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> dealer distribution network during a period of industry contraction. The addition of M&amp;W Gear Company </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">(&#8220;M&amp;W&#8221;)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> in early 1995 allowed the Company to enter into the manufacturing and distribution of tillage equipment, which complements the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Rhino</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> distribution network. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">M&amp;W</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> is part of the vegetation management marketing group. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> In 1991, the Company began its international expansion with the acquisition of McConnel Ltd</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">. (&#8220;McConnel&#8221;)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, a United Kingdom (&#8220;U.K.&#8221;) manufacturer of vegetation maintenance equipment, principally hydraulic boom-mounted hedge and grass cutters and related parts. Bomford-Turner Ltd</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">. (&#8220;Bomford&#8221;)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, also a U.K. company, was acquired in 1993. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Bomford</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> is a manufacturer of heavy-duty, tractor-mounted grass and hedge mowing equipment. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">McConnel</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Bomford</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> sell their products to dealers and distributors through their respective sales forces.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company added to its presence in the industrial and governmental vegetation markets with the acquisition of Tiger Corporation </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">(&#8220;Tiger&#8221;)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> in 1994.  </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Tiger</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> manufactures a wide variety of durable rotary and flail boom mowers, side mowers and rear mowing equipment, along with truck mounted boom mowers and a full line of specialty mowing equipment and attachments.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> In 1994, the Company acquired Signalisation Moderne Autoroutiere S.A</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">. (&#8220;SMA&#8221;)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> located in Orleans, France. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">SMA</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> manufactures and sells principally a line of heavy-duty, tractor-mounted grass and hedge mowing-equipment and associated replacement parts primarily to departments of the French government. This acquisition, along with the acquisitions of Forges Gorce ("</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Forges Gorce</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">"), a flail blade manufacturer in France, in 1996 and Rousseau Holdings S.A. (&#8220;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Rousseau</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8221;), a leading French manufacturer of hedge and verge mowers, in 2004, when combined </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:45pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">with </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">McConnel</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Bomford,</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> has made the Company one of the largest manufacturers in the European market for the kind of vegetation management equipment sold by the Company.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 1995, the Company expanded its business in the agricultural market with the acquisition of Herschel Corporation </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">(&#8220;Herschel&#8221;)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, a manufacturer and distributor of aftermarket farm equipment replacement and wear parts.&#160;</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2000, the Company acquired Schwarze Industries, Inc</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">. (&#8220;Schwarze&#8221;)</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:10pt;font-style:italic;font-weight:400;line-height:120%">Schwarze</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> is a manufacturer of a broad range of street sweeping equipment which is sold to governmental agencies and contractors. The Company believes the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Schwarze</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> sweeper products fit the Company&#8217;s strategy of identifying product offerings with brand recognition in the industrial markets the Company serves. In 2004, the Company purchased the pothole patcher product line from Wildcat Manufacturing, Inc. This product line was merged into the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Schwarze</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> operation and is complementary to its current product offerings.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2000, the Company purchased the product line and associated assets of Twose of Tiverton Ltd. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">(&#8220;Twose&#8221;) </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a small regional manufacturer of power arm flail mowers and parts, as well as harrows and rollers, in the U.K. Twose consolidated its operations into the existing facilities at </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">McConnel</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Bomford </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">and its brand name has been merged into the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">McConnel</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> product line. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2000, the Company acquired Schulte Industries Ltd. and its related entities </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">(&#8220;Schulte&#8221;)</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:10pt;font-style:italic;font-weight:400;line-height:120%">Schulte</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> is a Canadian manufacturer of mechanical rotary mowers, snow blowers, and rock removal equipment. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Schulte</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> strengthened the Company&#8217;s Canadian presence in both marketing and manufacturing. It also expanded the Company&#8217;s range of large, heavy-duty rotary mowers.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2002, the Company purchased inventory, fixed assets and certain other assets of Valu-Bilt Tractor Parts </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">(&#8220;Valu-Bilt&#8221;)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, a subsidiary of Quality Stores, Inc., located in Des Moines, Iowa. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Valu-Bilt</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> is a distributor of new, used and rebuilt tractor parts and other agricultural spare and wear parts sold directly to customers through its catalog and the internet and on a wholesale basis to dealers. Subsequent to the purchase, the operations of </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Valu-Bilt</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> in Des Moines, Iowa, were consolidated into the Company&#8217;s </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Herschel</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> facility in Indianola, Iowa.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2005, the Company acquired 100% of the issued and outstanding stock of Spearhead Machinery Limited </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">(&#8220;Spearhead&#8221;)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and subsequently merged its manufacturing operations into </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Bomford</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8217;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">s</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> facility. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Spearhead</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> manufactures a range of tractor-mounted vegetation maintenance equipment, including reach mowers, flail mowers and rotary cutters. This acquisition extended our product lines and market coverage in Europe.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2006, the Company purchased substantially all of the assets of the Gradall excavator business </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">(&#8220;Gradall&#8221;)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> from JLG Industries, Inc., including their manufacturing plant in New Philadelphia, Ohio. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Gradall</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> is a leading manufacturer of both wheeled and crawler telescopic excavators in North America. This acquisition enhanced our Industrial Equipment Division product offering sold to governmental and commercial buyers for digging/grading along roadways, maintenance along right-of-ways, and other applications.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2006, the Company purchased the vacuum truck and sweeper lines of Clean Earth Environmental Group, LLC and Clean Earth Kentucky, LLC (collectively referred to as </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">&#8220;VacAll&#8221;</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: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%"> This included the product lines, inventory and certain other assets that relate to this business. The production of the vacuum truck and sweeper lines was moved to the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Gradall</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> facility in New Philadelphia, Ohio.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2006, the Company acquired 100% of the ownership interests in Nite-Hawk Sweepers LLC </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">(&#8220;Nite-Hawk&#8221;)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, a manufacturer of truck mounted sweeping equipment primarily for the contract sweeping market, which expanded our presence in that market and which complements our </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Schwarze</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> sweeper line. &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2007, the Company purchased Henke Manufacturing Corporation </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">(&#8220;Henke&#8221;)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, a manufacturer of specialty snow removal attachments. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Henke&#8217;s</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> products are mounted on both heavy industrial equipment and medium to heavy-duty trucks. The primary end-users are governmental agencies, related contractors and other industrial users.  In 2022, the Henke manufacturing operations were consolidated into our Wausau snow equipment facility in New Berlin, Wisconsin.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:45pt;width:100%"><div><span><br/></span></div></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2008, the Company acquired Rivard Developpement S.A.S. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">(&#8220;Rivard&#8221;)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, a leading French manufacturer of vacuum trucks, high pressure cleaning systems and trenchers. The acquisition broadened the Company&#8217;s product offering to our customers in Europe and other markets we serve.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2009, the Company acquired substantially all the assets of Bush Hog, LLC </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">(&#8220;Bush Hog&#8221;)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, a leading  manufacturer of rotary cutters, finishing mowers, zero turn radius mowers, front-end loaders, backhoes, landscape equipment and a variety of other implements. This acquisition, combined with the Company&#8217;s existing range of rotary mowers, established the Company as one of the largest manufacturers of rotary mowers in the world.  </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2011, the Company acquired substantially all of the assets and assumed certain specified liabilities of Tenco Group, Inc. (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">"Tenco"</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">) and its subsidiaries. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Tenco</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> is a Canadian-based manufacturer of snow removal equipment including snow blades, blowers, dump bodies, spreaders and associated parts and service. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Tenco</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> has operations in Quebec as well as New York and Vermont. The equipment is sold primarily through dealers to governmental end-users as well as snow removal contractors.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2013, the Company acquired substantially all of the assets and assumed certain specified liabilities of Superior Equipment Australia Pty Ltd (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">"Superior"</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:10pt;font-style:italic;font-weight:400;line-height:120%">Superior</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> is a small Australian-based manufacturer of agricultural mowing equipment and other attachments, parts, and services. The equipment is sold through dealers primarily to agricultural end-users with some sold to governmental entities in Australia.  The </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Superior</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> operations have been consolidated with the Company's </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Fieldquip</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> location.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2014, the Company acquired Kellands Agricultural Ltd. and its subsidiary Multidrive Tractors Ltd. (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">"Kellands"</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:10pt;font-style:italic;font-weight:400;line-height:120%">Kellands</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> is a U.K.-based manufacturer of self-propelled sprayers and a range of multi-purpose load-carrying tractor vehicles. This acquisition enhanced our manufacture and distribution of our agricultural machinery in Europe and allowed the Company to enter into the self-propelled sprayer market. The </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Kellands</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> operations were consolidated into the Company's Salford Priors</span><span style="color:#000000;font-family:'Arial',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%">facility and its products are sold under the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">McConnel</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> brand name. </span><span style="color:#ee2724;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2014, the Company acquired Fieldquip Australia Pty Ltd (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">"Fieldquip"</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">), a manufacturer of rotary cutters as well as a distributor of various lifestyle products. This acquisition allowed the Company to broaden its presence in both the manufacturing and distribution of vegetation management machinery in Australia.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2014, the Company acquired all of the operating units of Specialized Industries LP.&#160; The purchase included the businesses of Super Products LLC (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">"Super Products"</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">), Wausau-Everest LP ("</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Wausau</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">" &amp; "</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Everest</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">") and Howard P. Fairfield LLC ("</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">H.P. Fairfield</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">") as well as several related entities (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">"Specialized"</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">), including all brand names and related product names and trademarks.  The primary reason for the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Specialized</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> acquisition was to broaden the Company's existing equipment lines.  This acquisition increased our product offering and enhanced our market position both in vacuum trucks and snow removal equipment primarily in North America.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2015, the Company acquired Herder Implementos e Maquinas Agricolas Ltda. (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">"Herder"</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:10pt;font-style:italic;font-weight:400;line-height:120%">Herder</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> is a manufacturer of flail mowers which are sold direct and through dealers to a wide variety of agricultural markets as well as the roadside maintenance market.  This acquisition established a presence for the Company in Brazil, one of the largest agricultural markets in the world.  The </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Herder</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> manufacturing operations have been consolidated into our </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Santa Izabel</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> facility.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2017, the Company acquired 100% of the outstanding shares of Santa Izabel Agro Industria Ltda. (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">"Santa Izabel"</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:10pt;font-style:italic;font-weight:400;line-height:120%">Santa Izabel</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> designs, manufactures and markets a variety of agricultural implements, sugar cane trailers and other vegetation management products sold throughout Brazil.  This acquisition, along with our existing </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Herder</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> operation in Brazil, augmented our product portfolio and improved our manufacturing capabilities in one of the world's largest agricultural markets. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In  2017, the Company acquired substantially all of the assets and assumed certain specified liabilities of Old Dominion Brush Company, Inc. (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">"ODB"</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:10pt;font-style:italic;font-weight:400;line-height:120%">ODB</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> manufactures leaf collection equipment as well as  replacement brooms for street sweepers, both of which are sold to municipalities, contractors and commercial landscape markets in North America.  </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">ODB</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> is based in Richmond, Virginia.  This acquisition provided new and complementary products to our existing range of infrastructure maintenance equipment and parts.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2017, the Company acquired R.P.M. Tech Inc. ("</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">RPM</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">"), a manufacturer of heavy duty snow removal equipment and associated parts.  </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">RPM</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> primarily sells to governmental agencies, related contractors, airports and </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:45pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">other industrial users. This acquisition complemented our existing range of snow removal products with </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">RPM's</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> range of heavy duty snow removal equipment, including their line of mechanical snow blowers.  In 2020, </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">RPM's </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">operations were consolidated into the Company's nearby </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Tenco</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> facility and the former </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">RPM</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> facility in Drummondville was sold.  </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2019, the Company acquired 100% of the outstanding capital shares of Dutch Power B.V. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">("Dutch Power")</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> in the Netherlands. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> Dutch Power </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">designs and manufactures a variety of landscape and vegetation management machines and attachments.  This acquisition expanded our existing platform and increased our capabilities in the European market. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Dutch Power</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> changed its legal name to </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Alamo Group The Netherlands</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> in 2021.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2019, the Company acquired substantially all of the assets of the Dixie Chopper </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">("Dixie Chopper"</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">) business.  </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Dixie Chopper</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> manufactures a wide range of commercial and high end residential Zero Turn ("ZT") mowers.  This acquisition provided a new channel and increased the Company's exposure in the outdoor power equipment market.  </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Dixie Chopper </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">was consolidated into our Rhino business operations.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2019, the Company acquired 100% of the outstanding capital shares of Morbark, LLC ("</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Morbark"</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">) which included its subsidiaries Rayco Manufacturing LLC ("</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Rayco</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">") and Denis Cimaf Inc. ("</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Denis Cimaf</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:10pt;font-style:italic;font-weight:400;line-height:120%">Morbark</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> is a leading manufacturer of equipment and aftermarket parts for forestry, tree care, biomass, land management and recycling markets.  This acquisition expanded the Company's product line and complemented its range of vegetation maintenance equipment in an adjacent market.  </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Morbark</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> is based in Winn, Michigan with subsidiary locations in Wooster, Ohio and Roxton Falls, Quebec.  At the end of 2020, the Denis Cimaf manufacturing operations based in Roxton Falls were consolidated into the Rayco facility in Wooster, Ohio. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2021, the Company acquired 100% of the outstanding capital shares of Timberwolf Limited (</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">"Timberwolf"</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">) in the U.K.  </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Timberwolf </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">is a leading manufacturer of a broad range of commercial wood chippers primarily serving markets in the U.K. and the European Union.  This acquisition complemented the Company's existing range of tree care products and strengthened the Company's presence in the U.K. and European forestry and tree care markets. </span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Sales and Marketing Strategy</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:107%">The Company believes that within the U.S. it is a leading supplier to governmental markets, a leading supplier in the U.S. agricultural market, and one of the largest suppliers in the European market for its key niche product offerings. The Company&#8217;s products are sold through the Company&#8217;s various marketing organizations and extensive worldwide dealer and distributor networks under the</span><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:107%">  </span><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:107%">Gradall&#174;, VacAll&#174;, Super Products&#174;, Rivard&#174;, Alamo Industrial&#174;, Terrain King&#174;, Tiger&#174;, Herder&#174;, Conver&#174;, Roberine&#174;, Votex&#174;, Schwarze&#174;, NiteHawk&#174;, ODB</span><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:107%">&#174;</span><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:107%">, Henke&#174;, Tenco&#174;,</span><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:107%">  </span><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:107%">Wausau&#174;,</span><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:107%">  </span><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:107%">Everest&#174;, H.P. Fairfield&#8482;,</span><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:107%">  </span><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:107%">R.P.M. Tech&#8482;, Morbark&#174;, Rayco&#174;,Denis Cimaf&#174;, Boxer&#174;, Bush Hog&#174;, Rhino&#174;, RhinoAg&#174;, M&amp;W&#174;, Dixie Chopper&#174;, Herschel&#174;, Schulte&#174;, Fieldquip&#174;, Santa Izabel&#8482;, McConnel&#174;, Bomford&#174;, Spearhead&#8482;, Twose&#8482;, SMA&#174;, Forges Gorce&#8482;, Rousseau&#174; , Timberwolf&#8482; , and Wolftrack&#8482; trademarks (some with related designs) as well as other trademarks and trade names.</span><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:107%">  </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%">  </span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Products and Distribution Channels</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At the beginning of the fourth quarter of 2021, the Company began reporting operating results on the basis of two new segments, namely, the Vegetation Management Division and the Industrial Equipment Division.  Prior to the fourth quarter of 2021, the Company had been reporting its operating results on the basis of two segments which were the Industrial Division and Agricultural Division.  The Vegetation Management Division includes all of the operations of the former Agricultural Division plus the mowing and forestry/tree care operations that were previously part of the former Industrial Division, including the Company's recently acquired </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Morbark</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Dutch Power</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> business units. The Industrial Equipment Division includes the Company&#8217;s vocational truck business and other industrial operations such as excavators, vacuum trucks, street sweepers, and snow removal equipment. We believe the realignment of our two divisions provides greater potential to capture synergies in cross-branding, distribution, product development, supply chain management and logistics. The two divisions are also more balanced in scale and scope giving the Company two strong platforms for ongoing development through a mix of organic growth and</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">acquisitions.</span></div><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:45pt;width:100%"><div><span><br/></span></div></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Vegetation Management Division</span></div><div><span><br/></span></div><div style="text-indent:18pt"><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:10pt;font-style:italic;font-weight:400;line-height:120%">Bush Hog and</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:10pt;font-style:italic;font-weight:400;line-height:120%">Rhino</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> equipment is generally sold to farmers, ranchers and other end-users to clear brush, mow grass, maintain pastures and unused farmland, shred crops, till fields, and for haymaking and other applications. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Bush Hog</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Rhino</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> equipment consists principally of a comprehensive line of tractor-powered equipment, including rotary mowers, finishing mowers, flail mowers, disc mowers, front-end loaders, backhoes, rotary tillers, posthole diggers, scraper blades and replacement parts.  </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Dixie Chopper</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> produces a wide range of commercial and high end residential zero turn ("ZT") mowers.  It sells its products through its independent dealers in the outdoor power equipment channel throughout the U.S.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div><div style="text-indent:18pt"><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:10pt;font-style:italic;font-weight:400;line-height:120%">Schulte</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> equipment includes heavy-duty mechanical rotary mowers, snow blowers, rock removal equipment and related replacement parts. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Schulte</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> serves both the agricultural and governmental markets primarily in Canada and the U.S. It also sells some of the Company&#8217;s other product lines in its markets and some of its products through independent distributors throughout the world.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">McConnel</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> equipment principally includes a broad line of hydraulic, boom-mounted hedge and grass cutters, remote control mowers as well as other tractor attachments and implements such as cultivators, subsoilers  and other implements and related replacement parts. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">McConnel</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> equipment is sold primarily in the U.K., Ireland, France and in other parts of Europe through independent dealers and distributors.  McConnel also sells a range of self-propelled sprayers and a variety of multi-drive load-carrying vehicles.  These products are sold through its existing dealer network as well as various marketing groups within the European region of the Vegetation Management Division.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> Bomford</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> equipment includes hydraulic boom-mounted hedge and hedgerow cutters, industrial grass mowers, agricultural seedbed preparation cultivators and related replacement parts. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Bomford</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> equipment is sold to governmental agencies, contractors and agricultural end-users in the U.K., Ireland, France and other parts of Europe, North America, Australia and Asia. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Bomford&#8217;s</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> sales network is similar to that of </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">McConnel</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> in the U.K. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="margin-bottom:10pt"><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:10pt;font-style:italic;font-weight:400;line-height:120%">Spearhead</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> manufactures a range of tractor-mounted vegetation maintenance equipment, including reach mowers, flail mowers and rotary cutters.  These products are manufactured in the Company's </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Bomford</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> facility.</span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Fieldquip</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> broadens the Company's presence in Australia.  The company sells a variety of vegetation maintenance equipment, specifically rotary mowers and tractor attachments.  </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Fieldquip</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> sells to customers ranging from large agricultural and commercial operators to small farm hobbyist and residential users, as well as agricultural dealers who serve owners and operators in the turf, golf, park and airport industries and growers with orchards, vineyards and plantations in Australia and the South Pacific.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Rousseau</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> sells hydraulic and mechanical boom mowers, primarily in France, through its own sales force and its dealer distribution network mainly to agricultural and governmental markets. These products have also been introduced into other markets outside of France.  These products are manufactured at our facility near Lyon, France.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">SMA</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> equipment includes hydraulic boom-mounted hedge and hedgerow cutters and related replacement parts. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">SMA&#8217;s</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> principal customers are French local authorities. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">SMA&#8217;s</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> product offerings include certain quick-attach boom mowers manufactured by the Company in the U.K. to expand its presence in agricultural dealerships. The Company consolidated its </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">SMA</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> operations located in Orleans, France, and production was relocated to its manufacturing facility near Lyon, France. </span></div><div style="text-indent:15pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Forges Gorce</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> manufactures cutting blades which are sold to some of the Company&#8217;s subsidiaries as well as to other third party customers and distributors.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:45pt;width:100%"><div><span><br/></span></div></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Morbark</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> manufactures a broad range of tree chippers, stump grinders, mulchers, brush cutters, flails and debarkers sold under the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Morbark</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:10pt;font-style:italic;font-weight:400;line-height:120%">Rayco</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:10pt;font-style:italic;font-weight:400;line-height:120%">Denis Cimaf</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Boxer</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> brand names.  Its products are sold to industrial and commercial contractors mainly through a network of independent dealers and distributors and, to a lesser extent, direct sales to end-users. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Timberwolf</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> produces a variety of commercial tree care and forestry equipment and attachments under several brand names including </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Timberwolf and Wolftrack</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.  Timberwolf sells its products primarily to commercial customers through a comprehensive network of dealers.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Alamo Industrial</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> equipment is principally sold through independent dealers to governmental end-users, related independent contractors and utility and other dealers serving infrastructure maintenance operators and other applications in the U.S. and other countries. Governmental agencies and contractors that perform services for such agencies purchase primarily hydraulically-powered, tractor - and off-road chassis mounted mowers, including boom-mounted mowers, other types of cutters and replacement parts for heavy-duty, intensive use applications, including maintenance around highway, airport, recreational and other public areas. A portion of </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Alamo Industrial&#8217;s</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> sales includes tractors, which are not manufactured by </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Alamo Industrial.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Tiger</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> equipment includes heavy duty, tractor- and truck-mounted mowing and vegetation maintenance equipment and replacement parts. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Tiger</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> sells to state, county and local governmental entities and related contractors, primarily through a network of independent dealers. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Tiger&#8217;s</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> dealer distribution network is independent of </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Alamo Industrial&#8217;s</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> dealer distribution network. A portion of </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Tiger&#8217;s</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> sales includes tractors, which are not manufactured by </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Tiger.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Alamo Group The Netherlands</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> produces a variety of landscape and vegetation maintenance equipment and attachments under several brand names including </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Herder</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:10pt;font-style:italic;font-weight:400;line-height:120%">Conver</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:10pt;font-style:italic;font-weight:400;line-height:120%">Roberine</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, and </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Votex</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:10pt;font-style:italic;font-weight:400;line-height:120%">Alamo Group The Netherlands</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> primarily sells to contractors who perform infrastructure maintenance for governmental agencies and private landowners.</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Herder</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Santa Izabel</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> give the Company a presence in the Brazilian agricultural market. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Herder</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> manufactures and distributes flail and rotary mowers and various other agricultural equipment, direct and through dealers. Its products are used in a wide variety of agricultural and governmental markets.  </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Santa Izabel</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> designs, manufactures and markets a variety of agricultural implements, including sugar cane trailers sold throughout Brazil.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Herschel </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">aftermarket replacement parts are sold for many types of farm equipment and tractors and certain types of mowing and construction equipment. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Herschel</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> products include a wide range of cutting parts, plain and hard-faced replacement tillage tools, disc blades and fertilizer application components. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Herschel</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> replacement tools and parts are sold throughout the United States, Canada and Mexico to five major customer groups: farm equipment dealers; fleet stores; wholesale distributors; OEMs; and construction equipment dealers. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Valu-Bilt</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> complements the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Herschel</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> product lines while also expanding the Company&#8217;s offering of aftermarket agricultural parts and added catalog and internet sales direct to end-users.</span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Industrial Equipment Division</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Gradall</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> produces a range of excavators based on high-pressure hydraulic telescoping booms which are sold through dealers primarily to governmental agencies and, to a lesser extent, the mining industry, steel mills and other specialty applications in the U.S. and other countries. Many of these products are designed for excavation, grading, shaping and similar tasks involved in land clearing, road building, grading or maintenance. These products are available mounted on various types of undercarriages: wheels for full-speed highway travel, wheels for on/off road use, and crawlers.  A portion of </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Gradall&#8217;s</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> sales includes truck chassis which are not manufactured by </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Gradall</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.</span></div><div style="text-indent:15pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">VacAll</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> produces catch basin cleaners and roadway debris vacuum systems. These units are powerful and versatile with uses including, but not limited to, removal of wet and dry debris, spill elimination, and cleaning of sludge beds. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">VacAll</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> also offers a line of sewer cleaners. Its products are primarily sold through dealers to industrial and commercial contractors as well as governmental agencies. A portion of </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">VacAll&#8217;s</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> sales includes truck chassis which are not manufactured by the Company.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Super Products</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> produces truck-mounted vacuum machines, combination sewer cleaners and hydro excavators.  Its products are sold to municipalities, utilities and contractors through a nationwide distributor network.  </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Super Products</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> also operates a network of rental stores that provides short and long-term rental contracts for its products.  Rental customers are primarily contractors serving the petrochemical, petroleum production and refining industries. A portion of the sales of </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Super Products </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">includes truck chassis which are not manufactured by the Company.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Rivard</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> manufactures vacuum trucks, high pressure cleaning systems and trenchers. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Rivard&#8217;s</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> equipment is sold primarily in France and certain other markets, mainly in Europe, the Middle East and North Africa, and to governmental entities and related contractors. This business also complements our product offerings in North America. The majority of </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Rivard's</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> customers provide their own truck chassis.</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Tenco</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">RPM</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> both design and manufacture a heavy-duty line of snow removal equipment, including truck-mounted snow plows, snow blowers, dump bodies and spreaders.  Their products are primarily sold through independent dealers.  End-users are governmental agencies, contractors, airports and other industrial users.</span></div><div style="text-indent:16pt"><span><br/></span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Wausau</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> designs and manufactures a comprehensive range of snow removal and ice control products.  Products include snowplows, snow blowers, snow throwers, brooms, deicers, brine sprayers and other related accessories and parts.  </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Wausau </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">sells its products through its established dealer network to both governmental and non-governmental end-users and sells directly to airports and fixed-base operators.</span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Everest</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> designs and manufactures a range of snow removal and ice control products including snowplows, wing systems, spreader bodies, and other related accessories and parts.  </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Everest</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> also manufactures custom-engineered underground construction forms for tunnels.</span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Henke</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> designs and manufactures snow plows and heavy duty snow removal equipment, hitches and attachments for trucks, loaders and graders sold primarily through independent truck and industrial equipment dealers. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Henke&#8217;s</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> primary end-users are governmental agencies, related contractors and other industrial users.</span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">H.P. Fairfield</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> is a full-service distributor of public works and runway maintenance products, parts and service, whose sales and service outlets are located in the northeastern part of the U.S.  </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">H.P. Fairfield&#8217;s</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> offerings include custom municipal snow and ice removal equipment, a range of salt spreaders and truck bodies, street sweepers, a line of industrial rotary, flail and boom mowers, solid waste and recycling equipment, water and sewer maintenance equipment, municipal tractors and attachments, and asphalt maintenance patchers, some of which are sourced from other Alamo Group companies.  </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">H.P. Fairfield </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">also provides truck up-fitting services as part of its business.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Schwarze</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> equipment includes truck-mounted air vacuum, mechanical broom, and regenerative air sweepers, pothole patchers and replacement parts. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Schwarze</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> sells its products primarily to governmental agencies and independent contractors, either directly or through its independent dealer network. A portion of </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Schwarze&#8217;s</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> sales includes truck chassis which are not manufactured by </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Schwarze</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">ODB</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> manufactures and sells leaf and debris collection equipment and replacement brooms for street sweepers, both of which are sold to municipalities, contractors and commercial landscape markets in North America.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Nite-Hawk</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> manufactures parking lot sweepers with unique and innovative hydraulic designs. By eliminating the auxiliary engine, </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Nite-Hawk</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> sweepers have proven to be fuel-efficient, environmentally conscious, and cost-effective to operate. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Nite-Hawk</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> focuses mainly on and sells direct to parking lot contractors. A portion of </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Nite-Hawk&#8217;s</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> sales includes truck chassis which are not manufactured by </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Nite-Hawk</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Replacement Parts</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company derives a significant portion of its revenues from sales of replacement parts for each of its wholegoods lines. Replacement parts represented approximately 19%, 20% and 21% of the Company&#8217;s total sales for the years ended December&#160;31, 2022, 2021 and 2020, respectively.  Replacement parts generally are more profitable and less cyclical than wholegoods.</span></div><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:45pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Product Development</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s ability to provide innovative responses to customer needs, to develop and manufacture new products, and to enhance existing product lines is important to its success. The Company continually conducts research and development activities in an effort to improve existing products and develop new products. As of December&#160;31, 2022, the Company employed 267 people in its various engineering departments, 166 of whom are degreed engineers and the balance of whom are support staff. Amounts expended on research and development activities were approximately $14.3&#160;million in 2022, $11.7&#160;million in 2021 and $12.4&#160;million in 2020. As a percentage of sales, research &amp; development was approximately 0.9% in 2022, 0.9% in 2021 and 1.1% in 2020, and is expected to continue at similar levels in 2023.  </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Seasonality</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company&#8217;s unit sales are fairly constant quarter to quarter. However, replacement part sales are generally higher in the second and third quarters of the year, because a substantial number of the Company&#8217;s products are used for maintenance activities such as vegetation maintenance, highway right-of-way maintenance, construction, and street and parking lot sweeping. Usage of this equipment is typically lower in harsh weather. The Company utilizes an annual twelve-month sales forecast provided by the Company&#8217;s marketing departments which is updated quarterly in order to develop a production plan for its manufacturing facilities. In addition, many of the Company&#8217;s marketing departments attempt to equalize demand for products throughout the calendar year by offering seasonal sales programs which may provide additional incentives, including discounts and extended payment terms.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Competition</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s products are sold in highly competitive markets throughout the world. The principal competitive factors are price, quality, availability, service and reputation. The Company competes with several large national and international companies that offer a broad range of equipment and replacement parts, as well as with numerous small, privately-held manufacturers and suppliers of a limited number of products, mainly on a regional basis. Some of the Company&#8217;s competitors are significantly larger than the Company and have substantially greater financial and other resources at their disposal. The Company believes that it is able to compete successfully in its markets by effectively managing its manufacturing costs, offering high quality products, developing and designing innovative products and, to some extent, avoiding direct competition with significantly larger potential competitors. There can be no assurance that the Company&#8217;s competitors will not substantially increase the resources devoted to the development and marketing of products competitive with the Company&#8217;s products or that new competitors with greater resources will not enter the Company&#8217;s markets.</span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Unfilled Orders</span></div><div><span><br/></span></div><div style="text-indent:18pt"><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 unfilled customer orders of $1.0&#160;billion compared to $800.8&#160;million at December&#160;31, 2021. Management expects that substantially all of the Company&#8217;s unfilled orders as of December&#160;31, 2022 will be shipped during fiscal year 2023. The amount of unfilled orders at a particular time is affected by a number of factors, including manufacturing and shipping schedules which, in most instances, are dependent on the Company&#8217;s seasonal sales programs and the requirements of its customers. It is possible that the lingering effects of the COVID-19 pandemic, including supply chain disruptions, labor constraints and other new and/or unanticipated effects, could cause delays in delivery or an inability to complete unfilled customer orders.  The Company&#8217;s orders are subject to cancellation at any time before shipment; therefore, a comparison of unfilled orders from period to period is not necessarily meaningful and may not be indicative of future actual shipments. No single customer or group of customers is responsible for 10% or more of the aggregate revenue of the Company or of a segment of the Company.</span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Sources of Supply</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The principal raw materials used by the Company include steel, other metal components, hydraulic hoses, paint and tires. During 2022, the raw materials needed by the Company were available from a variety of sources in adequate quantities and at prevailing market prices, but in 2022 we experienced significant price inflation for many of the raw materials we purchase.  We expect pricing to remain elevated in 2023 but anticipate a slowing of the rate of inflation.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:45pt;width:100%"><div><span><br/></span></div></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">While the Company manufactures many of the parts for its products, a significant percentage of parts, including most drivelines, gearboxes, industrial engines, and hydraulic components, are purchased from outside suppliers which manufacture to the Company&#8217;s specifications. In addition, the Company, through its subsidiaries, purchases tractors and truck chassis as a number of the Company&#8217;s products are mounted and shipped with a tractor or truck chassis. Tractors and truck chassis are generally available, but during 2022 we experienced significant delays in receiving truck chassis which caused us to delay shipments of some of our products and created operational inefficiencies in some of our facilities, particularly within our Industrial Equipment Division. The Company sources its purchased goods from international and domestic suppliers.  No one supplier is responsible for supplying more than 10% of the principal raw materials or purchased goods used by the Company. </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Patents, Trademarks and Trade Names</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company owns various U.S. and international patents, trademarks and trade names. While the Company considers its patents, trademarks and trade names to be advantageous to its business, it is not dependent on any single patent, trademark, trade name or group of patents, trademarks, or trade names. The net book value of patents, trademarks and trade names was $78.9&#160;million and $84.8&#160;million as of December&#160;31, 2022 and 2021, respectively. </span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Environmental and Other Governmental Regulations</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Like other manufacturers, the Company is subject to a broad range of federal, state, local and foreign laws, rules and regulations including those relating to climate change; emissions to air, including Tier 4 or similar engine emission regulations; discharges to water; restrictions placed on water usage and water availability; product and associated packaging; use of certain chemicals; restricted substances, including "conflict minerals" disclosure rules; import and export compliance, including country of origin certification requirements; worker and product user health and safety; energy efficiency; product life-cycles; outdoor noise laws; and the generation, use, handling, labeling, collection, management, storage, transportation, treatment, and disposal of hazardous substances, wastes, and other regulated materials. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The U.S. Environmental Protection Agency ("EPA"), the California Air Resources Board ("CARB"), and similar regulators in other U.S. states and foreign jurisdictions in which we sell our products have emission requirements setting maximum emission standards for certain equipment. In addition to the the EPA's implementation of Tier 4 emission requirements applicable to diesel engines, China, the European Union ("EU") and the United Kingdom also have adopted similar regulations, and similar emission regulations are also being considered in other markets in which we sell our products. CARB continues to propose and discuss implementation of zero emissions equipment regulations that will likely create increasingly stringent requirements on exhaust and other emissions from some of the products we manufacture.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The U.S. federal government, several U.S. states, and certain international markets where we sell our products, including the EU and some EU member countries have introduced product life-cycle laws, rules, or regulations, which are intended to reduce waste and environmental and human health impact, and require manufacturers to label, collect, dispose, and recycle certain products, including some of our products, at the end of their useful life.  These include, among other laws and regulations: (i) the Registration, Evaluation, Authorization and Restriction of Chemicals directive or similar substance level laws, rules, or regulations that require notification of use of certain chemicals, or ban or restrict the use of certain chemicals; (ii) California Proposition 65 and other product substance restriction laws, some of which require certain labeling of products; (iii) energy efficiency laws, rules, or regulations, which are intended to reduce the use and inefficiencies associated with energy and natural resource consumption and require specified efficiency ratings and capabilities for certain products; (iv) conflict minerals laws, such as those contained in the Dodd-Frank Wall Street Reform and Consumer Protection Act and the rules promulgated by the U.S. Securities and Exchange Commission ("SEC"), which require specific procedures for the determination and disclosure of the use of certain minerals, known as "conflict minerals," which are mined from the Democratic Republic of the Congo and adjoining countries; and (v) supply chain transparency laws and regulations addressing modern slavery and human trafficking.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is also subject to various other federal, state, and local laws affecting its business, as well as a variety of regulations relating to such matters as working conditions, equal employment opportunities, and product safety, including National Highway Traffic Safety Administration reporting.  In addition, a variety of laws regulate the Company&#8217;s contractual relationships with its dealers, some of which impose restrictive standards on the relationship </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:45pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">between the Company and its dealers, including events of default, grounds for termination, non-renewal of dealer contracts, and equipment repurchase requirements. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We believe we have maintained compliance with existing laws, rules and regulations applicable to our business and will continue to do so.  W believe there will be some additional costs to our business as a result of the increasing level of regulation applicable to our business activities, and there can be no assurance that the Company will not incur material costs or other liabilities as a result thereof.  </span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:112%">Human Capital Resources and Management </span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We recognize that the success of our Company is dependent upon the talents and dedication of our people, and we are committed to investing in their success.  Our Vice-President of Corporate Human Resources is responsible for developing and executing our human resources strategy together with our President and Chief Executive Officer and the other members of the Company's management team.  Our Chief Executive Officer and Vice-President of Human Resources regularly update our Board of Directors regarding the status of our human resources initiatives.  Among the key elements of our human resources strategy are the following:</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:112%">Focus on Health and Safety</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">:  Employee health and safety is of paramount importance to us.  We believe it is our responsibility to maintain a safe and healthy workplace in each of our locations and to make continuous improvements in this area. We do this by embedding safety into every level of the organization as one of our core values.  Our approach is proactive and preventative.  Regular safety meetings are held at our plants on an ongoing basis.  Every location offers frequent safety training programs to all employees and leverages safety committees who conduct safety audits to identify and remove potential issues.  We ensure that safety performance is tracked, aggregated, and reviewed timely and reported to management for appropriate action. Our corporate technical affairs and safety team collects data on recordable injury rates, severe injury rates, and near misses from each Alamo Group operating company, and conducts root cause analysis with corrective action plans to prevent future occurrences.  This data is reviewed monthly by the executive leadership team and shared with the Company's Board of Directors on a quarterly basis.  With the onset of the COVID-19 pandemic, we implemented, and continue to adhere to, certain rigorous and meaningful safety measures recommended by the U.S. Centers for Disease Control and Prevention, World Health Organization, and federal, state, local, and foreign authorities that we determined were in the best interest of our employees, customers, and suppliers.  This led to the adoption of various measures including COVID-19 case tracking and quarantining where and when necessary, mandating face coverings when required by local rules and regulations (except where hazardous), regular sanitization, reconfiguration of workstations to allow for appropriate distancing, expanding the use of internal video meetings and installation of related technology, minimizing travel, and implementing remote work assignments, amongst other actions. These measures continue to be in place where and when necessary.</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:112%">Employee Engagement and Talent Development</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">:   We focus on attracting, developing, and retaining a team of highly talented and motivated employees.  Our key talent philosophy is to develop internal candidates from within our Company, so they are &#8220;ready now&#8221; when career opportunities arise, and when we recruit externally to select candidates with future stretch potential.  We provide all employees a wide range of professional development experiences, both formal and informal, at all stages in their careers. Our formal offerings include tuition reimbursement, a diverse curriculum of learning programs, leadership development experiences, vocational and trade skills training, and external partnerships with educational institutions and trade schools across the globe.  The Company's focus on supervisor and manager development and a culture of promoting a diverse, inclusive, and respectful workplace supports our ability to attract, engage, retain, and motivate industry-leading talent to meet our customer&#8217;s needs and sustain the Company&#8217;s growth.  Formal welder training, apprenticeships, and local partnerships with vocational training programs, junior colleges, and high schools ensure that our operating companies continue to attract and grow their critical manufacturing skills.  The Company&#8217;s emphasis on our core competencies, including Leading People and Leading Change, continues to favorably impact our succession planning and employee retention with below industry average annual turnover rates. In January of 2022, we implemented The Alamo Group Learning &amp; Development Academy, a new talent development program which focuses on building and strengthening the leadership capabilities of our management teams and also offers technical skills training for our production floor employees.  Many programs are available on-demand to manufacturing supervisors, which offers development opportunities to those with direct oversight of the people building our products.  Training is easily accessible both to employees who work on-site as well as those who work in remote and hybrid environments.  Virtual, in-person and on-campus programs are offered to encourage cross-location and cross-functional networking and sharing of ideas that foster and support our culture of continuous improvement.   </span></div><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:45pt;width:100%"><div><span><br/></span></div></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:112%">Commitment to Diversity and Inclusion</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">:  We recognize, value, and respect the individual differences of our employees and believe that a diverse set of backgrounds, experiences, and perspectives is crucial to our ability to continue to innovate, collaborate, and meet the needs of our global workforce and customers.  Accordingly, we are committed to encouraging and fostering an inclusive culture where diversity and individual differences are accepted, respected, and valued so that employees feel empowered to contribute fully to the Company's ongoing success. To support diversity and inclusion in the workplace, we dedicate people and resources to promote an inclusive environment through policies and training.  We also market our career opportunities to a wide network of organizations and job boards that can help us source diverse candidate pools. We actively volunteer and engage in local community projects and contribute donations to charitable organizations. We build strategies and implement tactics that will attract and maintain a diverse workforce, positively impacting the communities and markets in which our employees live and work. Initiatives include but are not limited to increased diversity and inclusion training that increases awareness and reinforces respect in the workplace, as well as building partnerships with organizations like Women in Manufacturing and The National Diversity Council.  </span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:112%">Compensation and Benefits</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">:  We conduct regular assessments of our pay and benefit practices to help ensure that our people are compensated fairly and competitively. We also devote significant resources to management and employee training and development, including tuition assistance for career-enhancing academic and professional programs. In addition to salaries, our compensation programs, which vary by country and region, can include annual bonus and incentive plans, profit sharing, stock-based compensation awards, company-sponsored retirement savings plans with employee matching opportunities (or similar local retirement benefits), healthcare and insurance benefits, dependent care and flexible savings accounts, paid time off such as vacation and holidays, sick pay, disability pay and family leave, flexible work schedules, wellness and employee assistance programs for mental health, self-improvement, legal and financial services, service anniversary awards, tuition assistance and dependent college scholarships, and discounts on products and services.  </span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:112%">Labor Agreements:  </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">As of December&#160;31, 2022, we employed approximately 4,200 employees. In the U.S. the Company has a collective bargaining agreement at its Gradall plant which covers 185 employees and will expire on April&#160;14, 2024. In Canada the Tenco bargaining agreement covers 99 employees and expires on December&#160;31, 2025; RPM has an agreement covering 4 employees which expires on February&#160;1, 2025; and Everest has a collective bargaining agreement covering 66 employees which will expire on November&#160;30, 2023.  In the Company&#8217;s European locations, all employees are covered by the European Works Council agreements.  McConnel, Bomford, Spearhead, AMS-UK, SMA, Faucheux, Forges Gorce, Rousseau, Rivard, and Alamo Group The Netherlands have various collective bargaining agreements covering approximately 784 employees. The Company considers its employee relations to be satisfactory.  </span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Available Information</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company files annual, quarterly and current reports, proxy statements and other information with the Securities and Exchange Commission (the &#8220;SEC&#8221;).  The SEC maintains a website that contains annual, quarterly and current reports, proxy and information statements, and other information that issuers (including the Company) file electronically with the SEC. The SEC&#8217;s website is www.sec.gov.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s website is www.alamo-group.com. The Company makes available free of charge through its website, via a link to the SEC&#8217;s website at www.sec.gov, its annual report on Form 10-K, quarterly reports on Form 10-Q, current reports on Form 8-K and any amendments to those reports filed or furnished pursuant to Section 13(a) or 15(d) of the Securities Exchange Act of 1934, as amended (the &#8220;Exchange Act&#8221;), as soon as reasonably practicable after such material is electronically filed with, or furnished to, the SEC. The Company also makes available through its website, via a link to the SEC&#8217;s website, statements of beneficial ownership of the Company&#8217;s equity securities filed by its directors, officers, 10% or greater shareholders, and others required to file under Section 16 of the Exchange Act.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company also makes available free of charge on its website its most recent annual report on Form 10-K, its quarterly reports on Form 10-Q for the current fiscal year, its most recent proxy statement and its most recent annual report to stockholders, although in some cases these documents are not available on our site as soon as they are available on the SEC&#8217;s site. You will need to have on your computer the Adobe Acrobat Reader</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">&#174;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> software to view the documents, which are in PDF format. In addition, the Company posts on its website its Charters for its Audit Committee, Compensation Committee and Nominating/Corporate Governance Committee, as well as its Corporate Governance Policies and its Code of Conduct and Ethics for its directors, officers and employees. You can obtain a written copy of these documents, excluding exhibits, at no cost, by sending your request to the Corporate Secretary, Alamo Group Inc., 1627 E. Walnut Street, Seguin, Texas 78155, which is the principal </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:45pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">corporate office of the Company. The telephone number is 830-379-1480. The information on the Company&#8217;s website is not incorporated by reference into this report.</span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Forward-Looking Information</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Part I of this Annual Report on Form 10-K and the &#8220;Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations&#8221; included in Part II of this Annual Report contain forward-looking statements within the meaning of Section 27A of the Securities Act of 1933 and Section 21E of the Securities Exchange Act of 1934. In addition, forward-looking statements may be made in other documents filed or furnished with the SEC, or by management orally or in press releases, conferences, reports or otherwise to analysts, investors, representatives of the media and others, in the future by or on behalf of the Company.  Generally, forward-looking statements are not based on historical facts but instead represent the Company's and its management's beliefs regarding future events.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Statements that are not historical are forward-looking. When used by us or on our behalf, the words "expect," &#8220;will,&#8221; &#8220;estimate,&#8221; &#8220;believe,&#8221; &#8220;intend,&#8221; "would," &#8220;could,&#8221; "predict," &#8220;should,&#8221; &#8220;anticipate,&#8221; "continue," &#8220;project,&#8221; &#8220;forecast,&#8221; &#8220;plan,&#8221; &#8220;may&#8221; and similar expressions generally identify forward-looking statements made by us or on our behalf. Forward-looking statements involve risks and uncertainties. These uncertainties include factors that affect all businesses operating in a global market, as well as matters specific to the Company and the markets we serve. Certain particular risks and uncertainties that continually face us include the following:</span></div><div><span><br/></span></div><div style="padding-left:72pt;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">budget constraints and revenue shortfalls which could affect the purchases of our type of equipment by governmental customers and related contractors in both domestic and international markets;</span></div><div style="padding-left:72pt;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">market acceptance of new and existing products;</span></div><div style="padding-left:72pt;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 ability to hire suitable employees for our business and maintain good relations with employees;</span></div><div style="padding-left:72pt;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 ability to develop and manufacture new and existing products profitably;</span></div><div style="padding-left:72pt;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 inability of our suppliers, creditors, public utility providers and financial and other service organizations to deliver or provide their products or services to us;</span></div><div style="padding-left:72pt;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">legal actions and litigation;</span></div><div style="padding-left:72pt;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">impairment in the carrying value of goodwill;</span></div><div style="padding-left:72pt;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 ability to successfully integrate acquisitions and operate acquired businesses or assets;</span></div><div style="padding-left:72pt;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">current and changing tax laws in the U.S. and internationally; </span></div><div style="padding-left:72pt;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 ability to hire and retain quality skilled employees; and</span></div><div style="padding-left:72pt;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">changes in the prices of agricultural commodities, which could affect our customers&#8217;&#160;income</span></div><div style="padding-left:72pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">levels.</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, we are subject to risks and uncertainties facing the industry in general, including the following:</span></div><div style="padding-left:72pt"><span><br/></span></div><div style="padding-left:72pt;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">changes in business and political conditions and the economy in general in both domestic and international markets;</span></div><div style="padding-left:72pt;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">negative impacts on our business and financial results including from operational and supply chain disruptions, input cost inflation, labor shortages, and other negative effects resulting from the COVID-19 pandemic or other causes; </span></div><div style="padding-left:72pt;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 price and availability of energy and critical raw materials, particularly steel and steel products;</span></div><div style="padding-left:72pt;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">increased competition;</span></div><div style="padding-left:72pt;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">increases in input costs on items we use in the manufacturing of our products; </span></div><div style="padding-left:72pt;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 weather conditions such as droughts, floods, snowstorms, etc., which can affect the buying patterns of our customers and end-users;</span></div><div style="padding-left:72pt;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">increased costs of complying with governmental regulations which affect corporations including related fines and penalties (such as the European General Data Protection Regulation (GDPR) and the California Consumer Privacy Act);</span></div><div style="padding-left:72pt;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">an increase in unfunded pension plan liability due to financial market deterioration;</span></div><div style="padding-left:72pt;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 potential effects on the buying habits of our customers due to animal disease outbreaks and other epidemics;</span></div><div style="padding-left:72pt;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 market conditions and credit constraints which could affect our customers and end-users, such as cutbacks on dealer stocking levels;</span></div><div style="padding-left:72pt;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">changes in market demand;</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:45pt;width:100%"><div><span><br/></span></div></div><div style="padding-left:72pt;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">climate related incidents and other sustainability risks, global pandemics, acts of war or aggression (including the war between Russia and Ukraine) and terrorist activities or military actions;</span></div><div style="padding-left:72pt;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">cyber security risks including the potential loss of proprietary data or data security breaches and related fines, penalties and other liabilities;</span></div><div style="padding-left:72pt;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">financial market changes including changes in interest rates and fluctuations in foreign exchange rates;</span></div><div style="padding-left:72pt;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">abnormal seasonal factors in our industry;</span></div><div style="padding-left:72pt;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">changes in domestic and foreign governmental policies and laws, including increased&#160;levels of government regulation and changes in agricultural policies, including the amount of farm subsidies and farm payments as well as changes in trade policy that may have an adverse impact on our business;</span></div><div style="padding-left:72pt;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">government actions, including but not limited to budget levels, change in tax laws, regulations and legislation, relating to the environment, commerce, infrastructure spending, health and safety; and</span></div><div style="padding-left:72pt;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">risk of governmental defaults and resulting impact on the global economy and particularly financial institutions.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We wish to caution readers not to place undue reliance on any forward-looking statement and to recognize that the statements are not predictions of actual future results. Actual results could differ materially from those anticipated in the forward-looking statements and from historical results, due to the risks and uncertainties described above and under &#8220;Risk Factors,&#8221; as well as others not now anticipated. The foregoing statements are not exclusive and further information concerning us and our businesses, including factors that could potentially materially affect our financial results, may emerge from time to time. It is not possible for management to predict all risk factors or to assess the impact of such risk factors on the Company&#8217;s businesses.  Any forward-looking statements made by or on behalf of the Company speak only to the date they are made and we do not undertake to update forward-looking statements to reflect the impact of circumstances or events that arise after the forward-looking statements were made.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Information About our Executive Officers </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-bottom:10pt;text-indent:15pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Certain information is set forth below concerning the executive officers of the Company (the "Executives"), each of whom has been appointed to serve until the 2023 annual meeting of directors or until their successor is duly appointed and qualified.  </span><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:20.391%"></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:13.958%"></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:60.891%"></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:100%">Name</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%">Age</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%">Position</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Jeffery A. Leonard</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">President and Chief Executive Officer</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%">Richard J. Wehrle</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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">66</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:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Executive Vice President and Chief Financial Officer</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Edward T. Rizzuti</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">53</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Executive Vice President, General Counsel and Secretary</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%">Dan E. Malone</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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62</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:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Executive Vice President, Chief Sustainability Officer</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Richard H. Raborn</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">57</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Executive Vice President, Alamo Vegetation Management Division</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%">Michael A. Haberman</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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64</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:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Executive Vice President, Alamo Industrial Equipment Division</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Janet S. Pollock</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vice President, Human Resources</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom: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%">Lori L. Sullivan</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">53</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom: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%">Vice President, Internal Audit</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><td colspan="3" style="display:none"></td></tr></table></div><div style="padding-left:18pt"><span><br/></span></div><div style="text-indent:15pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Jeffery A. Leonard was appointed President and Chief Executive Officer of the Company in May of 2021. Mr. Leonard was also appointed as a director of the Company in June of 2021. Mr. Leonard joined the Company in 2011, and served as Executive Vice President of the Company's former Industrial Division from 2011 to 2021. Mr. Leonard previously was Senior Vice President of Metso Minerals Industries Inc., a supplier of technology and services for mining, construction, power generation, automation, recycling, and pulp and paper industries.</span></div><div style="text-indent:15pt"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:45pt;width:100%"><div><span><br/></span></div></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Richard J. Wehrle was appointed Executive Vice-President and Chief Financial Officer of the Company in July of 2021. Prior to that, Mr. Wehrle served as Vice President, Controller and Treasurer of the Company from May 2001 to July 2021. He assumed Treasury responsibilities in May of 2018. Previously, Mr. Wehrle served in various accounting management capacities within the Company from 1988 to 2001.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Edward T. Rizzuti was appointed Vice President, General Counsel of Alamo Group Inc. in July of 2015, assumed the Secretary role in May of 2018 and was promoted to Executive Vice-President in November of 2021.  Prior to joining the Company, from 2010 to 2015, Mr. Rizzuti  served as Vice President, General Counsel and Secretary for Erickson Incorporated, a publicly traded aircraft manufacturing and operating company based in Portland, Oregon. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Dan E. Malone was appointed Executive Vice President, Chief Sustainability Officer in July of 2021. Mr. Malone joined the Company in 2007 and served as Executive Vice President, Chief Financial Officer from 2007 to 2021. Prior to joining the Company, Mr. Malone held the position of Executive Vice President, Chief Financial Officer &amp; Corporate Secretary at Igloo Products Corporation, a manufacturer of insulated consumer goods, from 2002 to January 2007. Mr. Malone was Vice President and Chief Financial Officer of The York Group, Inc. from 2000 to 2002, and held various financial positions from 1987 to 2000 with Cooper Industries, Inc. and its various subsidiaries.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Richard H. Raborn was appointed Executive Vice President the Company's Vegetation Management Division in July of 2021. Mr. Raborn joined the Company in 2015 and served as Executive Vice-President of the Company's former Agricultural Division from 2015 to 2021. Prior to joining the Company, Mr. Raborn was Vice President and General Manager of the Powertrain Metal Division for Illinois Tool Works (ITW) from 2009 to 2015. ITW is one of the world's leading diversified manufacturers of specialized industrial equipment, consumables and related service business. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Michael A. Haberman was appointed Executive Vice-President of the Company's Industrial Equipment Division in July of 2021. Prior to his role as Executive Vice-President, Mr. Haberman served as the Company's Excavation/Vacuum Truck group Vice-President from January 2020 to July 2021. Previously, Mr. Haberman served as President of the Company's Gradall Industries company from February of 2006 until January of 2020.   </span></div><div style="text-indent:15pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Janet S. Pollock was appointed Vice President, Human Resources of Alamo Group Inc. in May of 2018.  Ms. Pollock joined Alamo Group in June of 2013 as Vice President of Human Resources for U.S. Operations. Prior to joining the Company, Ms. Pollock was Vice President of Human Resources with CPS Energy in San Antonio, Texas and Vice President of Strategic Initiatives for Coca-Cola Enterprises, Inc.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Lori L. Sullivan was appointed Vice President, Internal Audit of Alamo Group Inc. in May of 2019. Prior to this appointment, Ms. Sullivan was Vice President of Internal Audit for U.S. Operations and Director of Internal Audit for Alamo Group Inc. Ms. Sullivan has held audit positions within various industries including research and development, public utilities, and public accounting prior to joining Alamo Group in July of 2011.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span><br/></span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_16"></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 1A. Risk Factors</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">You should carefully consider each of the risks described below, together with all of the other information contained in this Annual Report on Form 10-K, before making an investment decision with respect to the Company&#8217;s securities. If any of the following risks develop into actual events, the Company&#8217;s business, financial condition or results from operations could be materially and adversely affected and you could lose all or part of your investment.</span></div><div style="text-indent:15pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Risks related to our business</span></div><div style="text-indent:11pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">A downturn in general economic conditions and outlook in the United States and around the world could adversely affect our net sales and earnings.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The strength and profitability of our business depends on the overall demand for our products and upon economic conditions and outlook, including but not limited to economic growth rates, consumer spending levels, financing availability, pricing and terms for our dealers and end-users, employment rates, interest rates, inflation, consumer confidence and general economic and political conditions and expectations in the United States and the </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:45pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">other economies in which we conduct business. Slow or negative growth rates, inflationary/deflationary pressures, higher commodity costs and energy prices, reduced credit availability or unfavorable credit terms for our dealers and end-user customers, increased unemployment rates, and recessionary economic conditions and outlook could cause consumers to reduce spending, which may cause them to delay or forgo purchases of our products and could have an adverse effect on our net sales and earnings. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Deterioration of industry conditions could harm our business, results of operations and financial condition.</span></div><div style="text-indent:11pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Our business depends to a large extent upon the prospects for the infrastructure maintenance, vegetation management and agricultural markets in general. Future prospects of the industry depend largely on factors outside of our control. Any of those factors could adversely impact demand for our products, which could adversely impact our business, results of operations and financial condition. These factors include the following:</span></div><div><span><br/></span></div><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: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">weakness in the worldwide economy;</span></div><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: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 price and availability of raw materials, purchased components and energy;</span></div><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: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">budget constraints and revenue shortfalls for our governmental customers;</span></div><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: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">changes in domestic and foreign governmental policies and laws, including increased levels of governmental regulation and associated liabilities;</span></div><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: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 levels of interest rates;</span></div><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: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 value of the U.S. dollar relative to the foreign currencies in countries where we sell our products but don&#8217;t have a manufacturing presence;</span></div><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: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">impact of tighter credit markets on the Company, its dealers and end-users;</span></div><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: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">impairment in the carrying value of goodwill; and</span></div><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: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">increase in unfunded pension plan liability due to financial market deterioration.</span></div><div style="text-indent:15pt"><span><br/></span></div><div style="text-indent:15pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, our business is susceptible to a number of factors that specifically affect agricultural customer spending patterns, including the following:</span></div><div><span><br/></span></div><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: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">animal disease outbreaks, epidemics and crop pests;</span></div><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: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">weather conditions, such as droughts, floods and snowstorms;</span></div><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: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">changes in farm incomes;</span></div><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: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">cattle and agricultural commodity prices;</span></div><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: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">changes in governmental agricultural policies worldwide;</span></div><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: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 level of worldwide farm output and demand for farm products; and</span></div><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: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">limits on agricultural imports/exports.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Our dependence on, and the price and availability of, raw materials as well as purchased components may adversely affect our business, results of operations and financial condition. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We purchase commodities, components, parts, accessories and other goods, such as steel, truck chassis, engines, transmissions, hydraulics, electrification components, and other items necessary for the manufacture of our end-products.  The lack of availability or the increased cost of these purchased materials and components due to supply chain disruptions, inflation, increased tariffs, and/or other uncontrollable events have negatively affected our business operations and profitability and may continue to do so in the future. Historically, we have mitigated commodity, component, parts, and other input cost increases, in part, by increasing prices on our products and executing on our strategic productivity initiatives. However, we may not be able to fully offset increased input costs in the future. If our price increases are not accepted by our customers and the market or we are not able to realize anticipated manufacturing efficiencies, our net sales, profit margins, earnings, and market share could be adversely affected.  Further, if we are unavailable to timely source items such as truck chassis, engines, hydraulics and other critical components our business, results of operations and financial condition may be adversely affected. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><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 may continue to materially and adversely affect our business, results of operations and financial condition.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:108%">The COVID-19 pandemic caused a significant downturn in our markets and subsequently caused significant market volatility and operational challenges, among other things.  The extent and duration of ongoing impacts stemming from the pandemic will depend on numerous factors, including:</span></div><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:45pt;width:100%"><div><span><br/></span></div></div><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: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">global governmental, business and individual actions taken in response to COVID-19;</span></div><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: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 effect on our suppliers and companies throughout our supply chain to meet supply commitments, requirements, and/or demands and our ability to continue to obtain commodities, components, parts, and accessories on a timely basis and at anticipated costs;</span></div><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: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 effect on our dealers, distributors, and other channel partners and customers, including reduced or constrained budgets and cash preservation efforts;</span></div><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: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 ability to fulfill existing and future sales order backlog;</span></div><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: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">potential effects the pandemic may have on our available labor force;</span></div><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: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">increasing logistics costs and transportation challenges;</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">While our markets appear to have recovered from the more direct negative impacts of the pandemic, the longer term effects of the pandemic, including supply chain disruptions, purchased component shortages, and inflationary pressures are unknown and could have a material adverse effect on our business, results of operations and financial results.  </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Skilled labor shortages or our inability to retain qualified employees could adversely affect our operations.  </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Our ability to maintain our productivity at competitive levels may be limited by our ability to employ, compensate, train and retain personnel necessary to meet our requirements. We may experience shortages of qualified personnel such as engineers, project managers, supervisors, and select skilled trades. We cannot be certain that we will be able to maintain an adequate skilled or unskilled labor force or key technical personnel necessary to operate efficiently and to support our growth strategy and operations. Shortages of skilled labor, such as welders and machine operators, are ongoing and could negatively affect our production capabilities, lead to production inefficiencies, or increase our cost of operating. Labor shortages or increased labor costs could impair our ability to operate our business, meet customer commitments or grow our revenues, and could materially and adversely impact our business, results of operations and financial results.</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">We depend on governmental sales, and a decrease in such sales could adversely affect our business, results of operations and financial condition.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A substantial portion of our revenues is derived from sales to federal, state, provincial and local governmental entities and related contractors, both in the U.S. and in other countries in which we sell our products. These sales depend primarily on the levels of budgeted and appropriated expenditures for highway, airport, roadside and parks maintenance by various governmental entities and are affected by changes in local and national economic conditions. Federal, state, provincial and local government budgets have been and will likely continue to be negatively affected by the COVID-19 pandemic and this could have a material negative impact on our business and financial condition.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Significant changes in trade policy and related trade wars could have a material adverse impact on our results of operations.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The U.S. has made significant changes in its trade policy and has taken certain actions that have adversely impacted U.S. trade and relationships with China and other trading partners, including imposing tariffs on certain goods imported into the U.S.  Any continued actions or further changes in U.S. trade policy could trigger additional retaliatory actions by affected countries, resulting in "trade wars." Trade wars may lead to reduced economic activity, increased costs, reduced demand and changes in purchasing behaviors for some or all of our products, or other potentially adverse economic outcomes. These or other consequences from any trade wars could have a material adverse impact on our sales volumes, prices and our consolidated financial results.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:45pt;width:100%"><div><span><br/></span></div></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Impairment in the carrying value of goodwill could negatively impact our consolidated results of operations and net worth.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has conducted for the last three years an analysis for estimating the fair value of the Company's business enterprise. We have utilized the discounted cash flow income approach and market approach for which we chose to heavily weigh more on the discounted cash flow approach. This analysis requires the Company to make significant assumptions and estimates about the extent and timing of future cash flows, discount rates and growth rates. The cash flows are estimated over a significant future period of time, which makes those estimates and assumptions subject to an even higher degree of uncertainty. The Company also utilizes market valuation models and other financial ratios, which require the Company to make certain assumptions and estimates regarding the applicability of those models to its assets and businesses. As of December&#160;31, 2022, goodwill was $195.9&#160;million, which represents 15% of total assets. </span></div><div style="text-indent:15pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recognized no goodwill impairment in 2022, 2021 or 2020. During the 2022 impairment analysis review, we performed a sensitivity analysis for goodwill impairment with respect to each of our reporting units and determined that a hypothetical 15% decline in the fair value of each reporting unit as of October&#160;1, 2022 would not result in an impairment of goodwill for any of the reporting units. If we were to have a significant goodwill impairment caused by a greater than 15% decline in fair value, it could impact our results of operations as well as our net worth. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">We are significantly dependent on information technology and our business may suffer from disruptions associated with information technology, cyber-attacks or other catastrophic losses affecting our IT infrastructure.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We rely on information technology networks and systems, including the Internet, to process, transmit, and store electronic and financial information, to manage a variety of business processes and activities, including our accounting and financial functions, and to comply with regulatory, legal, and tax requirements. We also depend on our information technology infrastructure for digital marketing activities and for electronic communications among our locations, personnel, customers, and suppliers. These information technology systems (some of which are provided and maintained by third parties) may be susceptible to damage, disruptions, or shutdowns due to hardware failures, computer viruses, hacker attacks, telecommunication failures, user errors, catastrophic events or other factors. In addition, a number of our salaried employees are working remotely at various times. This remote working environment may pose a heightened risk for security breaches or other disruptions of our information technology systems. If our information technology systems suffer severe damage, disruption or shutdown, and our business continuity plans do not effectively resolve the issues in a timely manner, we could experience business disruptions, a loss of critical company records, transaction errors, processing inefficiencies, and the loss of customers and sales, causing our product sales, financial condition, and operating results to be adversely affected and the reporting of our financial results to be delayed.</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, in the ordinary course of our business, we collect and store sensitive data, including our intellectual property, our proprietary business information and that of our customers, suppliers and business partners, and personally identifiable information or other sensitive information of our customers and employees. The secure use, processing, maintenance and transmission of this information is critical to our operations and business strategy.  Despite the information security measures we have taken, our information technology and infrastructure may be subjected to attacks by hackers or breached due to employee malfeasance, employee errors, or other disruptions. Cybersecurity threats and sophisticated computer crime pose a potential risk to the security of the Company&#8217;s  information technology systems, networks, and services, as well as the confidentiality and integrity of the Company&#8217;s data and intellectual property. Cyber-attacks, unauthorized access or security breaches, and other  cyber incidents could include, among other things, computer viruses, malicious or destructive code, ransomware,  social engineering attacks (including phishing and impersonation), hacking, denial-of-service attacks, and other similar attacks. These threats are constantly evolving, which increases the difficulty of defending against them or implementing adequate preventive measures. Sensitive information is also stored by our vendors and on the platforms and networks of third-party providers. Cyber-attacks on the Company, our vendors, or our third-party  providers could result in inappropriate access to our intellectual property, Company data, or personally identifiable  information of our global workforce, suppliers, or customers. Potential consequences of a successful cyber-attack  or other cybersecurity breach or incident include remediation costs, legal costs, increased cybersecurity protection  costs, lost revenues resulting from the unauthorized use of proprietary information or the failure to retain or attract customers following an attack, litigation and legal risks including governmental or regulatory enforcement actions, </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:45pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">increased insurance premiums, reputational damage that adversely affects customer or investor confidence, and damage to the Company&#8217;s competitiveness, stock price, and long-term shareholder value.  </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">While we have taken steps to address these risks by implementing enhanced security technologies, internal controls, and business continuity plans, these measures may not be adequate. We cannot assure that the steps we have taken will be sufficient to protect our systems, information or other property. Our systems and information may be vulnerable to theft, loss, damage and interruption from a number of potential threats and events.     </span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Changes in the regulatory environment regarding privacy and data protection regulations could have a material adverse impact on our results of operations.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Federal, state, provincial and local governments have been moving to adopt privacy rules and regulations that may impact us in the future.  In 2018, the EU adopted a comprehensive overhaul of its data protection regime in the form of the General Data Protection Regulation (&#8220;GDPR&#8221;) which  imposes a strict data protection compliance regime with severe penalties of 4% of worldwide turnover or &#8364;20.0 million, whichever is greater,  and includes new rights such as the right of erasure of personal data. Although the GDPR applies across the EU, as has been the case under the current data protection regime, EU Member States have some national derogations and local data protection authorities (&#8220;DPAs&#8221;) will still have the ability to interpret the GDPR, which has the potential to create inconsistencies on a country-by-country basis.   In addition, certain U.S. states have enacted privacy and data protection laws. For example, the State of California enacted the California Consumer Privacy Act ("CCPA") which became effective in 2020.  Implementation of, and compliance with, the GDPR, CCPA and other similar laws could increase our cost of doing business and/or force us to change our business practices in a manner adverse to our business.  In addition, violations of the GDPR, CCPA and other laws may result in significant fines, penalties and damage to our brand and business which could, individually or in the aggregate, materially harm our business and reputation.  Privacy legislation, enforcement and policy activity in this area continues to rapidly expand.  Compliance costs and costs related with implementing privacy-related and data protection measures could be significant.  Further, noncompliance could expose us to significant monetary penalties, damage to our reputation, and even possible criminal sanctions.  Even our inadvertent failure to comply with privacy-related or data protection laws and regulations could have a material adverse impact on our results of operations. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">We operate in a highly competitive industry, and some of our competitors and potential competitors have greater resources than we do.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our products are sold in highly competitive markets throughout the world. We compete with several large national and international companies that offer a broad range of equipment and replacement parts that compete with our products, as well as with numerous small, privately-held manufacturers and suppliers of a limited number of products mainly on a regional basis. Some of our competitors are significantly larger than we are and have substantially greater financial and other resources at their disposal. We believe that we are able to compete successfully in our markets by, to some extent, avoiding direct competition with significantly larger potential competitors. There can be no assurance that our competitors will not substantially increase the resources devoted to the development and marketing of products competitive with our products or that new competitors with greater resources will not enter our markets. Any failure to effectively compete could have an adverse effect on our business, results of operations and financial condition.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Failure to develop new products or keep pace with technological developments may have a material adverse impact on our results of operations</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our industry is affected by future technological developments. The introduction of new products or processes with innovative technologies could render our existing products or processes obsolete or unmarketable. Our success depends, to some extent, upon our ability to develop, market and sell cost-effective new products and applications that keep pace with technological developments in the markets we serve. We may not be successful in identifying, developing and marketing new products and applications or we may experience difficulties that could delay or prevent the successful development, introduction and marketing of such new products and applications, which could have a material adverse impact on our business and results of operations.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:45pt;width:100%"><div><span><br/></span></div></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">We operate and source internationally, which exposes us to the political, economic and other risks of doing business abroad.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have operations in a number of countries outside of the United States and we source raw materials and components globally. Our international operations are subject to the risks normally associated with conducting business in foreign countries, including but not limited to the following:</span></div><div style="padding-left:36pt"><span><br/></span></div><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: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">limitations on ownership and on repatriation of earnings;</span></div><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: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">import and export restrictions, tariffs and quotas;</span></div><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: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">potentially adverse effects including negative economic conditions resulting from war or the threat of war, including the ongoing war between Ukraine and Russia;</span></div><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: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">additional expenses relating to the difficulties and costs of staffing and managing international operations;</span></div><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: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">labor disputes and uncertain political and economic environments and the impact of foreign business cycles;</span></div><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: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">changes in laws or policies;</span></div><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: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">changes in any international trade agreements, such as any changes in European Union membership;</span></div><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: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">delays in obtaining or the inability to obtain necessary governmental permits;</span></div><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: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">potentially adverse consequences resulting from the applicability of foreign tax laws;</span></div><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: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">cultural differences;</span></div><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: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">increased expenses due to inflation;</span></div><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: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">weak economic conditions in foreign markets where our subsidiaries distribute their products;</span></div><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: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">changes in currency exchange rates;</span></div><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: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">disruptions in transportation and port authorities; and</span></div><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: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">regulations involving international freight shipments.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Operating in the international marketplace exposes us to a number of risks, including the need to comply with U.S. and foreign laws and regulations applicable to our foreign operations, including anti-corruption laws such as the Foreign Corrupt Practices Act and the U.K. Bribery Act, United States export control laws, and data privacy laws such as the European GDPR. The costs of compliance with these various laws, regulations and policies can be significant and penalties for noncompliance could significantly and adversely impact our business.  Our international operations may also be adversely affected by laws and policies affecting foreign trade, investment, taxation, and our ability to effectively source components and raw materials internationally. For example, any significant changes in U.S. trade policy, including the introduction of any new or expanded tariffs, could increase the cost of critical materials and supplies that we source internationally or negatively impact international sales of our products, which would have an adverse effect on our net sales and earnings.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;In addition, political developments and governmental regulations and policies in the countries in which we operate directly affect the demand for our products. For example, decreases or delays in farm subsidies to our agricultural customers, or changes in environmental policies aimed at limiting mowing activities, could adversely affect our business, results of operations and financial condition.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Our acquisition strategy may not be successful, which may adversely affect our business, results of operations and financial condition.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We intend to grow internally and through the acquisition of businesses and assets that will complement our current businesses. To date, a material portion of our growth has come through acquisitions. We cannot be certain that we will be able to identify attractive acquisition targets, obtain financing for acquisitions on satisfactory terms or successfully acquire identified targets. Competition for acquisition opportunities may also increase our costs of making acquisitions or prevent us from making certain acquisitions. These and other acquisition-related factors may adversely impact our business, results of operations and financial condition.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">We may not be able to realize the potential or strategic benefits of the acquisitions we complete, and the businesses we have acquired, or may acquire in the future, may not perform as expected.</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Acquisitions are an important part of our growth strategy and we have completed a number of acquisitions over the past several years. In 2019, we completed three acquisitions, namely Dutch Power, Dixie Chopper, and Morbark, and in 2021 we acquired Timberwolf.  Acquisitions can be difficult, time-consuming, and pose a number of risks, including:</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">21</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div><span><br/></span></div><div style="padding-left:54pt;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">potential negative impact on our earnings per share as a result of acquisition costs and related financing costs, among other things;</span></div><div style="padding-left:54pt;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 assumption of liabilities that are unknown to us at the time of closing;</span></div><div style="padding-left:54pt;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 of acquired products to achieve projected sales;</span></div><div style="padding-left:54pt;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">potential downward pressure on operating margins due to lower operating margins of acquired businesses, increased headcount costs and other expenses associated with adding and supporting new products;</span></div><div style="padding-left:54pt;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">disruption of ongoing business operations, including diversion of management&#8217;s attention and uncertainty for employees and customers, particularly during the post-acquisition integration process; and</span></div><div style="padding-left:54pt;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">potential negative impact on our relationships with customers, distributors and vendors. </span></div><div style="padding-left:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">If we do not manage these risks, the acquisitions that we complete may have an adverse effect on our business, our results of operations or financial condition.  In addition, we may not be successful in integrating acquired businesses into our existing operations and achieving projected synergies. We could face many risks in integrating acquired businesses, including but not limited to the following:</span></div><div><span><br/></span></div><div style="padding-left:54pt;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">we may incur substantial costs, delays or other operational or financial challenges in integrating acquired businesses, including integrating each company's accounting, information technology, human resource and other administrative systems to facilitate effective management;</span></div><div style="padding-left:54pt;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">we may be unable to achieve expected cost reductions, to take advantage of cross-selling opportunities, or to eliminate redundant operations, facilities and systems;</span></div><div style="padding-left:54pt;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">We may encounter problems in integrating the acquired products with our existing and/or new products;</span></div><div style="padding-left:54pt;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">we may need to implement or improve controls, procedures and policies appropriate for a public company which could take a significant amount of time and expense;</span></div><div style="padding-left:54pt;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">acquisitions may divert our management&#8217;s attention from the operation of our existing businesses;</span></div><div style="padding-left:54pt;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">we may not be able to retain key personnel of acquired businesses;</span></div><div style="padding-left:54pt;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">there may be cultural challenges associated with integrating management and employees from the acquired businesses into our organization; and</span></div><div style="padding-left:54pt;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">we may encounter unanticipated events, circumstances and legal risk and associated liabilities.</span></div><div><span><br/></span></div><div style="text-indent:17pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Our integration of acquired businesses requires significant efforts from the management of each entity, including coordinating existing business plans and research and development efforts. Integrating operations may distract management&#8217;s attention from the day-to-day operation of the combined companies. Ultimately, our attempts to integrate the operations, technology and personnel of acquired businesses may not be successful. If we are unable to successfully integrate acquired businesses, our future results may be negatively impacted.</span></div><div style="text-indent:17pt"><span><br/></span></div><div style="text-indent:17pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">The agricultural industry and the infrastructure maintenance industry are seasonal, and seasonal fluctuations may cause our results of operations and working capital to fluctuate from quarter to quarter.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In general, agricultural and governmental end-users typically purchase new equipment during the first and second calendar quarters. Other products such as street sweepers, excavators, snow removal equipment, front-end loaders and pothole patchers have different seasonal patterns, as do replacement parts in general. In attempting to achieve efficient utilization of manpower and facilities throughout the year, we estimate seasonal demand months in advance and manufacturing capacity is scheduled in anticipation of such demand. We utilize an annual plan with updated quarterly sales forecasts provided by our marketing divisions and order backlog in order to develop a production plan for our manufacturing facilities. In addition, many of our marketing departments attempt to equalize demand for their products throughout the calendar year by offering seasonal sales programs which may provide additional incentives, including discounts and extended payment terms, on equipment that is ordered during off-season periods. Because we spread our production and wholesale shipments throughout the year to take into account the factors described above, sales in any given period may not reflect the timing of dealer orders and retail demand.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:17pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Weather conditions and general economic conditions may affect the timing of purchases and actual industry conditions might differ from our forecasts.  In addition to seasonal factors, the agricultural industry is cyclical in nature with sales largely dependent on the state of the farm economy and, in particular, agriculture commodity </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">22</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">prices and farm income. Consequently, sudden or significant declines in industry demand could adversely affect our working capital or results of operations. </span></div><div style="text-indent:17pt"><span><br/></span></div><div style="text-indent:17pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Extreme weather conditions may impact demand for some of our products and impact our business, results of operations and financial condition.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Extreme weather conditions such as droughts or flooding may adversely affect sales of some of our products including our mowing equipment and other agricultural equipment and related parts.  Milder winter conditions with lower snowfall accumulations can have an adverse impact on sales of our snow removal equipment and related parts business in the key markets we serve. In the event unfavorable weather conditions are worsened as a result of global climate change, our business may be adversely affected to a more significant extent.</span></div><div style="text-indent:17pt"><span><br/></span></div><div style="text-indent:17pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Our business and operations are subject to risks related to climate change.</span></div><div style="text-indent:17pt"><span><br/></span></div><div style="text-indent:17pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The long-term effects of global climate change present both physical risks (such as weather catastrophes) and transition risks (such as regulatory changes), which are expected to be widespread and unpredictable. Unusual weather conditions, including drought and flood conditions may affect the purchasing decisions of some of  our customers, particularly customers of our agriculture products which could lead to lower sales volumes of those products.  In addition, changes in climate could affect the availability and cost of products, commodities and energy, which may impact our ability to procure goods or services required for the operation of our business at the quantities and levels we require.  Our facilities may also be directly impacted by significant weather events brought on by climate change, and we face the risk of losses incurred as a result of physical damage to our facilities, loss or spoilage of inventory and business interruption caused by such events.  New legal and regulatory requirements have been, and may continue to be, implemented to address the concern over climate change in an effort to reduce or mitigate the effects of it, and such regulatory requirements dealing with the environmental aspects of our operations and the products we manufacture could result in significant expenditures in upgrading our facilities and/or designing and manufacturing new forms of equipment that satisfy such requirements.  We cannot currently predict the specific terms of any new climate change legislation or regulation, but any such new legislation or regulation may have a material adverse impact on our business, results of operations, or financial condition.</span></div><div style="text-indent:17pt"><span><br/></span></div><div style="text-indent:17pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">If we do not retain key personnel and attract and retain other highly skilled employees, our business may suffer.</span></div><div style="text-indent:17pt"><span><br/></span></div><div style="text-indent:17pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our continued success will depend on, among other things, the efforts and skills of our executive officers, including our president and chief executive officer, and our ability to attract and retain additional highly qualified managerial, technical, manufacturing, and sales and marketing personnel. We do not maintain &#8220;key man&#8221; life insurance for any of our employees, and all of our senior management are employed at will. We cannot assure you that we will be able to attract and hire suitable replacements for any of our key employees. We believe the loss of a key executive officer or other key employee could have an adverse effect on our business, results of operations, and financial condition.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Increasingly stringent engine emission regulations could impact our ability to sell certain of our products into the market and appropriately price certain of our products, which could negatively affect our competitive position and financial results.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The products we manufacture or sell, particularly engines, are subject to increasingly stringent environmental emission regulations. For instance, the EPA has adopted increasingly stringent engine emission regulations, including Tier 4 emission requirements applicable to diesel engines in specified horsepower ranges that are used in some of our products. Requirements have expanded to additional horsepower categories and, accordingly, apply to more of the products we sell. Our ability to meet the Tier 4 requirements is subject to many variables, some of which are beyond our direct control. If we fail to meet the Tier 4 requirements and any other EPA emission standards that are currently in place or that may be introduced in the future, our ability to sell our products into the market may be limited, which could have a material adverse effect on our competitive position and financial results.  </span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">We are subject to environmental, health and safety and employment laws and regulations and related compliance expenditures and liabilities.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Like other manufacturers, the Company is subject to a broad range of federal, state, local and foreign laws and requirements, including those concerning air emissions, discharges into waterways, and the generation, handling, </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">23</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">storage, transportation, treatment and disposal of hazardous substances and waste materials, as well as the remediation of contamination associated with releases of hazardous substances at the Company&#8217;s facilities and offsite disposal locations, workplace safety and equal employment opportunities. These laws and regulations are constantly changing, and it is impossible to predict with accuracy the effect that changes to such laws and regulations may have on the Company in the future. Like other industrial concerns, the Company&#8217;s manufacturing operations entail the risk of noncompliance, and there can be no assurance that the Company will not incur material costs or other liabilities as a result thereof.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Changes in environmental laws or new laws relating to the emission of greenhouse gases ("GHG") or the emission of other gases may cause us to make additional investment in new product designs or could increase our environmental compliance expenditures. The regulation of GHG emissions could result in other additional costs to the Company in the form of tax or emissions allowances, facility improvement costs, and higher input costs.  Increased input costs and other costs associated with GHG emissions regulation and related compliance may also negatively impact customer demand. Because the timing and extent of GHG emission regulations or climate change regulations are unknown at this time, we are unable to predict the impact this may have on our overall business.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company is subject to various other federal, state, and local laws affecting its business, as well as a variety of regulations relating to such matters as working conditions, equal employment opportunities, and product safety. A variety of state laws regulate the Company&#8217;s contractual relationships with its dealers, some of which impose restrictive standards on the relationship between the Company and its dealers, including events of default, grounds for termination, non-renewal of dealer contracts, and equipment repurchase requirements. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">We are subject on an ongoing basis to the risk of product liability claims and other litigation arising in the ordinary course of business.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Like other manufacturers, we are subject to various claims, including product liability claims, arising in the ordinary course of business, and we are a party to various legal proceedings that constitute routine litigation incidental to our business. We may be exposed to product liability claims in the event that the use of our products results, or is alleged to result, in bodily injury, property damage, or both. We cannot assure you that we will not experience any material product liability losses in the future or that we will not incur significant costs to defend the Company against such claims. We cannot assure you that our product liability insurance coverage will be adequate for any liabilities that may ultimately be incurred or that it will continue to be available on terms acceptable to us. A successful claim brought against us in excess of available insurance coverage or a requirement to participate in a product recall may have a materially adverse effect on our business.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">If we are unable to comply with the terms of our credit arrangements, especially the financial covenants, our credit arrangements could be terminated.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We cannot assure you that we will be able to comply with all of the terms of our credit arrangements, especially the financial covenants. Our ability to comply with such terms depends on the success of our business and our operating results. Various risks, uncertainties, and events beyond our control could affect our ability to comply with the terms of our credit arrangements. If we were out of compliance with any covenant required by our credit arrangements following any applicable cure periods, the banks could terminate their commitments unless we could negotiate a covenant waiver. The banks could condition such waiver on amendments to the terms of our credit arrangements that may be unfavorable to us, including a potential increase to the interest rate we currently pay on outstanding debt under our credit arrangements, which could adversely affect our operating results.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Fluctuations in currency exchange rates may adversely affect our financial results.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our earnings are affected by fluctuations in the value of the U.S. dollar as compared to foreign currencies, predominantly in European countries, Canada and Australia, as a result of the sale of our products in international markets. While we do enter into foreign exchange contracts to protect against such fluctuations to an extent (primarily in the U.K. market), we cannot assure you that we will be able to effectively manage these risks. </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:45pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Significant long-term fluctuations in relative currency values, such as a devaluation of the Euro against the U.S. dollar, could have an adverse effect on our future results of operations or financial condition.</span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Risks related to investing in our common stock</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Because the price of our common stock may fluctuate significantly, it may be difficult for you to resell our common stock when desired or at attractive prices.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The trading price of our common stock has and may continue to fluctuate. The closing prices of our common stock on the New York Stock Exchange during 2022 ranged from $109.83 to $159.75 per share, and during 2021 from $136.01 to $164.81 per share. Our stock price may fluctuate in response to the risk factors set forth herein and to a number of events and factors, such as quarterly variations in operating and financial results, litigation, changes in financial estimates and recommendations by securities analysts, the operating and stock performance of other companies that investors may deem comparable to us, news reports relating to us or trends in our industry or general economic conditions. The stock price volatility and trading volume may make it difficult for you to resell your shares of our common stock when desired or at attractive prices.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">You may experience dilution of your ownership interests due to the future issuance of additional shares of our common stock.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We may issue shares of our previously authorized and unissued securities, which will result in the dilution of the ownership interests of our present stockholders. We are currently authorized to issue 20,000,000 shares of common stock. On December&#160;31, 2022, 11,968,197 shares of our common stock were issued and outstanding, and there were outstanding options and restricted stock awards totaling an additional 183,277 shares of our common stock. We also have additional shares available for grant under our 2015 Incentive Stock Option Plan and our 2019 Equity Incentive Plan. Additional stock option or other compensation plans or amendments to existing plans for employees and directors may be adopted. Issuance of these shares of common stock may dilute the ownership interests of our then existing stockholders. We may also issue additional shares of our common stock in connection with the hiring of personnel, future acquisitions, such as the 1,700,000 shares issued as consideration for the acquisition of </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Bush Hog </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">in 2009, future private placements of our securities for capital raising purposes, or for other business purposes. This would further dilute the interests of our existing stockholders.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">There is no assurance that we will continue declaring dividends or have the available cash to make dividend payments.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> On January&#160;3, 2023, the Board of Directors of the Company increased its quarterly dividend from $0.18 per share to $0.22 per share. Although we have paid a cash dividend in each quarter since becoming a public company in 1993, there can be no assurance that we will continue to declare dividends or that funds will continue to be available for this purpose in the future. The declaration and payment of dividends are restricted by the terms of our credit facility, are subject to the discretion of our Board of Directors, are not cumulative, and will depend upon our profitability, financial condition, capital needs, future prospects, and other factors deemed relevant by our Board of Directors.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Provisions of our corporate documents may have anti-takeover effects that could prevent a change in control.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Provisions of our charter, bylaws and Delaware law could make it more difficult for a third party to acquire us, even if doing so would be beneficial to our stockholders. These provisions include prohibiting stockholders from calling stockholder meetings and prohibiting stockholder actions by written consent. Our Certificate of Incorporation and Bylaws state that any amendment to certain provisions, including those provisions regarding limitations on action by written consent discussed above, be approved by the holders of at least two-thirds of our common stock. We are also afforded the protections of Section 203 of the Delaware General Corporation Law, which would prevent us from engaging in a business combination with a person who becomes a 15% or greater stockholder for a period of three years from the date such person acquired such status unless certain board or stockholder approvals were obtained.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:45pt;width:100%"><div><span><br/></span></div></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Future sales, or the possibility of future sales, of a substantial amount of our common stock may depress the price of the shares of our common stock.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Future sales, or the availability for sale in the public market, of substantial amounts of our common stock could adversely affect the prevailing market price of our common stock and could impair our ability to raise capital through future sales of equity securities. If we or our existing stockholders sell substantial amounts of our common stock in the public market, or if there is a perception that these sales may occur, the market price of our common stock could decline.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:16pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"> Certain stockholders own a significant amount of our common stock, and their interests may conflict with those of our other stockholders.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, six investors - BlackRock, Inc., Henry Crown and Company, Dimensional Fund Advisors LP, T. Rowe Price Associates, Inc., Victory Capital Management Inc., and The Vanguard Group - beneficially owned approximately 50% of our outstanding common stock. As a result, the major stockholders combined could be able to significantly influence the direction of the Company, the election of our Board of Directors, and the outcome of any other matter requiring stockholder approval, including mergers, consolidations and the sale of all or substantially all of our assets, and together with other beneficially owned investors, to prevent or cause a change in control of the Company. Also, pursuant to contractual obligations, affiliates of Henry Crown and Company were entitled to certain rights with respect to the registration of the common stock owned by them under the Securities Act. Pursuant</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;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%">to such registration rights, on March 12, 2012, we filed a registration statement related to the common stock owned by such entities and such registration statement was declared effective by the SEC. The interests of the major stockholders may conflict with the interests of our other stockholders. </span></div><div><span><br/></span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_19"></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 1B. Unresolved Staff Comments&#160;</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company has no unresolved staff comments to report pursuant to Item 1B.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">26</span></div></div></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_22"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 2. Properties</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;&#160;&#160;&#160;&#160;</span><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 utilized twenty-eight principal manufacturing plants with sixteen located in the United States, eight in Europe, three in Canada, and one in Brazil. The facilities are listed below:</span><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:26.172%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.043%"></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:1.0%"></td><td style="width:49.928%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" 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:9pt;font-weight:700;line-height:100%;text-decoration:underline">Facility</span></div></td><td colspan="3" 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:9pt;font-weight:700;line-height:100%;text-decoration:underline">Square</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline">Footage</span></div></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:400;line-height:100%">&#160;</span></td><td colspan="3" 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:9pt;font-weight:700;line-height:100%;text-decoration:underline">Principal Types of Products</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline">Manufactured And Assembled</span></div></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Winn, Michigan*</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,100,000&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Tree chippers, Grinders, Brush Cutters, and Debarkers for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Morbark</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></div></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:8pt;font-weight:400;line-height:100%">Selma, Alabama*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">769,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><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:8pt;font-weight:400;line-height:100%">Mechanical Rotary Mowers, Finishing Mowers, Backhoes, Front-End Loaders for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Bush Hog</span></div></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">New Philadelphia, Ohio*</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">430,000&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Telescopic Excavators for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Gradall</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> and Vacuum Trucks for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">VacAll</span></div></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:8pt;font-weight:400;line-height:100%">Wooster, Ohio*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">400,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Leased</span></td><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:8pt;font-weight:400;line-height:100%">Stump Cutters, Aerial Trimmers, Mulchers, Crawler Trucks for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Rayco </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">and</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"> Denis Cimaf</span></div></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Gibson City, Illinois*</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">275,000&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Mechanical Mowers, Zero Turn Radius Mowers, Blades, Deep Tillage Equipment, and other implements for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Rhino</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">, </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Bush</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Hog</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> and OEMs</span></div></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></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:8pt;font-weight:400;line-height:100%">Seguin, Texas*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">230,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><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:8pt;font-weight:400;line-height:100%">Hydraulic and Mechanical Rotary and Flail Mowers, Sickle-Bar Mowers, and Boom-Mounted Equipment for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Alamo Industrial</span></div></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Indianola, Iowa*</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">200,000&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Distribution and Manufacturing of Aftermarket Farm Equipment Replacement and Wear Parts for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Herschel/Valu-Bilt</span></div></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:8pt;font-weight:400;line-height:100%">Richmond, Virginia*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">197,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Leased</span></td><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:8pt;font-weight:400;line-height:100%">Leaf Collection Equipment and Street Sweeper Replacement Brooms for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">ODB</span></div></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Neuville, France*</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">195,000&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hydraulic and Mechanical Boom-Mounted Hedge and Grass Cutters for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Rousseau</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> and </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">SMA</span></div></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:8pt;font-weight:400;line-height:100%">Mukwonago, Wisconsin* </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">171,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><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:8pt;font-weight:400;line-height:100%">Truck-Mounted Vacuum Trucks for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Super Products</span></div></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Ludlow, England*</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">160,000&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hydraulic Boom-Mounted Hedge and Grass Cutters and other Equipment for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">McConnel</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> and </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Twose</span></div></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:8pt;font-weight:400;line-height:100%">Salford Priors, England*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">157,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><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:8pt;font-weight:400;line-height:100%">Tractor-Mounted Power Arm Flails and other Equipment for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Bomford</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> and </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Twose</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> and </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Spearhead</span></div></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Sao Joao da Boa Vista, Brazil*</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">138,000&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Mowing Equipment, Sugar Cane Trailers and other equipment for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Santa Izabel</span></div></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:8pt;font-weight:400;line-height:100%">Huntsville, Alabama*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">135,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><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:8pt;font-weight:400;line-height:100%">Air and Mechanical Street Sweeping Equipment for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Schwarze</span></div></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">New Berlin, Wisconsin*</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">120,000&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Municipal Snow Removal and Ice Control Equipment for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Wausau</span></div></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:8pt;font-weight:400;line-height:100%">Middelburg, the Netherlands*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">110,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><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:8pt;font-weight:400;line-height:100%">Boom Mowers, Flail Mowers and Stump Grinders for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Dutch Power</span></div></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Englefeld, Saskatchewan, Canada*</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">105,000&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Mechanical Rotary Mowers, Snow Blowers, and Rock Removal Equipment for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Schulte</span></div></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:8pt;font-weight:400;line-height:100%">St. Valerien, Quebec, Canada*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><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:8pt;font-weight:400;line-height:100%">Snow and Ice Removal Equipment for</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"> Tenco</span></div></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Daumeray, France*</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100,000&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Vacuum Trucks, High Pressure Cleaning Systems and Trenchers for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Rivard</span></div></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:8pt;font-weight:400;line-height:100%">Leavenworth, Kansas*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">72,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><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:8pt;font-weight:400;line-height:100%">Snow Plows and Heavy-Duty Snow Removal Equipment for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Henke</span></div></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Giessen, the Netherlands*</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">70,000&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Aquatic Harvesting Boats and Remote Control Mowing Equipment for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Alamo Group The Netherlands</span></div></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:8pt;font-weight:400;line-height:100%">Sioux Falls, South Dakota*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">66,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><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:8pt;font-weight:400;line-height:100%">Hydraulic and Mechanical Mowing Equipment for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Tiger</span></div></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Hopkinton, New Hampshire*</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">55,000&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Distributor of Public Works and Runway Maintenance Products for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">H.P. Fairfield</span></div></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:8pt;font-weight:400;line-height:100%">Skowhegan, Maine*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">47,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><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:8pt;font-weight:400;line-height:100%">Distributor of Public Works and Runway Maintenance Products for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">H.P. Fairfield</span></div></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Kent, Washington*</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">43,000&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Truck-Mounted Sweeping Equipment for the contractor market branded </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">NiteHawk</span></div></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:8pt;font-weight:400;line-height:100%">Ayer's Cliff, Quebec, Canada*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">41,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><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:8pt;font-weight:400;line-height:100%">Municipal Snow Removal and Ice Control Equipment for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Everest</span></div></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></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Suffolk, England*</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">35,000&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Leased</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Commercial wood chippers and other forestry equipment for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Timberwolf</span></div></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:8pt;font-weight:400;line-height:100%">Peschadoires, France*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">22,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></td><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:8pt;font-weight:400;line-height:100%">Replacement Parts for Blades, Knives and Shackles for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Forges Gorce</span></div></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Oakey, Australia</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">18,000&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Leased</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Agriculture Mowing Equipment and other Attachments for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Fieldquip</span></div></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:8pt;font-weight:400;line-height:100%">Matao, Brazil</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">12,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Owned</span></div></td><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:8pt;font-weight:400;line-height:100%">Agriculture Mowing Equipment and other Attachments for </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">Herder</span></div></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Installation &amp; Rental Facilities, Warehouses &amp; Sales</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">585,000&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Leased / Owned</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Services Parts Distribution, Installation Facilities and Sales and After Market Office</span></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:8pt;font-weight:400;line-height:100%">Offices, Seguin, Texas</span></td><td colspan="2" style="background-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%">21,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></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:8pt;font-weight:400;line-height:100%">Owned</span></td><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:8pt;font-weight:400;line-height:100%">Corporate Office</span></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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:400;line-height:100%">6,179,000&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#def3c0;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">80%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;&#160;* Principal manufacturing plants</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:'Times New Roman',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><br/></span></div></div><div style="text-indent:13.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Approximately</span><span style="color:#ff0000;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%">80% of the manufacturing, warehouse and office space is owned.  The Company considers each of these facilities to be well maintained, in good operating condition and adequate for its present level of operations. </span></div><div style="text-indent:13.5pt"><span><br/></span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_25"></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 3. Legal Proceedings</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company is subject to various legal actions which have arisen in the ordinary course of its business.  The most prevalent of such actions relate to product liability, which is generally covered by insurance after various self-insured retention amounts. While amounts claimed might be substantial and the ultimate liability with respect to such litigation cannot be determined at this time, the Company believes that the ultimate outcome of these matters will not have a material adverse effect on the Company&#8217;s consolidated financial position or results of operations; however, the ultimate resolution cannot be determined at this time.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">  </span></div><div style="text-indent:18pt"><span><br/></span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_28"></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 4. Mine Safety Disclosures</span></div><div><span><br/></span></div><div style="text-indent:18pt"><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="i51762c1e0d7f47aeb6d24f3a0d19ea64_31"></div><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PART II</span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_34"></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%">Item 5. Market for Registrant&#8217;s Common Equity, Related Stockholder Matters and Issuer Purchases of Equity Securities</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company&#8217;s common stock trades on the New York Stock Exchange under the symbol: ALG.  On February&#160;17, 2023, there were 11,971,477 shares of common stock outstanding, held by approximately 78 holders of record, but the total number of beneficial owners of the Company&#8217;s common stock exceeds this number. On February&#160;17, 2023, the closing price of the common stock on the New York Stock Exchange was $163.16 per share.</span></div><div style="text-indent:15pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> On January&#160;3, 2023, the Board of Directors of the Company declared a quarterly dividend of $0.22 per share which was paid on February&#160;1, 2023 to holders of record as of January&#160;18, 2023. The Company expects to continue its policy of paying regular cash dividends, although there is no assurance as to future dividends as they depend on future earnings, capital requirements and financial condition. In addition, the payment of dividends is subject to restrictions under the Company&#8217;s bank revolving credit agreement. See &#8220;Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations - Liquidity and Capital Resources&#8221; in </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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_46">Item 7</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> of Part II of this Annual Report on Form 10</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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%">K for a further description of the bank revolving credit agreement.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Information relating to compensation plans under which equity securities of the Company are authorized for issuance is set forth in Part III, </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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_76">Item 12</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:'Times New Roman',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><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Stock Price Performance Graph</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The information contained in this Stock Performance Graph section shall not be deemed to be &#8220;soliciting material&#8221; or &#8220;filed&#8221; with the SEC or subject to the liabilities of Section 18 of the Exchange Act, except to the extent that Alamo Group Inc. specifically incorporates it by reference into a document filed under the Securities Act or the Exchange Act.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following graph and table set forth the cumulative total return to the Company's stockholders of our Common Stock&#160;during a five-year period ended December&#160;31, 2022, as well as the performance of an overall stock market index (the S&amp;P SmallCap 600 Index).</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, the Company has changed its peer group index and has selected the S&amp;P Industrials Index as its published industry or line-of-business index, replacing the Russell 2000 Index used in prior years, as the Company believes the S&amp;P industrials Index represents a more appropriate peer group. The cumulative return of the Russell 2000 Index is presented in the graph below as required by Item 201(e)(4) of Regulation S-K.  </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><img src="alg-20221231_g1.jpg" alt="alg-20221231_g1.jpg" style="height:420px;margin-bottom:5pt;vertical-align:text-bottom;width:650px"/></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:72.076%"><tr><td style="width:1.0%"></td><td style="width:98.900%"></td><td style="width:0.1%"></td></tr><tr><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:8pt;font-weight:400;line-height:100%">*$100 invested on 12/31/17 in stock or index, including reinvestment of dividends.</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:8pt;font-weight:400;line-height:100%">Fiscal year ending December 31.</span></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"></td></tr><tr><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:8pt;font-weight:400;line-height:100%">Copyright&#169; 2023 Standard &amp; Poor's, a division of S&amp;P Global. All rights reserved.</span></div></td></tr><tr><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:8pt;font-weight:400;line-height:100%">Copyright&#169; 2023 Russell Investment Group. All rights reserved.</span></div></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:19.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:11.473%"></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.473%"></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.473%"></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.473%"></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.473%"></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.480%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="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:9pt;font-weight:700;line-height:100%">&#160;</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%">12/17</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%">12/18</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%">12/19</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%">12/20</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%">12/21</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%">12/22</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:700;line-height:100%">Alamo Group Inc.</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">100.00</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">68.81</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">112.28</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">123.97</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">132.76</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">128.40</span></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:9pt;font-weight:700;line-height:100%">S&amp;P SmallCap 600</span></div></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:9pt;font-weight:700;line-height:100%">100.00</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:9pt;font-weight:700;line-height:100%">91.52</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:9pt;font-weight:700;line-height:100%">112.37</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:9pt;font-weight:700;line-height:100%">125.05</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:9pt;font-weight:700;line-height:100%">158.59</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:9pt;font-weight:700;line-height:100%">133.06</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Russell 2000</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">100.00</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">88.99</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">111.70</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">134.00</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">153.85</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">122.41</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:9pt;font-weight:700;line-height:100%">S&amp;P Industrials</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:9pt;font-weight:700;line-height:100%">100.00</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:9pt;font-weight:700;line-height:100%">86.71</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:9pt;font-weight:700;line-height:100%">112.17</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:9pt;font-weight:700;line-height:100%">124.59</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:9pt;font-weight:700;line-height:100%">150.89</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:9pt;font-weight:700;line-height:100%">142.63</span></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="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:'Times New Roman',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><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Purchase of Equity Securities</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company has suspended its share repurchase program but the program may be reinstated in the future.</span></div><div style="text-indent:18pt"><span><br/></span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_43"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 6. Reserved</span></div><div style="text-align:justify"><span><br/></span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_46"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 7. Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</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-style:italic;font-weight:700;line-height:120%">Executive Summary and Outlook</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">This re</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">port contains forward-looking statements that are based on Alamo Group&#8217;s current expectations.&#160;Actual results in future periods may differ materially from those expressed or implied because of a number of risks and uncertainties which are discussed below and in the Forward-Looking Information section beginning on page 14.</span></div><div style="padding-left:36pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We experienced strong demand for our products in 2022 which led to record net sales for the full year.  </span><span style="color:#262626;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our markets continue to exhibit strength and we currently see do not anticipate a significant reduction in customer demand, at least in the near term.  However, many of the same adverse operating conditions that we experienced in 2022 including, among other things, supply chain disruptions, input cost inflation, and labor shortages continue to present challenges to our business.  Supply chain and labor issues have led to disruptions in our manufacturing facilities which constrain our operating efficiencies and negatively impact our overall profitability.  These challenges are also partially responsible for our record high backlog levels, as we have struggled to fully complete and ship products in a timely manner.  While our supply chain appears to be gradually improving, we expect that some or all of these adverse operating conditions will persist for at least a portion of 2023.   </span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">2022 Performance</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2022, the Company's net sales increased by 13% and net income increased by 27% compared to 2021.  The increase in both net sales and net income was primarily due to a strong demand for our products.  Margins improved due to the increase in demand along with pricing actions we began in 2021 which helped mitigate inflation cost pressures.  However, our results were constrained by higher input costs, ongoing supply chain disruptions, and skilled labor shortages.  </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's Vegetation Management Division experienced a 15% increase in net sales for the full year of 2022 compared to the full year of 2021. The increase in net sales was primarily due to continued strong customer demand for our products and positive pricing actions. The division's income from operations for 2022 was up 37% versus the full year of 2021, due to improved sales and positive pricing actions but offset by higher input costs and operational inefficiencies due to supply chain disruptions and labor constraints. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's Industrial Equipment Division net sales were up 11% for the full year of 2022 compared to the full year of 2021.  The division's net sales were strong in the excavator and vacuum truck product lines and were also supported by moderate sales increases in our street sweeper, debris collector and snow removal equipment lines.  Negatively impacting this division were higher input costs and supply chain disruptions including, most significantly, a shortage of truck chassis.  These adverse conditions had a negative impact on the division's income from operations, which for the full year of 2022 was up only 5% compared to the full year of 2021.    </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated income from operations was $148.6 million for the full year of 2022 compared to $116.9 million in 2021, an increase of 27%.  The Company's backlog increased 26% to $1.0 billion at the end of 2022 versus the backlog of $800.8 million at the end of 2021. The increase in the Company's backlog was primarily attributable to continued strong customer demand for our products in both of the Company's divisions as outlined above.  </span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Inflationary Impacts</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2022, the cost of commodities, components, parts, and accessories was significantly higher compared to the cost of those items purchased in 2021, mainly as a result of ongoing upward inflationary pressure. In 2023, we anticipate that the average cost of commodities, components, parts, and accessories will be slightly higher than the average costs experienced during 2022 but the rate of inflation appears to be moderating.  Any material worsening of the current inflationary environment could lead to higher input costs which is likely to have a material adverse effect on our business and financial results.</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:'Times New Roman',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><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Impact of the War in Ukraine</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2022, we discontinued sales into the Russian and Belarusian markets as a response to the war in Ukraine. Our sales in those markets represented an insignificant share of our overall international business and, accordingly, this decision did not have a material impact on our 2022 results nor do we expect it to have a material impact on our future financial results.  The war has disrupted parts of our supply chain and has created additional inflationary pressure on some of the items we purchase for our end-products, but we do not believe these effects are material to our business.  However, any significant change in or escalation of the war in Ukraine could result in unanticipated effects which may adversely impact our business.</span></div><div><span><br/></span></div><div style="margin-bottom:10pt;text-indent:15pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">The following discussion should be read in conjunction with the consolidated financial statements of the Company and the notes thereto included elsewhere in this Annual Report on Form 10-K.</span></div><div style="margin-bottom:10pt;text-indent:13.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The following tables set forth, for the periods indicated, certain financial data:</span><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:54.601%"></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.595%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.139%"></td><td style="width:0.1%"></td><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:3.139%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.601%"></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:'Times New Roman',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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fiscal Year Ended December 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:9pt;font-weight:400;line-height:100%">Net sales (data in thousands):</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%">2022</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%">2021</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%">2020</span></td></tr><tr style="height:6pt"><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;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:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Vegetation Management</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">937,065&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">812,676&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">654,630&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Industrial Equipment</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">576,551&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">521,547&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">508,836&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Total net sales</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,513,616&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,334,223&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,163,466&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr style="height:15pt"><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost and profit margins, as percentages of net sales:</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',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:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',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:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr style="height:7pt"><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><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of sales</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">75.1&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">74.9&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">74.8&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24.9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">25.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">25.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Selling, general, administrative, and amortization expenses</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15.1&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16.3&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17.1&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income from operations</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9.8&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.8&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income before income taxes</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.9&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.2&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6.9&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6.7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#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:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Results of Operations</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Fiscal 2022 compared to Fiscal 2021 </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s net sales in the fiscal year ended December&#160;31, 2022 (&#8220;2022&#8221;) were $1,513.6&#160;million, an increase of $179.4&#160;million or 13.4% compared to $1,334.2&#160;million for the fiscal year ended December&#160;31, 2021 (&#8220;2021&#8221;). The increase in sales was attributable to continued strong customer demand for our products in both the Vegetation Management and Industrial Equipment Divisions and improved pricing.  Negatively impacting net sales were higher costs for materials and inbound freight, supply chain disruptions and a shortage of skilled labor. Also, currency translation negatively affected sales as the U.S. dollar strengthened against the currencies of international countries where we operate. </span></div><div style="text-indent:36pt"><span><br/></span></div><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:120%">Net Vegetation Management sales were $937.1&#160;million in 2022 compared to $812.7&#160;million in 2021, an increase of $124.4&#160;million or 15.3%, coming from a strong performance in all product lines, particularly forestry and tree care and agricultural and governmental mowing equipment in both North America and Europe.  Supply chain disruptions, labor constraints and unfavorable input cost changes constrained this Division during 2022.  Currency translation effects also negatively impacted net sales in this division.</span></div><div style="padding-left:36pt;text-indent:18pt"><span><br/></span></div><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:120%">Net Industrial Equipment sales were $576.6&#160;million in 2022 compared to $521.5&#160;million in 2021, representing an increase of $55.1&#160;million or 10.5%. The increase was mainly due to continued solid results in our excavator and vacuum truck product lines with modest support from other product lines.  This division was also negatively impacted by ongoing supply chain disruptions and logistics issues in 2022, including delays in receiving truck chassis and component parts from supply chain partners.</span></div><div style="padding-left:36pt;text-indent:18pt"><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:'Times New Roman',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><br/></span></div></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gross profit for 2022 was $376.5&#160;million (24.9% of net sales) compared to $334.5&#160;million (25.1% of net sales) in 2021, an increase of $42.0&#160;million. The increase in gross profit was mainly attributable to higher sales volume during  2022 compared to 2021 as well as improved pricing.  Profitability was negatively impacted by supply chain disruptions, shortages of component parts, along with higher costs of materials and inbound freight.  These factors led to lower profitability as a percentage of sales in 2022 as compared to the same period in 2021. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Selling, general and administrative expenses (&#8220;SG&amp;A&#8221;) were $212.6&#160;million (14.0% of net sales) in 2022 compared to $202.9&#160;million (15.2% of net sales) in 2021, an increase of $9.7&#160;million. The increase in SG&amp;A expenses in 2022 was attributable to higher administrative, marketing and engineering expenses as the Company returned to pre-pandemic expense levels.  Amortization expense in 2022 was $15.3&#160;million compared to $14.6&#160;million in 2021, an increase of $0.7&#160;million.  </span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Interest expense for 2022 was $14.4&#160;million compared to $10.5&#160;million in 2021, an increase of $3.9&#160;million or 36.3%. The increase in interest expense in 2022 primarily came from higher interest rates and increased borrowing levels.  Borrowing levels rose in 2022 primarily because of the need for the Company to increase its inventory levels to accommodate stronger market demand and to mitigate supply chain challenges. We anticipate borrowing levels will continue to be pressured by higher inventory requirements unless and until the supply chain situation improves.</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other income (expense), net was expense of $0.7&#160;million during 2022 compared to income of $1.9&#160;million in 2021. The expense in 2022 was primarily the result of an excise tax audit and to a lesser extent, changes in exchange rates. The income in 2021 was primarily due to changes in exchange rates and the sale of a facility in the Netherlands for $3.4 million.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Provision for income taxes was $32.4&#160;million (24.1% of income before income taxes) for 2022 compared to $29.3&#160;million (26.7% of income before income taxes) in 2021.  </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net income for 2022 was $101.9&#160;million compared to $80.2&#160;million in 2021, with the increase in 2022 net income resulting from the factors described above.</span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Fiscal 2021 compared to Fiscal 2020 </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s net sales in the fiscal year ended 2021 were $1,334.2&#160;million, an increase of $170.7&#160;million or 14.7% compared to $1,163.5&#160;million for the fiscal year ended December 31, 2020 (&#8220;2020&#8221;). The increase in sales was attributable to the continued strong recovery in customer demand for our products in both the Vegetation Management and the Industrial Equipment Divisions. Negatively affecting sales in 2020 was the onset of the COVID-19 pandemic which materially impacted global demand for the Company's products and overall Company financial performance.</span></div><div style="text-indent:18pt"><span><br/></span></div><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:120%">Net Vegetation Management sales were $812.7&#160;million in 2021 compared to $654.6&#160;million in 2020, an increase of $158.1&#160;million or 24.1%, coming from improved sales in the forestry/tree care and agricultural mowing units along with solid contributions from the U.K., Europe, Brazil and Australia operations. Sales in this Division were negatively impacted by operational and supply chain disruptions and logistics issues due to the pandemic.</span></div><div style="padding-left:36pt;text-indent:18pt"><span><br/></span></div><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:120%">Net Industrial Equipment sales were $521.5&#160;million in 2021 compared to $508.8&#160;million in 2020, representing an increase of $12.7&#160;million or 2.5%. The increase primarily resulted from higher customer demand for excavation/vacuum truck products and to a lesser extent the sweeper/debris collection products, offset by softer demand for snow removal equipment. Negatively affecting this Division were delays in truck chassis deliveries due to ongoing computer chip shortages as well as other supply chain constraints and operational disruptions due to the pandemic.</span></div><div style="padding-left:36pt;text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gross profit for 2021 was $334.5&#160;million (25.1% of net sales) compared to $293.7&#160;million (25.2% of net sales) in 2020, an increase of $40.8&#160;million. The increase in gross profit was primarily attributable to higher sales volume in 2021 as well as pricing increases that were implemented over the course of the year. This was offset by inflationary pressures, mainly from steel, along with higher costs relating to delivery of component parts, such as airfreighting charges to meet customer deliveries, which also had a negative effect on gross margin percentage for the full year of 2021. Negatively affecting the gross margin and gross margin percentage during for the full year of 2020 was a $4.8 million charge on sales of inventory that had been previously stepped-up related to the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Morbark</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> acquisition.</span></div><div style="text-indent:18pt"><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:'Times New Roman',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><br/></span></div></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Selling, general and administrative expenses (&#8220;SG&amp;A&#8221;) were $202.9&#160;million (15.2% of net sales) in 2021 compared to $184.2&#160;million (15.8% of net sales) in 2020, an increase of $18.7&#160;million. The full year of 2021 included higher administrative and marketing expenses as the Company returned to pre-pandemic expense levels.  Amortization expense in 2021 was $14.6&#160;million compared to $14.7&#160;million in 2020, a decrease of $0.1&#160;million.  </span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Interest expense for 2021 was $10.5&#160;million compared to $15.8&#160;million in 2020, a decrease of $5.3&#160;million or 33.5%. The decrease in interest expense in 2021 primarily came from a decrease in interest rates, and to a lesser extent, reduced borrowing levels.</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other income (expense), net was income of $1.9&#160;million during 2021 compared to expense of $0.6&#160;million in 2020. The income in 2021 was primarily from changes in exchange rates and the sale of a facility in the Netherlands and the expense in 2020 was primarily the result of changes in exchange rates offset by the gain on the sale of two properties, one in the U.S. and one in Canada.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Provision for income taxes was $29.3&#160;million (26.7% of income before income taxes) for 2021 compared to $22.0&#160;million (27.5% of income before income taxes) in 2020.  </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net income for 2021 was $80.2&#160;million compared to $57.8&#160;million in 2020, with the increase in 2021 net income resulting from the factors described above.</span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Liquidity and Capital Resources</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition to normal operating expenses, the Company has ongoing cash requirements which are necessary to conduct the Company&#8217;s business, including inventory purchases and capital expenditures. The Company&#8217;s accounts receivable, inventory and accounts payable levels, particularly in its Vegetation Management Division, build in the first quarter and early spring and, to a lesser extent, in the fourth quarter in anticipation of the spring and fall selling seasons. Accounts receivable historically build in the first and fourth quarters of each year as a result of pre-season sales and year-round sales programs. These sales, primarily in the Vegetation Management Division, help balance the Company&#8217;s production during the first and fourth quarters. </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><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 working capital of $536.7&#160;million, which represents a increase of $117.1&#160;million from working capital of $419.6&#160;million as of December&#160;31, 2021. The increase in working capital was primarily a result of volume-driven and inflation-driven increases in accounts receivable as well as an increase in inventory to support the Company's higher backlog levels.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Capital expenditures were $31.1&#160;million for 2022, compared to $25.3&#160;million for 2021.  The Company will fund any future expenditures from operating cash flows or through our revolving credit facility, described below. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Net cash provided by operating activities was $14.5&#160;million for 2022, compared to $49.7&#160;million for 2021. The decrease of cash from operating activities is primarily the result of increased borrowings on the Company's revolving credit facility used for increased working capital needs in support of elevated backlog levels.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net cash used in investing activities was $31.7&#160;million for 2022, compared to $33.4&#160;million for 2021. Net cash provided by financing activities was $24.5&#160;million for 2022, compared to net cash used of $23.0&#160;million for 2021. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company had $42.9&#160;million in cash and cash equivalents held by its foreign subsidiaries as of December&#160;31, 2022. The majority of these funds are held at our European and Canadian facilities. The Company will continue to repatriate European and Canadian cash and cash equivalents in excess of amounts needed to fund operating and investing activities, but will need to monitor exchange rates to determine the appropriate timing of such repatriation given the current relative strength of the U.S. dollar. Repatriated funds will initially be used to reduce funded debt levels under the Company's current credit facility and subsequently used to fund working capital, capital investments and acquisitions company-wide.  </span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On October 28, 2022, the Company, as the borrower, and each of its domestic subsidiaries as guarantors, entered into a Third Amended and Restated Credit Agreement (the &#8220;2022 Credit Agreement&#8221;) with Bank of America, N.A., as Administrative Agent.  The 2022 Credit Agreement provides the Company with the ability to request loans and other financial obligations in an aggregate amount of up to $655.0&#160;million.  Under the 2022 Credit Agreement, the Company has borrowed $255.0 million pursuant to a Term Facility, while up to $400.0 million is available to the Company pursuant to a Revolver Facility which terminates in five years.  The Term Facility requires the Company to </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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">33</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">make equal quarterly principal payments of $3.75 million over the term of the loan, with the final payment of any outstanding principal amount, plus interest, due at the end of the five year term.  Borrowings under the 2022 Credit Agreement bear interest, at the Company&#8217;s option, at a Term Secured Overnight Financing Rate (&#8220;SOFR&#8221;) or a Base Rate (each as defined in the 2022 Credit Agreement), plus, in each case, an applicable margin. The applicable margin ranges from 1.25% to 2.50% for Term SOFR borrowings and from .25% to 1.50% for Base Rate borrowings with the margin percentage based upon the Company's consolidated leverage ratio. The Company must also pay a commitment fee to the lenders ranging between 0.15% to 0.30% on any unused portion of the $400.0 million Revolver Facility. The 2022 Credit Agreement requires the Company to maintain two financial covenants, namely, a maximum consolidated leverage ratio and a minimum consolidated fixed charge coverage ratio. The Agreement also contains various covenants relating to limitations on indebtedness, limitations on investments and acquisitions, limitations on the sale of properties and limitations on liens and capital expenditures. The Agreement also contains other customary covenants, representations and events of defaults. The expiration date of the 2022 Credit Agreement, including the Term Facility and the Revolver Facility, is October&#160;28, 2027.</span></div><div style="text-align:justify;text-indent:36pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> As of December&#160;31, 2022, $301.9&#160;million was outstanding under the Credit Agreement, $249.9&#160;million on the Term Facility and $52.0&#160;million on the Revolver Facility. On December&#160;31, 2022, $2.8&#160;million of the revolver capacity was committed to irrevocable standby letters of credit issued in the ordinary course of business as required by vendors' contracts resulting in $295.2&#160;million in available borrowings. The Company is in compliance with the covenants under the Agreement.</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Management believes the Agreement and the Company&#8217;s ability to internally generate funds from operations should be sufficient to meet the Company&#8217;s cash requirements for the foreseeable future. However, future challenges affecting the banking industry and credit markets in general could potentially cause changes to credit availability, which creates a level of uncertainty.</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:115%">Inflation</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is exposed to the risk that the price of energy, steel and other purchased components may increase and the Company may not be able to increase the price of its products correspondingly. If this occurs, the Company&#8217;s results of operations would be adversely impacted.  In 2022, the Company was materially impacted by inflationary pressures that significantly increased the price of steel as well as the price of many other purchased components. In 2022, we worked to mitigate some of the effects of cost increases through aggressive pricing actions but cost inflation is an ongoing challenge that could have a material impact on the Company's business and financial results, particularly if the current inflationary environment materially worsens. </span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">New Accounting Pronouncements</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As discussed in <a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:none" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_127">Note 2</a> of Notes to Consolidated Financial Statements, certain new financial accounting pronouncements became effective January 1, 2021, or will become effective in the future. The effect on our financial statements upon adoption of these pronouncements is discussed in the above-referenced note.</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.245%"><tr><td style="width:1.0%"></td><td style="width:34.167%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.544%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.102%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.544%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.102%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.544%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.102%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.544%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.102%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.544%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.105%"></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:#ffffff;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Payment due by period</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></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><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><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Critical Accounting Estimates</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations are based upon our Consolidated Financial Statements, which have been prepared in accordance with U.S. Generally Accepted Accounting Principles (&#8220;GAAP&#8221;). The preparation of these financial statements requires management to make estimates and assumptions that affect the reported amounts of assets, liabilities, revenue and expenses, and related disclosure of contingent assets and liabilities. Management bases its estimates on historical experience and on various other assumptions that are believed to be reasonable under the circumstances, the results of which form the basis for making judgments about the carrying values of assets and liabilities that are not readily apparent from other sources. Actual results may differ from these estimates under different assumptions or conditions.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">34</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Critical Accounting Policies</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">An accounting policy is deemed to be critical if it requires an accounting estimate to be made based on assumptions about matters that are highly uncertain at the time the estimate is made, and if different estimates that reasonably could have been used, or changes in the accounting estimates that are reasonably likely to occur periodically, could materially impact the financial statements. Management believes the following critical accounting policy reflect its more significant estimates and assumptions used in the preparation of the Consolidated Financial Statements. For further information on the critical accounting policies, see </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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_124">Note 1</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> of our Notes to Consolidated Financial Statements.</span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Business Combinations</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We account for the acquisition of a business in accordance with the accounting standards codification guidance for business combinations, whereby the total consideration transferred is allocated to the assets acquired and liabilities assumed, including amounts attributable to intangible assets based on their respective estimated fair values as of the date of acquisition. Goodwill represents the excess of consideration transferred over the estimated fair value of the net assets acquired in a business combination. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Assigning estimated fair values to the assets acquired and liabilities assumed requires the use of significant estimates, judgments, inputs, and assumptions regarding the fair value of intangible assets that are separately identifiable from goodwill, inventory step-up, and property, plant, and equipment, and are based on available historical information, future expectations, and assumptions determined to be reasonable but are inherently uncertain with respect to future events, including economic conditions, competition, the useful life of the acquired assets and other factors. Such significant estimates, judgments, inputs, and assumptions include, when applicable, the selection of an appropriate valuation method depending on the nature of the respective asset, such as the income approach, the market or sales comparison approach, or the cost approach; estimating future cash flows based on projected revenues and/or margins that we expect to generate subsequent to an acquisition; applying an appropriate discount rate to estimate the present value of those projected cash flows we expect to generate subsequent to an acquisition; selecting an appropriate royalty rate or estimating a customer attrition or technological obsolescence factor where necessary and appropriate given the nature of the respective asset; assigning the appropriate contributory asset charge where needed; determining an appropriate useful life and the related depreciation or amortization method for the respective asset; and assessing the accuracy and completeness of other historical financial metrics of the acquiree used as standalone inputs or as the basis for determining estimated projected inputs such as margins, customer attrition, and costs to hold and sell product. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In determining the estimated fair value of intangible assets that are separately identifiable from goodwill, we typically utilize the income approach, which discounts the projected future cash flows using an appropriate discount rate that reflects the risks associated with the projected cash flows. However, in certain instances, particularly in relation to developed technology or patents, we may utilize the cost approach depending on the nature of the respective intangible asset and the recency of the development or procurement of such technology. In determining the estimated fair value of acquired inventory, we typically utilize the cost approach for raw materials and the sales comparison approach for finished goods, work in process and component parts. In determining the estimated fair value of acquired property, plant, and equipment, we typically utilize the sales comparison approach or the cost approach depending on the nature of the respective asset and the recency of the construction or procurement of such asset. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We may refine the estimated fair values of assets acquired and liabilities assumed, if necessary, over a period not to exceed one year from the date of acquisition by taking into consideration new information that, if known at the date of acquisition, would have affected the estimated fair values ascribed to the assets acquired and liabilities assumed. The judgments made in determining the estimated fair value assigned to assets acquired and liabilities assumed, as well as the estimated useful life and depreciation or amortization method of each asset, can materially impact the net earnings of the periods subsequent to an acquisition through depreciation and amortization, and in certain instances through impairment charges, if the asset becomes impaired in the future. During the measurement period, any purchase price allocation changes that impact the carrying value of goodwill will affect any measurement of goodwill impairment taken during the measurement period, if applicable.</span></div><div style="text-indent:18pt"><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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">35</span></div></div></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_49"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 7A. Quantitative and Qualitative Disclosures about Market Risk</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is exposed to various financial market risks. Market risk is the potential loss arising from adverse changes in market prices and rates. The Company does not enter into derivative or other financial instruments for trading or speculative purposes.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Foreign Currency Risk</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">International Sales</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A portion of the Company&#8217;s operations consists of manufacturing and sales activities in international jurisdictions. The Company manufactures its products primarily in the U.S., the U.K., France, the Netherlands, Canada, Brazil and Australia. The Company sells its products primarily within the markets where the products are produced, but certain of the Company&#8217;s sales from its U.K. and Canadian operations are denominated in other currencies. As a result, the Company&#8217;s financials, specifically the value of its foreign assets, could be affected by factors such as changes in foreign currency exchange rates in the U.K. and Canada or weak economic conditions in the other markets in which the subsidiaries of the Company distribute their products.  </span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Exposure to Exchange Rates</span></div><div><span><br/></span></div><div style="text-indent:15pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company&#8217;s earnings are affected by fluctuations in the value of the U.S. dollar as compared to foreign currencies, predominantly in European countries and Canada and, to a lesser extent, Australia and Brazil, as a result of the sale of its products in international markets. Foreign currency forward exchange contracts in the U.K. are used to offset the earnings effects of such fluctuations. On December&#160;31, 2022, the result of a uniform 10% strengthening in the value of the U.S. dollar relative to the currencies in which the Company&#8217;s sales are denominated would have been a decrease in gross profit of $10.9 million. Comparatively, on December&#160;31, 2021, the result of a uniform 10% strengthening in the value of the dollar relative to the currencies in which the Company&#8217;s sales are denominated would have been a decrease in gross profit of approximately $8.9 million. This calculation assumes that each exchange rate would change in the same direction relative to the U.S. dollar. In addition to the direct effects of changes in exchange rates, which are a changed dollar value of the resulting sales, changes in exchange rates may also affect the volume of sales or the foreign currency sales price as competitors&#8217; products become more or less attractive. The Company&#8217;s sensitivity analysis of the effects of changes in foreign currency exchange rates does not factor in a potential change in sales levels or local currency prices. The translation adjustment during 2022 was a loss of $23.0 million. On December&#160;31, 2022, the British pound closed at 0.8266 relative to the U.S. dollar, and the Euro closed at 0.9344 relative to the U.S. dollar. By comparison, on December&#160;31, 2021, the British pound closed at 0.7392 relative to the U.S. dollar, and the Euro closed at 0.8793 relative to the U.S. dollar. No assurance can be given as to future valuation of the British pound or Euro or how further movements in those or other currencies could affect future earnings or the financial position of the Company.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div><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="text-indent:18pt"><span><br/></span></div><div style="text-indent:15pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The majority of the Company&#8217;s long-term debt bears interest at variable rates. Accordingly, the Company&#8217;s net income is affected by changes in interest rates. Assuming the average level of borrowings at variable rates and a two hundred basis point change in the 2022 average interest rate under these borrowings, the Company&#8217;s 2022 interest expense would have changed by approximately $7.3 million. In the event of an adverse change in interest rates, management could take actions to mitigate its exposure. Further, this analysis does not consider the effects of the change in the level of overall economic activity that could exist in such an environment. However, challenges affecting the banking industry and credit markets in general can potentially cause changes to credit availability and cost of borrowing, which creates a level of uncertainty.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_52"></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 8. Financial Statements and Supplementary Data</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:15pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The financial statements and supplementary data described in </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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_88">Item 15</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> of this report and included on pages </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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_106">49</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> through 79 of this report are incorporated herein by reference.</span></div><div style="margin-bottom:10pt;text-indent:15pt"><span><br/></span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_55"></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 9. Changes in and Disagreements with Accountants on Accounting and Financial Disclosure</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">36</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span><br/></span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_58"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 9A. Controls and Procedures</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Disclosure Controls and Procedures</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. An evaluation was carried out, under the supervision and with the participation of the Company's management, including our President &amp; Chief Executive Officer and Executive Vice President &amp; Chief Financial Officer (Principal Financial and Accounting Officer), of the effectiveness of the design and operation of our disclosure controls and procedures (as defined in Rule 13a-15(e) under the Securities Exchange Act of 1934). Based upon the evaluation, the President &amp; Chief Executive Officer and Executive Vice President &amp; Chief Financial Officer (Principal Financial and Accounting Officer) concluded that the Company&#8217;s disclosure controls and procedures were effective at the end of the period covered by this report.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Management&#8217;s Annual Report on Internal Control over Financial Reporting</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. Management&#8217;s report on the Company&#8217;s internal control over financial reporting is included on page </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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_100">45</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 and incorporated by reference herein. The Company&#8217;s independent registered public accounting firm has audited and issued a report on the Company&#8217;s internal control over financial reporting which is included on page </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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_103">48</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 and incorporated by reference herein.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%">The effectiveness of our internal control over financial reporting as of December 31, 2022 has been audited by KPMG LLP, an independent registered public accounting firm, and the firm&#8217;s report on this matter is included in Item 8 of this annual report on Form 10-K.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Changes in Internal Controls over Financial Reporting</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;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%"> There have not been any changes in the Company's internal control over financial reporting (as such term is defined by paragraph (d) of Rule 13a-15 under the Securities Exchange Act) during the fourth fiscal quarter that have materially affected, or are reasonably likely to materially affect, the Company's internal control over financial 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%">&#160;</span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_61"></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 9B. Other Information</span></div><div><span><br/></span></div><div style="text-indent:22.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%">None.</span></div><div style="text-indent:22.5pt"><span><br/></span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_64"></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 9C. Disclosure Regarding Foreign Jurisdictions that Prevent Inspections</span></div><div><span><br/></span></div><div style="text-indent:15pt"><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="i51762c1e0d7f47aeb6d24f3a0d19ea64_67"></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PART III</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_70"></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 10. Directors, Executive Officers and Corporate Governance</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:15pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There are incorporated in this Item 10, by reference, those portions of the Company&#8217;s definitive proxy statement for the 2023 Annual Meeting of Stockholders which appear therein under the captions &#8220;Proposal 1 -&#160; Election of Directors,&#8221; &#8220;Nominees for Election to the Board of Directors,&#8221; &#8220;Information Concerning Directors,&#8221; &#8220;Meetings and Committees of the Board,&#8221; &#8220;The Audit Committee,&#8221; and  &#8220;The Nominating/Corporate Governance Committee."&#160; See also the information under the caption &#8220;Information About Our Executive Officers&#8221; in Part I of this Report.</span></div><div style="text-indent:15pt"><span><br/></span></div><div style="text-indent:15pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Board of Directors has delegated certain responsibilities to three Committees of the Board. The Committees are the Audit Committee, Compensation Committee and Nominating/Corporate Governance Committee. The Board of Directors has also adopted Corporate Governance guidelines and a Code of Business Conduct and Ethics for all employees, including the Chief Executive Officer, Principal Financial Officer, Principal Accounting Officer and those individuals performing similar functions.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Committee Charters, Code of Business Conduct and Ethics, and Corporate Governance Guidelines may be found on the Company&#8217;s website </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(www.alamo-group.com)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> under the &#8220;Corporate Governance&#8221; tab at https://www.alamo-group.com/our-company/corporate-governance/ and are also available in printed form at no charge by sending a request to the Corporate Secretary, Alamo Group Inc., 1627 E. Walnut Street, Seguin, Texas 78155, which is the principal executive office of the Company. The telephone number is (830) 379-1480. The Company will post any amendments to the Code of Conduct and Ethics, and any waivers that are required to be disclosed by the rules of either the SEC or the New York Stock Exchange, on the Company&#8217;s website.</span></div><div style="text-indent:18pt"><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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">37</span></div></div></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_73"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 11. Executive Compensation</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There are incorporated in this Item 11, by reference, those portions of the Company&#8217;s definitive proxy statement for the 2023 Annual Meeting of Stockholders which appear therein under the captions "Executive Compensation," &#8220;The Compensation Committee,&#8221; &#8220;Compensation Discussion and Analysis,&#8221; "Compensation Committee Report&#8221; and &#8220;Director Compensation during 2022.&#8221;</span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_76"></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%">Item 12. Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> There is incorporated in this Item 12, by reference, that portion of the Company&#8217;s definitive proxy statement for the 2023 Annual Meeting of Stockholders which appears under the caption &#8220;Beneficial Ownership of our Common Stock.&#8221;</span></div><div style="text-indent:15pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Information on Alamo Group Inc.&#8217;s Equity Compensation Plans</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:15pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The following table provides information on the shares that are available under the Company&#8217;s stock compensation plans and, in the case of plans where stock options may be granted, the number of shares of common stock issuable upon exercise of those stock options. The Company currently does not have an Equity Compensation Plan that is not approved by the Stockholders.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:15pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The numbers in the table are as of December&#160;31, 2022, the last day of Alamo Group Inc.&#8217;s 2022 fiscal year.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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:30.478%"></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:20.976%"></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:20.976%"></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:20.980%"></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:'Times New Roman',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: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%">A</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%">B</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%">C</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Equity Compensation</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Plan Category</span></div></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"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Number of Securities to be issued upon</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">exercise of outstanding</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">options, warrants and rights</span></div></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"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted-average exercise</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">price of outstanding</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">options, warrants and</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">rights</span></div></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"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Number of Securities</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">that remain</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">available for future</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">issuance</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;under equity</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">compensation plans</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(excluding securities</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">reflected in column A)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></div></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:9pt;font-weight:700;line-height:100%">Plans approved by stockholders</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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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></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></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">2005 Incentive Stock Option Plan</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,500</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$48.36</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;</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:9pt;font-style:italic;font-weight:400;line-height:100%">2009 Equity Incentive Plan</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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,300</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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$97.30</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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">2015 Incentive Stock Option Plan</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">74,147</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$114.65</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">286,033</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:9pt;font-style:italic;font-weight:400;line-height:100%">2019 Equity Incentive Plan</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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">92,330</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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$135.29</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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">381,531</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:100%">Plans not approved by stockholders</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;&#160;&#160;&#160;&#160; Total&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span></div></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000000;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%">183,277</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000000;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%">667,564</span></td></tr></table></div><div><span><br/></span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_79"></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 13. Certain Relationships, Related Transactions and Director Independence</span></div><div><span><br/></span></div><div style="text-indent:18pt"><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 is set forth under the caption &#8220;Certain Relationships and Related Transactions&#8221; in the Company&#8217;s definitive proxy statement for the 2023 Annual Meeting of Stockholders, and such information is incorporated by reference herein. There were no such reportable relationships or related party transactions in the fiscal year ended December&#160;31, 2022. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Information regarding director independence is set forth under the caption &#8220;Information Concerning Directors&#8221; in the Company&#8217;s definitive proxy statement for the 2023 Annual Meeting of Stockholders, and such information is incorporated by reference herein.</span></div><div style="text-indent:18pt"><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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">38</span></div></div></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_82"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 14. Principal Accountant Fees and Services</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our independent registered public accounting firm is <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:AuditorName" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF84Mi9mcmFnOjVkOTA3ZDk2NzhmZDQ0MTNhZDgzOTU2ODA1ZmUyZGFhL3RleHRyZWdpb246NWQ5MDdkOTY3OGZkNDQxM2FkODM5NTY4MDVmZTJkYWFfNDYy_63dd4b12-4307-44fc-af23-36bb49ee3c4d">KPMG LLP</ix:nonNumeric>, <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:AuditorLocation" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF84Mi9mcmFnOjVkOTA3ZDk2NzhmZDQ0MTNhZDgzOTU2ODA1ZmUyZGFhL3RleHRyZWdpb246NWQ5MDdkOTY3OGZkNDQxM2FkODM5NTY4MDVmZTJkYWFfNDYz_b057f465-b969-4f88-8555-cc88e4f2faad">San Antonio, TX</ix:nonNumeric>, Auditor Firm ID: <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="dei:AuditorFirmId" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF84Mi9mcmFnOjVkOTA3ZDk2NzhmZDQ0MTNhZDgzOTU2ODA1ZmUyZGFhL3RleHRyZWdpb246NWQ5MDdkOTY3OGZkNDQxM2FkODM5NTY4MDVmZTJkYWFfNDYx_b84f507c-83f9-4b5b-bb60-403918e8a5b5">185</ix:nonNumeric>. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Information regarding principal accountant fees and services is set forth under the caption &#8220;Proposal 3 &#8211; Ratification of Appointment of Independent Auditors&#8221; in the Company&#8217;s definitive proxy statement for the 2023 Annual Meeting of Stockholders, and such information is incorporated by reference herein.</span></div><div><span><br/></span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_85"></div><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PART IV</span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_88"></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%">Item 15. Exhibits and Financial Statement Schedules</span></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%;text-decoration:underline">Financial Statements</span><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:5.058%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:75.146%"></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></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;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%">&#160;</span></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%">Page</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;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:'Times New Roman',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:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_100">Report of Management on Internal Control over Financial Reporting</a></span></div></td><td colspan="3" 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: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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_100">43</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:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_103">Reports of Independent Registered Public Accounting Firm (KPMG LLP)</a></span></div></td><td colspan="3" 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: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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_103">44</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:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_106">Consolidated Balance Sheets</a></span></div></td><td colspan="3" 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: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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_106">47</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:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_109">Consolidated Statements of Income</a></span></div></td><td colspan="3" 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: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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_109">48</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: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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_112">Consolidated Statements of Comprehensive Income</a></span></div></td><td colspan="3" 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: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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_112">49</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:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_115">Consolidated Statements of Stockholders&#8217; Equity</a></span></div></td><td colspan="3" 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: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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_115">50</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:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_118">Consolidated Statements of Cash Flows</a></span></div></td><td colspan="3" 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: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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_118">51</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:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><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="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_121">Notes to Consolidated Financial Statements</a></span></div></td><td colspan="3" 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: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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_121">52</a></span></div></td></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">Financial Statement Schedules</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> All schedules for which a provision is made in the applicable accounting regulation of the Securities and Exchange Commission are omitted because they are not required or because the required information is included in the consolidated financial statements or notes thereto.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_91"></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 16. Summary</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div style="text-indent:18pt"><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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">39</span></div></div></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_94"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="-sec-extract:summary"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">Exhibits</span></div><div><span><br/></span></div><div style="text-indent:15pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Exhibits &#8211; The following exhibits are incorporated by reference to the filing indicated or are included following the index to Exhibits.</span></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%">INDEX TO EXHIBITS</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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:8.738%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.296%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:43.246%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.121%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:40.899%"></td><td style="width:0.1%"></td></tr><tr><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%">&#160;</span></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%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',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:700;line-height:100%">&#160;</span></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%">Incorporated by Reference</span></td></tr><tr><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%">&#160;</span></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%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',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:700;line-height:100%">&#160;</span></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%">From the Following</span></td></tr><tr><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%">Exhibits</span></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%">&#160;</span></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%">Exhibit Title</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:700;line-height:100%">&#160;</span></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%">Documents</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;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%">3.1</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><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:#def3c0;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%">Certificate of Incorporation, as amended, of Alamo Group Inc.</span></td><td colspan="3" style="background-color:#def3c0;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:700;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;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%">Filed as Exhibit 3.1 to Form S-1, February 5, 1993</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;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%">3.2</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><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:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Certificate of Amendment of Certificate of Incorporation of Alamo Group Inc.</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: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/897077/000090514816001583/efc16-366_ex31.htm">Filed as Exhibit 3.1 to Form 8-K, May 10, 2016</a></span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">3.3</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">By-Laws of Alamo Group Inc. as amended</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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/897077/000089707722000127/amendedrestatedbylawsdec.htm">Filed as Exhibit 3.1 to Form 8-K, December 12, 202</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/897077/000089707722000127/amendedrestatedbylawsdec.htm">2</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;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%">4.1</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><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:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Description of Securities Registered Pursuant to Section 12 of the Securities Exchange Act of 1934</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: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/897077/000089707720000011/descriptionofcapitalst.htm">Filed as Exhibit 4.1 to Form 10-K, February 28, 2020</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">10.1</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Form of indemnification agreements with Directors of Alamo Group Inc.</span></td><td colspan="3" style="background-color:#def3c0;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%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;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/897077/0000897077-97-000018.txt">Filed as Exhibit 10.1 to Form 10-Q, May 15, 1997</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;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%">10.2</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><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:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Form of indemnification agreements with certain executive officers of Alamo Group Inc.</span></td><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%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;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/897077/0000897077-97-000018.txt">Filed as Exhibit 10.2 to Form 10-Q, May 15, 1997</a></span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">*10.3</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">401(k) Restoration Plan for Highly Compensated Employees, adopted on December&#160;9, 1997</span></td><td colspan="3" style="background-color:#def3c0;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%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;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/897077/0000890566-98-000548.txt">Filed as Exhibit 10.15 to Form 10-K, March&#160;31, 1998</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;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%">*10.4</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><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:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2005 Incentive Stock Option Plan, adopted by the Board of Directors on May 4, 2005</span></td><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%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;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/897077/000100329705000075/alamoproxy1.htm">Filed as Appendix E to Schedule 14A, March 29, 2005</a></span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">10.5</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Third Amended and Restated Credit Agreement, dated as of October 28, 2022, by and among Alamo Group Inc., Bank of America, N.A. as administrative agent, Wells Fargo Bank, N.A., and PNC Bank, N.A. as co-syndication agents, TD Bank, N.A. as documentation agent, and the other lenders party thereto.</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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/897077/000089707722000114/thirdarcreditagreement-a.htm">Filed as Exhibit 10.1 to Form 8-K, October 31, 2022</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;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%">10.6</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><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:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">First Amendment to Securities Purchase Agreement, dated as of October 22, 2019, by and among Alamo Acquisition Corporation, a Delaware corporation, Alamo Group Inc., a Delaware corporation, Stellex Capital Partners, LP, a Delaware limited partnership, and in its capacity as the initial representative of the other Sellers pursuant to Section 10.6 of the Securities Purchase Agreement.</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: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/897077/000089707719000156/a3162_001.htm">Filed as Exhibit 10.2 to Form 10-Q, October 31, 2019</a></span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">*10.7</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Form of Restricted Stock Award Agreement under the 2009 Equity Incentive Plan</span></td><td colspan="3" style="background-color:#def3c0;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%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;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/897077/000100329709000127/ex10-2.htm">Filed as Exhibit 10.2 to Form 8-K, May 13, 2009</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;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%">*10.8</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><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:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Supplemental Executive Retirement Plan</span></td><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%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;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/897077/000100329711000009/ex110-1.htm">Filed as Exhibit 10.1 to Form 8-K, January 18, 2011</a></span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">*10.9</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amended and Restated Executive Incentive Plan</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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/897077/000089707718000010/a201710kex1026.htm">Filed as Exhibit 10.26 to Form 10-K, March 1, 2018 </a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;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%">*10.10</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><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:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2015 Incentive Stock Option Plan, adopted by the Board of Directors on May 7, 2015</span></td><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%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;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/897077/000089707715000016/algdef14a2015.htm">Filed as Appendix A to Schedule 14A, March 19, 2015</a></span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">*10.11</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Alamo Group Inc. 2019 Equity Incentive Plan</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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/897077/000089707719000046/ex1012019equityincenti.htm">Filed as Exhibit 10.1 to Form 8-K, May 7, 2019</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;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%">*10.12</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><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:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Form of Restricted Stock Award Agreement under the Alamo Group Inc. 2019 Equity Incentive Plan</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: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/897077/000089707720000011/formofrestrictedstocka.htm">Filed as Exhibit 10.23 to Form 10-K, February 28, 2020</a></span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">*10.13</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Form of Restricted Stock Unit Agreement  under the Alamo Group Inc. 2019 Equity Incentive Plan</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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/897077/000089707720000011/formofrestrictedstocku.htm">Filed as Exhibit 10.24 to Form 10-K, February 28, 2020</a></span></div></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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">40</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><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:8.738%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.296%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:43.246%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.121%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:40.899%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;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%">*10.14</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><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:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Form of Performance Share Unit Agreement  under the Alamo Group Inc. 2019 Equity Incentive Plan</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: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/897077/000089707721000007/a2021formofperformanceshar.htm">Filed as Exhibit 10.22 to Form 10-K, February 26, 2021</a></span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">10.15</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Form of Executive Change in Control Agreement</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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/897077/000089707720000032/formofchangeincontrola.htm">Filed as Exhibit 10.1 to Form 8-K, March 10,  2020</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;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%">10.16</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><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:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amendment to Executive Change in Control Agreement</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: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/897077/000089707721000116/amendmenttojeffleonardcoca.htm">Filed as Exhibit 10.1 to Form 10-Q, August 4, 2021</a></span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">10.17</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Executive Change in Control Agreement by and between Alamo Group Inc. and Michael A. Haberman</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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/897077/000089707722000007/changeincontrolagreementmi.htm">Filed as Exhibit 10.2</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/897077/000089707722000007/changeincontrolagreementmi.htm">4</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/897077/000089707722000007/changeincontrolagreementmi.htm"> to Form 10-K, February 2</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/897077/000089707722000007/changeincontrolagreementmi.htm">4</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/897077/000089707722000007/changeincontrolagreementmi.htm">, 20</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/897077/000089707722000007/changeincontrolagreementmi.htm">2</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/897077/000089707722000007/changeincontrolagreementmi.htm">2</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;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%">21.1</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><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:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Subsidiaries of the Registrant</span></td><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%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;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="a202210kex211.htm">Filed Herewith</a></span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">23.1</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consent of KPMG LLP</span></td><td colspan="3" style="background-color:#def3c0;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%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;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="a202210kex231.htm">Filed Herewith</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;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%">31.1</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><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:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Certification by Jeffery A. Leonard under Section 302 of the Sarbanes-Oxley Act of 2002</span></td><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%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;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="a202210kex311.htm">Filed Herewith</a></span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">31.2</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Certification by Richard J. Wehrle under Section 302 of the Sarbanes-Oxley Act of 2002</span></td><td colspan="3" style="background-color:#def3c0;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%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;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="a202210kex312.htm">Filed Herewith</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;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%">32.1</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><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:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Certification by Jeffery A. Leonard under Section 906 of the Sarbanes-Oxley Act of 2002</span></td><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%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;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="a202210kex321.htm">Filed Herewith</a></span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">32.2</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Certification by Richard J. Wehrle under Section 906 of the&#160; Sarbanes-Oxley Act of 2002</span></td><td colspan="3" style="background-color:#def3c0;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%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;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="a202210kex322.htm">Filed Herewith</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;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%">101.INS</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><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:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">XBRL Instance Document</span></td><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%">&#160;</span></td><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%">Filed Herewith</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">101.SCH</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">XBRL Taxonomy Extension Schema Document</span></td><td colspan="3" style="background-color:#def3c0;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%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Filed Herewith</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;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%">101.CAL</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><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:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">XBRL Taxonomy Extension Calculation Linkbase Document</span></td><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%">&#160;</span></td><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%">Filed Herewith</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">101.LAB</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">XBRL Taxonomy Extension Label Linkbase Document</span></td><td colspan="3" style="background-color:#def3c0;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%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Filed Herewith</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;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%">101.PRE</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><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:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">XBRL Taxonomy Extension Presentation Linkbase Document</span></td><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%">&#160;</span></td><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%">Filed Herewith</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">101.DEF</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">XBRL Taxonomy Extension Definition Linkbase Document</span></td><td colspan="3" style="background-color:#def3c0;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%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Filed Herewith</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;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%">104</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><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:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cover Page Interactive Data File (formatted as Inline XBRL and contained in Exhibit 101)</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:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Filed Herewith</span></td></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">________________________________________________________________________________________________________________________</span></div><div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">*Compensatory Plan</span></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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">41</span></div></div></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_97"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:10pt;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-bottom:10pt;text-indent:15pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Pursuant to the requirements of Section 13 or 15(d) of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned, thereunto duly authorized.</span></div><div style="margin-bottom:10pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:82.894%"><tr><td style="width:1.0%"></td><td style="width:6.836%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:48.635%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:41.229%"></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:'Times New Roman',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%">ALAMO GROUP INC.</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:400;line-height:100%">Date:&#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%">February 23, 2023</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></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:'Times New Roman',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%">/s/ Jeffery A. Leonard</span></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:'Times New Roman',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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Jeffery A. Leonard</span></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:'Times New Roman',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 &amp; Chief Executive Officer</span></td></tr></table></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-bottom:10pt;text-indent:15pt"><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 their capacities and on the 23th day of February 2023.</span><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:32.818%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.549%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.577%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:52.556%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:700;line-height:100%">Signature</span></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%">&#160;</span></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:12pt;font-weight:700;line-height:100%">Title</span></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;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%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;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%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;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%">&#160;</span></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%;text-decoration:underline">/s/</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline">RODERICK R. BATY      </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Roderick R. Baty</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Independent Board Chair &amp; Director</span></td><td colspan="3" style="display:none"></td></tr><tr style="height:17pt"><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="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%;text-decoration:underline">/s/</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline">JEFFERY A. LEONARD  </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Jeffery A. Leonard</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;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="background-color:#def3c0;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%">President &amp; Chief Executive Officer  <br/>(Principal Executive Officer)</span></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%">&#160;</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:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%;text-decoration:underline">/s/</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline">RICHARD J. WEHRLE     </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Richard J. Wehrle</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Executive Vice President &amp; Chief Financial Officer    (Principal Financial Officer and Principal Accounting Officer)</span></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%">&#160;</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:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%;text-decoration:underline">/s/</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline">ROBERT P. BAUER        </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Robert P. Bauer</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;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="display:none"></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;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%;text-decoration:underline">/s/</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline">ERIC P. ETCHART          </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Eric P. Etchart</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;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="display:none"></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;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;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">/s/NINA C. GROOMS          </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">    </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Nina C. Grooms</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;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="display:none"></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 colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;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">/s/TRACY C. JOKINEN       </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tracy C. Jokinen</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;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="display:none"></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;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;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">/s/RICHARD W. PAROD      </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Richard W. Parod</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;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="display:none"></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;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;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">/s/RONALD A. ROBINSON  </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ronald A. Robinson</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;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="display:none"></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;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;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">/s/LORIE L. TEKORIUS        </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lorie L. Tekorius</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;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="display:none"></td></tr></table></div><div style="margin-bottom:10pt;text-indent:15pt"><span><br/></span></div><div style="margin-bottom:10pt;text-indent:15pt"><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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">42</span></div></div></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_100"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Report of Management on Internal Control over Financial Reporting</span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:15pt"><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 establishing and maintaining adequate internal control over financial reporting, as such term is defined in Rules 13a-15(f) and 15d-15(f) under the Securities Exchange Act of 1934. The Company&#8217;s internal control over financial reporting is designed to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with U.S. Generally Accepted Accounting Principles.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:15pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Because of its inherent limitations, internal controls over financial reporting may not prevent or detect misstatements. Also, projections of any evaluation of effectiveness to future periods are subject to 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><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:15pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s management assessed the effectiveness of the Company&#8217;s internal control over financial reporting as of December&#160;31, 2022 using the criteria established in Internal Control &#8211; Integrated Framework (2013) issued by the Committee of Sponsoring Organizations of the Treadway Commission (COSO). Based on this assessment, the Company&#8217;s management concludes that, as of December&#160;31, 2022, the Company&#8217;s internal controls over financial reporting were effective based on these criteria.</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">KPMG LLP, an independent registered public accounting firm, has issued an attestation report on the effectiveness of internal control over financial reporting, which is included herein.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;&#160;</span><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:4.894%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:41.297%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:50.509%"></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%">Date:</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%">February 23, 2023</span></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-style:italic;font-weight:400;line-height:100%">/s/</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Jeffery A. Leonard                       </span></div></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 #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%">Jeffery A. Leonard       </span></td></tr><tr><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:'Times New Roman',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, Chief Executive Officer &amp; Director                      (Principal Executive Officer)</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><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:'Times New Roman',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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><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:'Times New Roman',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%">/s/Richard J. Wehrle</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 #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%">Richard J. Wehrle</span></td></tr><tr><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:'Times New Roman',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%">Executive Vice President &amp; Chief Financial Officer        (Principal Financial Officer)</span></td></tr></table></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span><br/></span></div><div style="height:38.25pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">43</span></div></div></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_103"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></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%">Report of Independent Registered Public Accounting Firm</span></div><div style="text-align:justify"><span><br/></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:115%">To the Stockholders and Board of Directors</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Alamo Group Inc.:</span></div><div><span><br/></span></div><div style="margin-bottom:3pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Opinion on the Consolidated Financial Statements</span></div><div><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 Alamo Group Inc. and subsidiaries (the Company) as of December 31, 2022 and 2021, the related consolidated statements of income, comprehensive income, stockholders&#8217; equity, and cash flows for each of the years in the three-year period ended December 31, 2022, and the related notes (collectively, the consolidated financial statements). In our opinion, the consolidated financial statements present fairly, in all material respects, the financial position of the Company as of December 31, 2022 and 2021, and the results of its operations and its cash flows for each of the years in the three-year period ended December 31, 2022, in conformity with U.S. generally accepted accounting principles.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">We also have audited, in accordance with the standards of the Public Company Accounting Oversight Board (United States) (PCAOB), the Company&#8217;s internal control over financial reporting as of December 31, 2022, based on criteria established in Internal Control &#8211; Integrated Framework (2013) issued by the Committee of Sponsoring Organizations of the Treadway Commission, and our report dated February 23, 2023 expressed an unqualified opinion on the effectiveness of the Company&#8217;s internal control over financial reporting.</span></div><div><span><br/></span></div><div style="margin-bottom:3pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Basis for Opinion</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">These consolidated financial statements are the responsibility of the Company&#8217;s management. Our responsibility is to express an opinion on these consolidated 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><span><br/></span></div><div><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 consolidated 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 consolidated financial statements, whether due to error or fraud, and performing procedures that respond to those risks. Such procedures included examining, on a test basis, evidence regarding the amounts and disclosures in the consolidated financial statements. Our audits also included evaluating the accounting principles used and significant estimates made by management, as well as evaluating the overall presentation of the consolidated financial statements. We believe that our audits provide a reasonable basis for our opinion.</span></div><div><span><br/></span></div><div style="margin-bottom:3pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Critical Audit Matter</span></div><div><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 consolidated 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 consolidated financial statements and (2) involved our especially challenging, subjective, or complex judgments. The communication of a 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><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">.</span></div><div><span><br/></span></div><div style="margin-bottom:3pt;padding-left:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Sufficiency of evidence over the existence of inventory</span></div><div style="padding-left:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As discussed in Note 6 to the consolidated financial statements, the value of inventory was $353 million as of December 31, 2022. To facilitate the global delivery of goods to customers, the Company operates across North America, South America, Europe and Australia. Within these locations, the Company has 28 principal manufacturing plants located in six countries.</span></div><div style="padding-left:36pt"><span><br/></span></div><div style="padding-left:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We identified the assessment of the sufficiency of evidence over the existence of inventory as a critical audit matter. The geographical dispersion of inventory required especially subjective auditor judgment in determining the sufficiency of audit evidence obtained over the existence of inventory.</span></div><div style="height:38.25pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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><br/></span></div></div><div style="padding-left:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following are the primary procedures we performed to address this critical audit matter. We applied auditor judgment to determine the nature and extent of procedures to be performed over the existence of inventory including determining where we would perform procedures. We evaluated the design and tested the operating effectiveness of certain internal controls over the Company&#8217;s inventory process at certain manufacturing plants. This included controls related to the physical inspection of inventories at certain plants. We performed independent test counts for a sample of items and compared them to the Company&#8217;s records to evaluate the inventory at those specific plants. We selected a sample of inventory transactions that were made by the Company near the Company&#8217;s fiscal year-end and evaluated the accounting period in which they were recorded. We evaluated the sufficiency of audit evidence obtained by assessing the results of the procedures performed.</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:70.614%"><tr><td style="width:1.0%"></td><td style="width:26.436%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:43.827%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:26.437%"></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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">/s/ KPMG LLP</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></tr><tr><td colspan="6" 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%">We have served as the Company&#8217;s auditor since 2009.</span></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></tr><tr><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%">San Antonio, Texas</span></div></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%">February 23, 2023</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%">&#160;</span></td></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="height:38.25pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',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><br/></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%">Report of Independent Registered Public Accounting Firm</span></div><div style="text-align:center"><span><br/></span></div><div><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</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Alamo Group Inc.:</span></div><div><span><br/></span></div><div style="margin-bottom:3pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Opinion on Internal Control Over Financial 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%">We have audited Alamo Group Inc. and subsidiaries' (the Company) internal control over financial reporting as of December 31, 2022, based on criteria established in Internal Control &#8211; Integrated Framework (2013) issued by the Committee of Sponsoring Organizations of the Treadway Commission. In our opinion, the Company maintained, in all material respects, effective internal control over financial reporting as of December 31, 2022, based on criteria established in Internal Control &#8211; Integrated Framework (2013) issued by the Committee of Sponsoring Organizations of the Treadway Commission.</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%">We also have audited, in accordance with the standards of the Public Company Accounting Oversight Board (United States) (PCAOB), the consolidated balance sheets of the Company as of December 31, 2022 and 2021, the related consolidated statements of income, comprehensive income, stockholders&#8217; equity, and cash flows for each of the years in the three-year period ended December 31, 2022, and the related notes (collectively, the consolidated financial statements), and our report dated February 23, 2023 expressed an unqualified opinion on those consolidated financial statements.</span></div><div><span><br/></span></div><div style="margin-bottom:3pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Basis for Opinion</span></div><div><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 Report of Management 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><span><br/></span></div><div><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. Our audit of internal control over financial reporting included obtaining an understanding of internal control over financial reporting, assessing the risk that a material weakness exists, and testing and evaluating the design and operating effectiveness of internal control based on the assessed risk. Our audit also included 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><span><br/></span></div><div style="margin-bottom:3pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Definition and Limitations of Internal Control Over Financial Reporting</span></div><div><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><span><br/></span></div><div><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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:71.637%"><tr><td style="width:1.0%"></td><td style="width:27.471%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:43.185%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:26.044%"></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:400;line-height:100%">&#160;</span></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-weight:400;line-height:100%">/s/ KPMG LLP</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:400;line-height:100%">San Antonio, Texas</span></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%">February 23, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div style="margin-bottom:8pt;text-align:justify"><span><br/></span></div><div style="height:38.25pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">46</span></div></div></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_106"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></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%">Alamo Group Inc. and Subsidiaries</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%">Consolidated Balance Sheets</span><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:58.284%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.430%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.630%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.524%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.632%"></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:'Times New Roman',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:700;line-height:100%">Year Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands, except per share amounts)</span></div></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%">2022</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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:700;line-height:100%">ASSETS</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:700;line-height:100%">&#160;</span></td></tr><tr><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:9pt;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:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash and cash equivalents</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQtMi0xLTEtNjM4ODc_1a537fcf-9715-4828-94ff-a827f1590b7d">47,016</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQtNC0xLTEtNjM4ODc_19096f68-1674-4830-942f-c1629833ceac">42,115</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accounts receivable, 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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzUtMi0xLTEtNjM4ODc_de0e9861-6ee6-4a25-8e41-f12b01cf17c0">317,581</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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzUtNC0xLTEtNjM4ODc_171596af-d562-45e9-b6ac-c77b08b8bce0">237,970</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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Inventories, net</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzYtMi0xLTEtNjM4ODc_d67d55af-ed65-4597-88f9-d619895ee232">352,553</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzYtNC0xLTEtNjM4ODc_fcaacfed-be2e-4848-9787-a37202b52b8f">320,917</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzgtMi0xLTEtNjM4ODc_5e7588c4-2714-401c-958e-5f0804814184">9,144</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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzgtNC0xLTEtNjM4ODc_672de752-e0bf-4eba-ab0c-8e2084638417">9,500</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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income tax receivable&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:IncomeTaxesReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzktMi0xLTEtNjM4ODc_7ca044c6-33d1-462a-8ead-e5440695612f">916</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:IncomeTaxesReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzktNC0xLTEtNjM4ODc_ec6e781e-1327-4016-9a95-3de3bb794b1d">1,666</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total current assets</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:AssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzEwLTItMS0xLTYzODg3_e311db1d-15ec-477d-b521-eb76559472c0">727,210</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;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:AssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzEwLTQtMS0xLTYzODg3_60c68ce6-8add-49a5-8b2e-866467d79e65">612,168</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:9pt"><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td></tr><tr><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:9pt;font-weight:400;line-height:100%">Rental 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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="alg:RentalEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzEyLTItMS0xLTYzODg3_885c7cd4-91c8-4a37-aba5-6147ec2e13ab">33,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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="alg:RentalEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzEyLTQtMS0xLTYzODg3_ebdbbf99-3a73-4a0f-afab-4d2b3462b830">32,514</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:9pt"><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td></tr><tr><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:9pt;font-weight:400;line-height:100%">Property, plant and equipment</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzE0LTItMS0xLTYzODg3_e6a1a3ed-b820-4d2f-a1b3-27659e893ee1">335,078</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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzE0LTQtMS0xLTYzODg3_443ba8b4-c059-4d4d-ad36-328ac2a30ae7">321,863</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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less:&#160; Accumulated depreciation</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzE1LTItMS0xLTYzODg3_8eeb5a6e-5fb0-4d78-b4a5-5f5661d84a1e">180,071</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzE1LTQtMS0xLTYzODg3_6c80c372-a639-4079-89e5-f586cc1182c2">169,372</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total property, plant and equipment, net</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzE2LTItMS0xLTYzODg3_806ee729-4a30-4667-874a-05c9f3ee6c8c">155,007</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;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzE2LTQtMS0xLTYzODg3_96f3b512-4525-463f-8dd2-9ce6a504398b">152,491</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:9pt"><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td></tr><tr><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:9pt;font-weight:400;line-height:100%">Goodwill</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzE4LTItMS0xLTYzODg3_c3f35dc1-7883-4720-8ce6-13a15584eda9">195,858</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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzE4LTQtMS0xLTYzODg3_e576bc7f-8f97-44c9-b496-2ac1dfa73144">202,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="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Intangible assets, net</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzE5LTItMS0xLTYzODg3_80d291df-acac-4d53-be13-8793f4f4186a">171,341</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzE5LTQtMS0xLTYzODg3_e987c135-7fec-497d-af49-3e44d8c9e69b">183,466</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Deferred income taxes</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DeferredIncomeTaxAssetsNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzIwLTItMS0xLTYzODg3_83e46d9b-eb1e-482e-943e-66b4e27ddbee">969</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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DeferredIncomeTaxAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzIwLTQtMS0xLTYzODg3_5099eff2-ee2c-4d3d-8fb0-5ed29ce47f43">1,110</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:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other non-current assets</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:OtherAssetsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzIxLTItMS0xLTYzODg3_890f5ea1-d6a5-45be-91cb-2ef0eaaf70ac">24,400</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:OtherAssetsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzIxLTQtMS0xLTYzODg3_7cbf5958-f1d2-40d6-90e0-b5477d0afdf6">21,587</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total assets</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzIyLTItMS0xLTYzODg3_34b49c83-838d-4aab-b3f6-6a4e9e0be827">1,308,508</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;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzIyLTQtMS0xLTYzODg3_83a95bd6-67c9-4c88-bc6b-152c8c664f43">1,205,742</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:9pt"><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #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:9pt;font-weight:700;line-height:100%">LIABILITIES AND STOCKHOLDERS&#8217; EQUITY</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:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Current liabilities:</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Trade 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: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="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:AccountsPayableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzI2LTItMS0xLTYzODg3_74512b09-061f-4c0b-b5bb-d4ae9cd0b834">97,537</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="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:AccountsPayableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzI2LTQtMS0xLTYzODg3_1257b9d3-81e0-48c7-bda3-43ab6fd474e7">101,396</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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income taxes payable</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:AccruedIncomeTaxesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzI3LTItMS0xLTYzODg3_13dace10-ff15-46fd-942f-739095d02bf5">6,592</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:AccruedIncomeTaxesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzI3LTQtMS0xLTYzODg3_4f724417-2f9b-4d37-9b08-96fae7c6fe8a">2,613</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued 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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:AccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzI4LTItMS0xLTYzODg3_5bf9699f-0112-49ae-8456-19caa0867e6d">71,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 colspan="2" style="background-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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:AccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzI4LTQtMS0xLTYzODg3_28c6c659-df49-4625-b1fa-07a05f97ceb2">73,523</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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Current maturities of long-term debt and finance lease obligations</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzI5LTItMS0xLTYzODg3_2db745ac-fc1e-4ff3-b293-1f754683874b">15,009</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzI5LTQtMS0xLTYzODg3_f6fb4cc7-bb13-4437-bff7-8ca7fdf0402b">15,032</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total current liabilities</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:LiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzMxLTItMS0xLTYzODg3_ec3657f9-f675-4298-93b5-083b1883367e">190,506</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;border-top:1pt solid #000;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:LiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzMxLTQtMS0xLTYzODg3_63223ec2-34d5-424c-bcd2-07421fa5cf94">192,564</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 style="height:9pt"><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td></tr><tr><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:9pt;font-weight:400;line-height:100%">Long-term debt and finance lease obligations, net of current maturities</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzMzLTItMS0xLTYzODg3_73c1779c-190a-471e-b63a-7d13d5a6dbcf">286,943</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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzMzLTQtMS0xLTYzODg3_c23a53ba-29d4-4cbe-b9b7-c5bb37f72f13">254,522</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:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Long-term tax liability</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:AccruedIncomeTaxesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM0LTItMS0xLTYzODg3_3ee04e0b-7655-4a78-8dac-fb438c87cb6b">3,781</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:AccruedIncomeTaxesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM0LTQtMS0xLTYzODg3_e277eeb5-ed25-4bf7-848b-bc8e64f27673">4,416</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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></tr><tr><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:9pt;font-weight:400;line-height:100%">Other long-term 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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:OtherLiabilitiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM2LTItMS0xLTYzODg3_228e6dd1-e649-467a-a243-25906431158c">23,668</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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:OtherLiabilitiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM2LTQtMS0xLTYzODg3_e40e79b9-c199-4ad6-baa1-a01463e1b347">27,119</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:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Deferred income taxes</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM3LTItMS0xLTYzODg3_5b9d526f-2c05-4045-aa0f-4ddb96ee453e">18,250</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM3LTQtMS0xLTYzODg3_e7d928d1-5dca-434a-9bad-1a157f42fa82">21,458</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Common stock, $<ix:nonFraction unitRef="usdPerShare" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM5LTAtMS0xLTYzODg3L3RleHRyZWdpb246Y2VmMDM1MGFkNjhhNDUyM2JhYzRjMGVhMTNjNzJhNGJfMTg_3542d67a-affa-4b5c-a4c9-ce4f3fbad0c4"><ix:nonFraction unitRef="usdPerShare" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM5LTAtMS0xLTYzODg3L3RleHRyZWdpb246Y2VmMDM1MGFkNjhhNDUyM2JhYzRjMGVhMTNjNzJhNGJfMTg_defa9df8-cb8c-4477-b2ec-85cf17adc985">.10</ix:nonFraction></ix:nonFraction> par value, <ix:nonFraction unitRef="shares" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="INF" name="us-gaap:CommonStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM5LTAtMS0xLTYzODg3L3RleHRyZWdpb246Y2VmMDM1MGFkNjhhNDUyM2JhYzRjMGVhMTNjNzJhNGJfMzI_386b3fe2-6794-4fae-aa70-d6bcca228f16"><ix:nonFraction unitRef="shares" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="INF" name="us-gaap:CommonStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM5LTAtMS0xLTYzODg3L3RleHRyZWdpb246Y2VmMDM1MGFkNjhhNDUyM2JhYzRjMGVhMTNjNzJhNGJfMzI_5f469594-ba04-46aa-b91e-4782998ec11e">20,000,000</ix:nonFraction></ix:nonFraction> shares authorized; <ix:nonFraction unitRef="shares" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM5LTAtMS0xLTYzODg3L3RleHRyZWdpb246Y2VmMDM1MGFkNjhhNDUyM2JhYzRjMGVhMTNjNzJhNGJfNTQ_1f3b2c20-941e-4b90-8854-07d9b90908cc">11,913,890</ix:nonFraction> and <ix:nonFraction unitRef="shares" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM5LTAtMS0xLTYzODg3L3RleHRyZWdpb246Y2VmMDM1MGFkNjhhNDUyM2JhYzRjMGVhMTNjNzJhNGJfNjE_3be32128-3aeb-4f17-9461-1cbb8087349e">11,874,178</ix:nonFraction> outstanding at December 31, 2022 and December 31, 2021, respectively</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:CommonStockValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM5LTItMS0xLTYzODg3_9b15a2fd-9ed6-4e76-a838-eca91e08072c">1,191</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:CommonStockValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM5LTQtMS0xLTYzODg3_416b9eed-21b6-4c79-84be-586ec7b5e144">1,187</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Additional paid-in capital</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:AdditionalPaidInCapitalCommonStock" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQwLTItMS0xLTYzODg3_5e002ec2-1070-4299-babb-9ba425332c63">129,820</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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:AdditionalPaidInCapitalCommonStock" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQwLTQtMS0xLTYzODg3_6b042b5b-60ea-4535-a094-0e9b82bcab0b">124,228</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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Treasury stock, at cost; <ix:nonFraction unitRef="shares" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="INF" name="us-gaap:TreasuryStockShares" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQxLTAtMS0xLTYzODg3L3RleHRyZWdpb246NGVjNTljZDlkYzkxNGMyMjhlYzBhNGY0OWY5ODNkZmFfMjk_7bc05fc1-90c5-4024-a826-a3001efeb918"><ix:nonFraction unitRef="shares" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="INF" name="us-gaap:TreasuryStockShares" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQxLTAtMS0xLTYzODg3L3RleHRyZWdpb246NGVjNTljZDlkYzkxNGMyMjhlYzBhNGY0OWY5ODNkZmFfMjk_9369b029-eb20-41c5-9c6f-e985b6083bec">82,600</ix:nonFraction></ix:nonFraction> shares at December 31, 2022 and December 31, 2021</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:TreasuryStockValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQxLTItMS0xLTYzODg3_148a68fd-796d-4c4a-97cd-e14d8130acba">4,566</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:TreasuryStockValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQxLTQtMS0xLTYzODg3_e521ad1c-939e-442c-8cb1-31a544bfe985">4,566</ix:nonFraction>)</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Retained earnings</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:RetainedEarningsAccumulatedDeficit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQyLTItMS0xLTYzODg3_a83db93d-feaa-464f-976f-94fa41c905b2">727,183</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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:RetainedEarningsAccumulatedDeficit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQyLTQtMS0xLTYzODg3_6f8fff2b-1352-49b0-baf9-d411988fa6e3">633,804</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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accumulated other comprehensive loss</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQzLTItMS0xLTYzODg3_2c89dbe9-4e10-4cda-8093-2b2f96c0ebed">68,268</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQzLTQtMS0xLTYzODg3_eb81a5fb-e12a-4ae3-b95b-721af0b9cce5">48,990</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total stockholders&#8217; equity</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQ0LTItMS0xLTYzODg3_3a7c718f-a98f-4afe-9a19-7874146df208">785,360</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;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQ0LTQtMS0xLTYzODg3_62a06ba5-ff9a-48a2-8487-21e410af347e">705,663</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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total liabilities and stockholders&#8217; equity</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:LiabilitiesAndStockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQ1LTItMS0xLTYzODg3_7cfa5608-7708-4011-91ed-b1f40898986c">1,308,508</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:LiabilitiesAndStockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQ1LTQtMS0xLTYzODg3_a6459426-1864-4e64-8d13-89a1ee681c7b">1,205,742</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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 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%">See accompanying notes.</span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">47</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span><br/></span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_109"></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Alamo Group Inc. and Subsidiaries</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%">Consolidated Statements of Income</span></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:45.312%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.049%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.613%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.049%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.613%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.049%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.615%"></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="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%">Year Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands, except per share amounts)</span></div></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%">2022</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%">2021</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%">2020</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Net sales:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:9pt;font-weight:400;line-height:100%">Vegetation Management</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: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="usd" contextRef="i0ff65971f8a344f3afdf75aa25d869f1_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzMtMi0xLTEtNjM4ODc_f0d6b8de-132b-4f4d-aaae-91374a7e4d88">937,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 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="usd" contextRef="if77ec05e8b684280b18475c39a8bf482_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzMtNC0xLTEtNjM4ODc_ce03696c-09e7-4d24-b459-273761bc59b1">812,676</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="usd" contextRef="i513fb2f7accf49ecacbc7116eafbe588_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzMtNi0xLTEtNjM4ODc_b08e91cb-e74f-4e27-92e5-00ceb6b10a7e">654,630</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:#def3c0;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%">Industrial Equipment</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ibaa2c0aa8b8145e0846cbc65655c330c_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzQtMi0xLTEtNjM4ODc_07de9278-0004-4705-882d-0a9c5fd66a28">576,551</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i3182e3589e3647f599dbed14ec3a5afe_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzQtNC0xLTEtNjM4ODc_83ff8470-442d-4867-a443-6da31bf73193">521,547</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i36cdf5e00a0245ce92a15de38f5924f4_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzQtNi0xLTEtNjM4ODc_0e45c70d-db1b-424c-b05b-28ab3b066513">508,836</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total net sales</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzYtMi0xLTEtNjM4ODc_e31d0506-0a9f-48bf-b1bd-f0e549fb8c36">1,513,616</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;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzYtNC0xLTEtNjM4ODc_b640eaaf-4a91-42fb-b3da-8c284093d955">1,334,223</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;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzYtNi0xLTEtNjM4ODc_9187fff0-7aa0-4616-b9ad-cb53f87677ea">1,163,466</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:#def3c0;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%">Cost of sales</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzctMi0xLTEtNjM4ODc_2596ce9e-556f-49d0-9af5-4e76d0b1cd9f">1,137,098</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzctNC0xLTEtNjM4ODc_34f1d9c8-e76f-415d-8095-57ca13d77f88">999,709</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzctNi0xLTEtNjM4ODc_6d6e94d7-9517-43c4-a7fd-d64b4bc7c3c3">869,736</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzgtMi0xLTEtNjM4ODc_d27e7bb4-3586-4d23-a2ca-31017bf49da3">376,518</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;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzgtNC0xLTEtNjM4ODc_c813c455-7d3c-4436-b046-45d4f4c46447">334,514</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;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzgtNi0xLTEtNjM4ODc_9e10e3dd-e65e-48d1-832b-7a4c150bf02e">293,730</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:11pt"><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:SellingGeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzEwLTItMS0xLTYzODg3_f52f0c11-3e74-4039-bbd5-6927409aea4a">212,649</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:SellingGeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzEwLTQtMS0xLTYzODg3_64e59c55-4d2b-4ba1-a0bf-156c6e346cbc">202,939</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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:SellingGeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzEwLTYtMS0xLTYzODg3_0ad63eef-83dd-49f6-bf88-ef9c19a3f465">184,199</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:#def3c0;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%">Amortization expense</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:AmortizationOfDeferredCharges" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzExLTItMS0xLTYzODg3_4e785a9e-2405-4e35-afa4-03112d68ead4">15,277</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:AmortizationOfDeferredCharges" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzExLTQtMS0xLTYzODg3_797c384d-e2bb-4d9d-99e4-d9112ef131a8">14,637</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:AmortizationOfDeferredCharges" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzExLTYtMS0xLTYzODg3_467a389b-297e-4d64-b6bb-e874f6a99ede">14,746</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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></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></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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="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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE0LTItMS0xLTYzODg3_ec46639d-f85f-4ac6-bb97-f06b03c3b3ee">148,592</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;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE0LTQtMS0xLTYzODg3_95104458-1103-4cad-92dc-770d24ff292a">116,938</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;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE0LTYtMS0xLTYzODg3_726ff840-c7af-4f5a-90f4-ddf50e6d8f5d">94,785</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:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Interest expense</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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:InterestExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE2LTItMS0xLTYzODg3_f5223f1d-1d0e-42b3-9711-06a49f0126c1">14,361</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:InterestExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE2LTQtMS0xLTYzODg3_1ecc2048-675a-4536-bc0f-8ab4f687c92e">10,533</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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:InterestExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE2LTYtMS0xLTYzODg3_81cdb537-244e-4016-83f4-37da28fee72b">15,837</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:#def3c0;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%">Interest income</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:InvestmentIncomeInterest" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE3LTItMS0xLTYzODg3_0fbf1f68-f704-4dad-83fe-5ff161d92759">752</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:InvestmentIncomeInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE3LTQtMS0xLTYzODg3_922f7649-913a-425f-bece-51dd7260823a">1,149</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:InvestmentIncomeInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE3LTYtMS0xLTYzODg3_a875eb22-fe5c-4ba1-86e8-41e441567cf9">1,366</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Other income</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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:OtherNonoperatingIncomeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE4LTItMS0xLTYzODg3_d8b1cb22-1e7f-4e41-b062-6c264217466d">673</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:OtherNonoperatingIncomeExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE4LTQtMS0xLTYzODg3_13544739-16d6-4a5a-89de-748480095619">1,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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:OtherNonoperatingIncomeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE4LTYtMS0xLTYzODg3_dc4fcd0e-359c-4256-8f6d-1cb165b092ee">557</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:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income before income taxes</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE5LTItMS0xLTYzODg3_449de8ee-cf39-4547-9a29-ff245f019066">134,310</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE5LTQtMS0xLTYzODg3_62263e8e-90c6-460e-baa3-1c31be7ba743">109,498</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE5LTYtMS0xLTYzODg3_3399568f-8d45-4bca-82cc-b4c301f35a6f">79,757</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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;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:#def3c0;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%">Provision for income taxes</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzIxLTItMS0xLTYzODg3_fdb3e006-2397-46e2-84f7-effbe8cde884">32,382</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzIxLTQtMS0xLTYzODg3_87644913-7c2c-427c-bbc0-0e8080a3c171">29,253</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzIxLTYtMS0xLTYzODg3_5197cb2f-134f-48ee-9a6d-0ce7187a18b8">21,953</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzIyLTItMS0xLTYzODg3_d4d28447-b066-471b-a176-316dc55b16bc">101,928</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;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzIyLTQtMS0xLTYzODg3_f9f14ea3-e7bb-4b2b-a96e-f36dab6a34cf">80,245</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;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzIyLTYtMS0xLTYzODg3_d6acac98-b6ee-4c54-a015-e2a30d9cb869">57,804</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:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #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:9pt;font-weight:400;line-height:100%">Net income per common share:</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:9pt;font-weight:400;line-height:100%">&#160;</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Basic</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI1LTItMS0xLTYzODg3_c9c00776-3c92-498c-8701-141090aefb68">8.58</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI1LTQtMS0xLTYzODg3_67c4b3d0-8294-457a-b79b-379caf6c59a9">6.78</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI1LTYtMS0xLTYzODg3_e5d3aab0-dc33-4e53-84a2-8d6dfd9fc24d">4.91</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Diluted</span></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:2pt 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-top:2pt 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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI2LTItMS0xLTYzODg3_89c4bf6c-7218-4422-bcac-20f193963056">8.54</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:2pt 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-top:2pt 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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI2LTQtMS0xLTYzODg3_3365ef31-c072-478c-b6c6-22da28021e7e">6.75</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:2pt 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-top:2pt 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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI2LTYtMS0xLTYzODg3_f42712df-a94c-4bc9-853d-311cc44487b9">4.88</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;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%">Average common shares:</span></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td></tr><tr><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:9pt;font-weight:400;line-height:100%">Basic</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI4LTItMS0xLTYzODg3_c52e511e-0874-437d-ab2a-c1323200fbed">11,877</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI4LTQtMS0xLTYzODg3_3a29c59c-2f7b-44c5-9f64-e040c6782a2f">11,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="shares" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI4LTYtMS0xLTYzODg3_7c770988-b2dc-4cc1-96fd-6da0a1162c4e">11,782</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:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Diluted</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt 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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI5LTItMS0xLTYzODg3_c5bf7c85-14fa-43b1-b645-48369ee4703d">11,934</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt 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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI5LTQtMS0xLTYzODg3_31617641-3509-418f-8847-0c1f336ce92a">11,896</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt 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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI5LTYtMS0xLTYzODg3_d6b1dd7d-bc95-4511-aeb6-b8ddcae0ebb3">11,845</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:10pt"><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.</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">48</span></div></div></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_112"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></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%">Alamo Group Inc. and Subsidiaries</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%">Consolidated Statements of Comprehensive Income</span></div><div><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><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:2.408%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.408%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:48.169%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.917%"></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:1.0%"></td><td style="width:2.262%"></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:1.0%"></td><td style="width:1.970%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.992%"></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:0 1pt"></td><td colspan="3" style="padding:0 1pt"></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%">Year Ended December 31,</span></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="9" style="border-bottom:1pt solid #000;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%">(in thousands)</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%">2022</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%">2021</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%">2020</span></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="9" style="background-color:#def3c0;border-bottom:1pt solid #000000;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:9pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzItNC0xLTEtNjM4ODc_8ed2a862-2a42-43ca-9f09-65b7274f3e16">101,928</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzItNi0xLTEtNjM4ODc_411a0a83-673c-4566-9698-286fe7ad7d54">80,245</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzItOC0xLTEtNjM4ODc_680710bc-e604-461e-ba31-a76384b4eaaf">57,804</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="9" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other comprehensive income (loss), net of tax:</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;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;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="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="6" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign currency translation adjustment, net of tax (expense) benefit of $<ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzQtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjoyZWU2NzE0M2VkZGI0ZjYxODQ5OWIyNDBiNGRiMDlhZF83Nw_7ca9ab3d-5f50-43df-a608-6759eb44d122">1,069</ix:nonFraction>, $(<ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzQtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjoyZWU2NzE0M2VkZGI0ZjYxODQ5OWIyNDBiNGRiMDlhZF84MQ_f4c3f818-cab8-4dd6-880a-0048d8b19168">344</ix:nonFraction>), and $<ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzQtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjoyZWU2NzE0M2VkZGI0ZjYxODQ5OWIyNDBiNGRiMDlhZF84OQ_760b3ca2-cb93-42c4-99ab-d3f247c21d2b">810</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzQtNC0xLTEtNjM4ODc_a21d0243-e32c-4766-934d-5b4feffc7e93">23,032</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzQtNi0xLTEtNjM4ODc_4018bce0-c006-43b3-a2e0-a1ffaa757016">15,800</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzQtOC0xLTEtNjM4ODc_31e121ef-3b3e-4215-9659-18c0390407bf">8,862</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="6" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Unrealized income (loss) on derivative instruments, net of tax (expense) benefit of $(<ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzYtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjpkZjNmZWRlNGM3NTA0NzgxYWFlYjgxZjAxNDRiOWM2OF84OA_89a54faf-b784-4a0e-ab2f-364eaa753af0">497</ix:nonFraction>), $(<ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzYtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjpkZjNmZWRlNGM3NTA0NzgxYWFlYjgxZjAxNDRiOWM2OF85Mg_52da8b72-3366-4a5b-8339-01fcbec52bdd">1,405</ix:nonFraction>), and $<ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzYtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjpkZjNmZWRlNGM3NTA0NzgxYWFlYjgxZjAxNDRiOWM2OF8xMDA_059ade29-63a4-4ef6-93d6-9b0ce12f45c0">1,842</ix:nonFraction>, respectively</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzYtNC0xLTEtNjM4ODc_871b7e30-b084-4827-b224-627f25f8e62f">2,047</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzYtNi0xLTEtNjM4ODc_97206d10-5ea9-4daa-8305-d8c4abd77b69">5,298</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzYtOC0xLTEtNjM4ODc_5d480760-46a4-404d-b73e-88216de3a7e1">7,484</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="6" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Recognition of deferred pension and other post-retirement benefits, net of tax (expense) benefit of $(<ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzctMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo4MzU0MmViNmVkMTQ0MGZmYTkyMmQxM2QyZDQ3ODIxNF8xMDQ_028146f7-7bdc-4fd6-94e0-7b4bd1ac3695">194</ix:nonFraction>), $(<ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzctMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo4MzU0MmViNmVkMTQ0MGZmYTkyMmQxM2QyZDQ3ODIxNF8xMDg_004bf464-c5db-49f4-b658-c450d69e8aa6">356</ix:nonFraction>), and $<ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzctMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo4MzU0MmViNmVkMTQ0MGZmYTkyMmQxM2QyZDQ3ODIxNF8xMTY_9df70f4c-12c8-4d7c-860b-2a60a72df028">230</ix:nonFraction>, respectively</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzctNC0xLTEtNjM4ODc_6e7add7d-8616-404d-8ba5-eaac6eedc20c">1,707</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzctNi0xLTEtNjM4ODc_4dda4466-cb82-4726-87e9-7a190dc95219">1,838</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(866)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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></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;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other comprehensive (loss) income, net of tax</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzEwLTQtMS0xLTYzODg3_55382bd7-8893-4b7c-be24-f7b85813cdf3">19,278</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzEwLTYtMS0xLTYzODg3_9c614451-4c30-4593-b116-07dd1147b3f6">8,664</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzEwLTgtMS0xLTYzODg3_8779f572-f90b-4d08-9641-51a034790a3d">512</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:middle"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="9" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Comprehensive income </span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzExLTQtMS0xLTYzODg3_12fbe041-5762-4f44-a54c-b0b69ddf75b0">82,650</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzExLTYtMS0xLTYzODg3_8e6087dc-5280-4931-b901-d9079e2e7b62">71,581</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzExLTgtMS0xLTYzODg3_ce60afb7-0814-4dd5-b60b-89d3aa938847">58,316</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="display:none"></td></tr></table></div><div><span><br/></span></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%">See accompanying notes.</span></div><div style="text-align:center"><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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">49</span></div></div></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_115"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></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%">Alamo Group Inc. and Subsidiaries</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%">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%">&#160;</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.863%"><tr><td style="width:1.0%"></td><td style="width:32.142%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.876%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.560%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.894%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.202%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.304%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.971%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.031%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.791%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.304%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.159%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.304%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.662%"></td><td style="width:0.1%"></td></tr><tr style="height:27pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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: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:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Additional</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Paid-in Capital</span></div></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:9pt;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:9pt;font-weight:700;line-height:100%">Retained Earnings</span></td><td colspan="9" rowspan="2" 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:9pt;font-weight:700;line-height:100%">Accumulated</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Other</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Comprehensive Income</span></div></td><td colspan="3" rowspan="2" 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:9pt;font-weight:700;line-height:100%">Total Stock-</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">holders&#8217; Equity</span></div></td></tr><tr style="height:14pt"><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%">(in thousands)</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%">Shares</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%">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></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Balance at December 31, 2019</span></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="i48e658fbd10f456086edb59193159816_I20191231" decimals="-3" name="us-gaap:SharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzItMS0xLTEtNjM4ODc_35ed6d16-66af-4fb1-bf22-63a28a35047f">11,670</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="i48e658fbd10f456086edb59193159816_I20191231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzItMi0xLTEtNjM4ODc_1b31be55-3d1d-4ddc-9160-ca1ec3d8740c">1,175</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="idfff0fc4e5bf4119bba14d59d225d229_I20191231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzItNC0xLTEtNjM4ODc_1c182fee-5b1a-404b-bb8c-6643d2fa18f5">113,666</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="i106a5b274aba4c6d889b696421f6d462_I20191231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzItNi0xLTEtNjM4ODc_76766448-1341-44f6-9c0a-e26e4fc700c3">4566</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="i5564749cfaa941a9b9c4d886886c9bc2_I20191231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzItOC0xLTEtNjM4ODc_6b691b4a-af2e-43c9-8382-17e9429c1f54">508,506</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="i6b5a981954b0422baa6e0bc09771aaf4_I20191231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzItMTAtMS0xLTYzODg3_8ec8290c-94b4-48b0-9666-a0dab2ca5953">40,838</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="i418e1db8b7e1486ea4572f36257de9de_I20191231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzItMTItMS0xLTYzODg3_9a0efa61-1369-4a85-92ae-26c452b02d60">577,943</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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><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:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other comprehensive 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: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><td colspan="2" style="background-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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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="i44bc7e6d50f24c73a6c3024416870968_D20200101-20201231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzgtOC0xLTEtNjM4ODc_ddc30a47-9154-4a78-aeaf-f56a498d4d31">57,804</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="ie4e7d0b6ff9343ecb2865f65c12499ce_D20200101-20201231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzgtMTAtMS0xLTYzODg3_c65bce1e-3fd5-4323-a55a-06c6895cc322">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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzgtMTItMS0xLTYzODg3_988f226e-ded6-438f-98a2-335bf32e9928">58,316</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:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock-based compensation expense</span></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ia7915fed79c644b58899d17704d5719d_D20200101-20201231" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzktNC0xLTEtNjM4ODc_d7964470-2d7d-48cc-b838-b127d91e2891">4,119</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzktMTItMS0xLTYzODg3_6528f26d-4106-492f-891c-8614e3edd3aa">4,119</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock-based compensation transactions</span></td><td colspan="2" style="background-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="ic2896861ae284cbc8784e33f237b15b8_D20200101-20201231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzEwLTEtMS0xLTYzODg3_487ceef1-b450-4f66-85a2-de2d52c7eec5">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="2" style="background-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="ic2896861ae284cbc8784e33f237b15b8_D20200101-20201231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzEwLTItMS0xLTYzODg3_9625b2a0-c721-4ed1-bf10-4bcd6e8b921e">6</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="ia7915fed79c644b58899d17704d5719d_D20200101-20201231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzEwLTQtMS0xLTYzODg3_ab7fd2e4-903c-4b82-8cee-9c550150e4fc">743</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%">&#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: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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzEwLTEyLTEtMS02Mzg4Nw_992e220d-e2db-4f63-b695-78809332fa9a">749</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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Dividends paid ($<ix:nonFraction unitRef="usdPerShare" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="INF" name="us-gaap:CommonStockDividendsPerShareCashPaid" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzEzLTAtMS0xLTYzODg3L3RleHRyZWdpb246MzYwMzRjNmU3NTcyNDhlZGFiNDc1YmY3YWQxNGRiNjZfMjA_8e9129ab-953b-4645-b119-be1b450d9573">0.52</ix:nonFraction> per share)</span></div></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i44bc7e6d50f24c73a6c3024416870968_D20200101-20201231" decimals="-3" name="us-gaap:DividendsCash" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzEzLTgtMS0xLTYzODg3_af485ae8-6295-4113-82fc-3e8e7190ab76">6,124</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:DividendsCash" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzEzLTEyLTEtMS02Mzg4Nw_8fa3b233-a4d5-4063-a3ef-ec4f3ce82953">6,124</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%">Balance at December 31, 2020</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i4b34ed98c2754071a4684bfcab1d4059_I20201231" decimals="-3" name="us-gaap:SharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzE0LTEtMS0xLTYzODg3_64c6f577-175c-4c69-8573-c4fc8932a963">11,727</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 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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4b34ed98c2754071a4684bfcab1d4059_I20201231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzE0LTItMS0xLTYzODg3_8c48ec0b-ac01-4b85-9054-c2d880874e1a">1,181</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;border-top:1pt solid #000;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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i54d9a911820d4073a29730b9df2e92c0_I20201231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzE0LTQtMS0xLTYzODg3_7fe6ae0b-97a2-4d8f-bcc5-9a60074ff359">118,528</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;border-top:1pt solid #000;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:9pt;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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ie02f87b7278a4b05a734307040b023ae_I20201231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzE0LTYtMS0xLTYzODg3_09ee90ed-8c7d-4b70-9422-015faa87c8bb">4,566</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;border-top:1pt solid #000;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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i70aaf8f3036d4bf8b567c4ab7b4b3578_I20201231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzE0LTgtMS0xLTYzODg3_f35a4996-9d98-478f-b750-63ded0569367">560,186</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;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i8d341c55254649f983daa2187dbb3c28_I20201231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzE0LTEwLTEtMS02Mzg4Nw_1ddebb3b-ce69-4757-9ccb-167142ffa4a8">40,326</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;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5d74fc3138934e70861715f06fa062c7_I20201231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzE0LTEyLTEtMS02Mzg4Nw_6666a3ec-97e2-4e76-93d9-e23ac4532efc">635,003</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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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><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:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other comprehensive income</span></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i841cff3d2384466d8e02cc714034bb6d_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzIwLTgtMS0xLTYzODg3_17b9e69f-f9a4-48b3-8cd7-98824aa6ef94">80,245</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i94acb5b8cf414532a2b46fc4de433694_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzIwLTEwLTEtMS02Mzg4Nw_f23fcb7a-65b7-438d-a456-9fbee5b3e7dd">8,664</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzIwLTEyLTEtMS02Mzg4Nw_96cbbbd4-2ac5-4689-a614-c9bff0a6cc9a">71,581</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock-based 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: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><td colspan="2" style="background-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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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="icce422c6406346e18a3c8ece4f20af69_D20210101-20211231" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzIxLTQtMS0xLTYzODg3_d87c45fb-bd0c-4e1f-b222-39937a2d377c">5,987</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%">&#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: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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzIxLTEyLTEtMS02Mzg4Nw_77b6add1-6c96-469d-b5e0-ca48c9666dbb">5,987</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:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock-based compensation transactions</span></td><td colspan="2" style="background-color:#def3c0;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="i1492e60d49a541618463d2ed72a8cb55_D20210101-20211231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzIyLTEtMS0xLTYzODg3_af6bfb13-a599-4b3c-b9b6-4a6f1a014b82">64</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#def3c0;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="i1492e60d49a541618463d2ed72a8cb55_D20210101-20211231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzIyLTItMS0xLTYzODg3_a918f81d-f114-481b-be90-e9397897c939">6</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="icce422c6406346e18a3c8ece4f20af69_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzIyLTQtMS0xLTYzODg3_36cce910-6342-4de0-b249-71c43ebafd04">287</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzIyLTEyLTEtMS02Mzg4Nw_4eb0ed56-9505-41e2-ab24-bbeccf8f9ea8">281</ix:nonFraction>)</span></td><td style="background-color:#def3c0;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="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Dividends paid ($<ix:nonFraction unitRef="usdPerShare" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="INF" name="us-gaap:CommonStockDividendsPerShareCashPaid" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzI1LTAtMS0xLTYzODg3L3RleHRyZWdpb246NTI1MWEzZDE2YTNiNGYwMTljYjAwMTQxYjU0NWNjZmVfMjA_5752cdd9-157c-4867-873b-a41098c7a74a">0.56</ix:nonFraction> per share)</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: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><td colspan="2" style="background-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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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="i841cff3d2384466d8e02cc714034bb6d_D20210101-20211231" decimals="-3" name="us-gaap:DividendsCash" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzI1LTgtMS0xLTYzODg3_f5d1351c-331d-44ac-9fcf-55e67a0bb40b">6,627</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%">&#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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:DividendsCash" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzI1LTEyLTEtMS02Mzg4Nw_246488c6-29f2-4cd2-8407-572f7173467a">6,627</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:#def3c0;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:9pt;font-weight:400;line-height:100%">Balance at December 31, 2021</span></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="i1187989f17d7447e820b47bb6d9b9567_I20211231" decimals="-3" name="us-gaap:SharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzI2LTEtMS0xLTYzODg3_7a9310bf-07dc-4edd-9a71-9007e9672287">11,791</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="i1187989f17d7447e820b47bb6d9b9567_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzI2LTItMS0xLTYzODg3_e2433350-4f8f-4d20-a91a-48e6013ca11f">1,187</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="i960c9c28c1b54a86adbc27a79d0d61e1_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzI2LTQtMS0xLTYzODg3_fa778e12-d7f1-4f43-8cac-6700a978fc5c">124,228</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="i14d095e48a754e0d84deb55dea0e7534_I20211231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzI2LTYtMS0xLTYzODg3_a13a03d8-6df3-4fc5-bddd-17581fba094c">4,566</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="i7ae6563033b64c3fafae6f088fa245ef_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzI2LTgtMS0xLTYzODg3_71575759-37c1-4aba-8510-f9a5270b7a2d">633,804</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="i3114f6dde5534997ba147bf29b5ba918_I20211231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzI2LTEwLTEtMS02Mzg4Nw_adf5eadd-1b1c-4719-8ca8-b38dd50e8d6a">48,990</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzI2LTEyLTEtMS02Mzg4Nw_743bf187-0324-4408-9851-fd0821b85de0">705,663</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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><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:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other comprehensive 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: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><td colspan="2" style="background-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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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="i39fb48d3870446bf93d15f60c7d73de6_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzMyLTgtMS0xLTYzODg3_f0e0e39a-78bf-4605-8582-05b941ed7137">101,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="2" style="background-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="i3e48d85ced0f4198be5b279ed3c2cf71_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzMyLTEwLTEtMS02Mzg4Nw_308b8ba3-5796-4856-a3ae-aa33939db663">19,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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzMyLTEyLTEtMS02Mzg4Nw_975e43cb-6027-4aff-9c1c-033bcad5cc26">82,650</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:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock-based compensation expense</span></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ida534350511f461cb3aeef03f954f40b_D20220101-20221231" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzMzLTQtMS0xLTYzODg3_9eb3b0ee-755d-4c38-82bd-a5f63036bbea">5,561</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzMzLTEyLTEtMS02Mzg4Nw_85b8f98d-6a73-4ba5-87db-2ddf4deb0b92">5,561</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock-based compensation transactions</span></td><td colspan="2" style="background-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="i22b42d26702846c7afbfed5d7f050f34_D20220101-20221231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM0LTEtMS0xLTYzODg3_80767b9f-6ca8-4c7d-8c87-ab9fd9f8ee7b">40</ix:nonFraction>&#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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i22b42d26702846c7afbfed5d7f050f34_D20220101-20221231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM0LTItMS0xLTYzODg3_7a5796a2-4337-4b1b-b579-e47c2d1d7984">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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ida534350511f461cb3aeef03f954f40b_D20220101-20221231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM0LTQtMS0xLTYzODg3_3c412d5f-8d59-4004-afaa-bb452eb50135">31</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%">&#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: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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM0LTEyLTEtMS02Mzg4Nw_c5006a18-578d-44c6-93d2-d156b00b6922">35</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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Dividends paid ($<ix:nonFraction unitRef="usdPerShare" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="INF" name="us-gaap:CommonStockDividendsPerShareCashPaid" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM4LTAtMS0xLTYzODg3L3RleHRyZWdpb246ZTJhZjcxYjliZDkwNDZhN2FhMWY3ZjJjOTZhYjViYzNfMjA_d9861e51-ac4b-4141-be27-a993e3786a66">0.72</ix:nonFraction> per share)</span></div></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i39fb48d3870446bf93d15f60c7d73de6_D20220101-20221231" decimals="-3" name="us-gaap:DividendsCash" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM4LTgtMS0xLTYzODg3_cb2fe203-96aa-4c5c-95f5-5a7d7bc8a2dd">8,549</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:DividendsCash" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM4LTEyLTEtMS02Mzg4Nw_3ed82031-78ee-49f6-b3d2-3b2e778afaaf">8,549</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Balance at December 31, 2022</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:2pt solid #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="i4c2db2597449494ca1e4c906c5f2f579_I20221231" decimals="-3" name="us-gaap:SharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM5LTEtMS0xLTYzODg3_63022c6c-9836-472a-98e4-3c9e0c4829af">11,831</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt 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:2pt solid #000;border-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="i4c2db2597449494ca1e4c906c5f2f579_I20221231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM5LTItMS0xLTYzODg3_d0f29e25-9f4c-4f91-b218-f4956aab6248">1,191</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt 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:2pt solid #000;border-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="ibd1277243f684704b4f9ee8707aed2a0_I20221231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM5LTQtMS0xLTYzODg3_94340b83-c410-4e90-90d8-8d656c805056">129,820</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt 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:2pt solid #000;border-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="i7a77b0d7f923475a9263322e96150bb1_I20221231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM5LTYtMS0xLTYzODg3_6be2df9a-7a2b-42d6-931e-9a0bffa5624d">4,566</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt 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:2pt solid #000;border-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="i19088741b3fd4eba9737feda62eb75f5_I20221231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM5LTgtMS0xLTYzODg3_f363d91b-f3d4-4965-ab50-4a6e4c70f85e">727,183</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt 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:2pt solid #000000;border-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="ib613492db2fd4fb0b699d97c44b617be_I20221231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM5LTEwLTEtMS02Mzg4Nw_8fff2557-9e11-4c71-b7fa-e83c62751723">68,268</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #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;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt 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:2pt solid #000000;border-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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM5LTEyLTEtMS02Mzg4Nw_247deb05-7ca0-48f9-ad80-c0630e4808e1">785,360</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #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 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.</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">50</span></div></div></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_118"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></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%">Alamo Group Inc. and Subsidiaries</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%">Consolidated Statements of Cash Flows</span><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:63.373%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.402%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.408%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.402%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.408%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.407%"></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-weight:700;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:9pt;font-weight:700;line-height:100%">Year Ended December 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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</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%">2020</span></td></tr><tr><td colspan="3" style="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:9pt;font-weight:700;line-height:100%">Operating Activities</span></td><td colspan="3" style="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:9pt;font-weight:700;line-height:100%">&#160;</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:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Net income</span></td><td style="background-color:#def3c0;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:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMtMS0xLTEtNjM4ODc_5b3ba611-d01c-434f-b9bc-127c006b4be1">101,928</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMtMy0xLTEtNjM4ODc_8dd52725-33dc-433d-9edd-762b7cd5ba47">80,245</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMtNS0xLTEtNjM4ODc_ad7f7373-ccd0-4fc0-bd9b-ced119359391">57,804</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Adjustments to reconcile net income to cash provided by operating activities:</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Provision for doubtful accounts</span></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:ProvisionForDoubtfulAccounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUtMS0xLTEtNjM4ODc_29a02a57-1755-4fb7-ba62-4fd146a15a51">424</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:ProvisionForDoubtfulAccounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUtMy0xLTEtNjM4ODc_1f8d85a7-1f66-434f-acad-cb4850b33279">506</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:ProvisionForDoubtfulAccounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUtNS0xLTEtNjM4ODc_f052cf60-e601-44a8-aa56-e49644df9f03">860</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation - PP&amp;E</span></td><td colspan="2" style="background-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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:Depreciation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzYtMS0xLTEtNjM4ODc_694aa300-d007-4be4-91e2-1835efe06567">23,673</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:Depreciation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzYtMy0xLTEtNjM4ODc_2d8353ea-34bb-47af-a0ac-060c1370e7ce">21,229</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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:Depreciation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzYtNS0xLTEtNjM4ODc_5e2331d2-a229-4934-9dbe-df18f19db94f">19,264</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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation - Rental</span></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:EquipmentExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzctMS0xLTEtNjM4ODc_114f2ceb-fde9-4ead-ab4b-d09c02d6b130">7,739</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:EquipmentExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzctMy0xLTEtNjM4ODc_856c8984-c8d5-408d-b529-e644e1bfde16">8,613</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:EquipmentExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzctNS0xLTEtNjM4ODc_cceb3c8c-1944-4d47-a20c-99117e580dcc">9,830</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Amortization of intangibles</span></td><td colspan="2" style="background-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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzgtMS0xLTEtNjM4ODc_5c02763e-d153-4718-989f-b867db196992">15,277</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzgtMy0xLTEtNjM4ODc_c666c711-97e8-4163-929b-d22b58ceb98c">14,637</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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzgtNS0xLTEtNjM4ODc_9fdca67b-b0f7-4ac0-ab9d-5c55265f5ab4">14,746</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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Amortization of debt issuance</span></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:AmortizationOfFinancingCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzktMS0xLTEtNjM4ODc_ac2cdbae-1005-49eb-9b1c-6aebdc90bff3">667</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:AmortizationOfFinancingCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzktMy0xLTEtNjM4ODc_034db642-4ac7-492e-a12f-49bc2cf08a88">667</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:AmortizationOfFinancingCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzktNS0xLTEtNjM4ODc_46494392-c536-447d-abb2-3e5708cc9ef8">634</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock-based 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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:ShareBasedCompensation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzEyLTEtMS0xLTYzODg3_f986177b-a4b4-47e9-b9e6-2319884e26e3">5,561</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:ShareBasedCompensation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzEyLTMtMS0xLTYzODg3_7309b5d8-4628-4239-8071-743a5cd3510b">5,987</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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:ShareBasedCompensation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzEyLTUtMS0xLTYzODg3_ae4045c0-9ce8-49f3-8dd7-f8871e9ce359">4,119</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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Provision for deferred income tax (benefit) expense</span></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:DeferredIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE0LTEtMS0xLTYzODg3_c0f8f630-97ee-4446-b881-3f8ed8b66a5e">2,337</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:DeferredIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE0LTMtMS0xLTYzODg3_bb16af1c-509b-458d-a2c4-9db15db371cc">1,182</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE0LTUtMS0xLTYzODg3_d5e17b10-5905-4d93-907f-d3696ea3c352">855</ix:nonFraction>)</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gain on sale of 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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE1LTEtMS0xLTYzODg3_8d9eee0f-8eac-4bc9-a767-0c1c00f13d5c">161</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE1LTMtMS0xLTYzODg3_e906181a-4647-434a-aed5-c0d470e98cd7">3,779</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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE1LTUtMS0xLTYzODg3_8e0e7534-803d-448a-b384-f8f2a6be706e">1,094</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:9pt"><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Changes in operating assets and liabilities, net of acquisitions:</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;&#160;&#160;&#160;&#160; &#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accounts receivable</span></div></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE4LTEtMS0xLTYzODg3_8ad26a61-05d0-4fed-b25a-eab6bb0a6a34">85,055</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE4LTMtMS0xLTYzODg3_8b9747e7-9a51-465e-9074-5ddbe0bb6561">27,571</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE4LTUtMS0xLTYzODg3_7e8e098e-77fc-4c2b-bdf2-0790c4a54b5a">28,064</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE5LTEtMS0xLTYzODg3_9c27385f-a10f-463e-ad7d-5d204180f582">37,739</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE5LTMtMS0xLTYzODg3_c3842171-a035-4a1c-80a2-d09ee40aaa55">78,463</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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE5LTUtMS0xLTYzODg3_ad2c23e9-d13d-4bef-83a5-84a359ee386a">38,275</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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Rental equipment</span></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="alg:IncreaseDecreaseInRentalEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIwLTEtMS0xLTYzODg3_be67f739-5d72-42b1-aa44-397210d17864">9,196</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" sign="-" name="alg:IncreaseDecreaseInRentalEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIwLTMtMS0xLTYzODg3_546c97f7-a893-443b-9833-a3d0c2614273">1,138</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="alg:IncreaseDecreaseInRentalEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIwLTUtMS0xLTYzODg3_20c2b60e-b1ee-462f-b1b3-9847cca9bd92">4,542</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Prepaid expenses and 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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIxLTEtMS0xLTYzODg3_cd8fef7c-fc15-475b-9b47-4c724bd14526">6,146</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIxLTMtMS0xLTYzODg3_bdd7b184-4976-445e-a8f8-d9e1f4c5f0cf">6,994</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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIxLTUtMS0xLTYzODg3_5bbd3d7b-67b9-4544-b3b0-57eb017108ab">6,373</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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Trade accounts payable and accrued liabilities</span></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIyLTEtMS0xLTYzODg3_7d07843a-fbf1-4bd4-aa58-ed93de41d055">2,879</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIyLTMtMS0xLTYzODg3_d8511b28-bcab-4696-9464-0981471c9ac7">32,532</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIyLTUtMS0xLTYzODg3_90d80c7a-a508-4279-a143-0a602d36d893">3,783</ix:nonFraction>)</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income taxes 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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIzLTEtMS0xLTYzODg3_50b75ca5-3663-4c6f-ac70-78e63f770246">2,934</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIzLTMtMS0xLTYzODg3_a237f52d-b0bb-4219-9ad6-5cf4a590212d">4,648</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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIzLTUtMS0xLTYzODg3_c3423593-0a08-4487-9287-f3ba39986a15">6,601</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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Long term tax payable</span></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccruedTaxesPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI0LTEtMS0xLTYzODg3_f7971a8d-a384-4fea-af3c-79b82052bd40">635</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:IncreaseDecreaseInAccruedTaxesPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI0LTMtMS0xLTYzODg3_23867e86-1fe7-4e38-904e-fd9ba1b84a75">462</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccruedTaxesPayable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI0LTUtMS0xLTYzODg3_aaf3781b-a909-4318-8b32-c6de2dd84b40">3,478</ix:nonFraction>)</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other assets and liabilities, 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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI1LTEtMS0xLTYzODg3_0e0acf20-1e97-4db0-9f55-c33b1ce3072c">475</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI1LTMtMS0xLTYzODg3_9b92ce76-0b64-4235-ba9d-c9b3499830b1">3,008</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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI1LTUtMS0xLTYzODg3_d4044989-964b-4cf1-b7a4-4bf2dac75368">2,431</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:#def3c0;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:9pt;font-weight:400;line-height:100%">Net cash provided by operating activities</span></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI2LTEtMS0xLTYzODg3_97820100-d564-4bd7-80a3-6bc1c562c03a">14,530</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI2LTMtMS0xLTYzODg3_1626e6bc-c6a2-4212-9bc6-75a57479b618">49,667</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI2LTUtMS0xLTYzODg3_f34245df-2811-46a9-b5d0-ef5021ed4020">184,333</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:9pt"><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Investing Activities</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:9pt;font-weight:400;line-height:100%">Acquisitions, net of cash acquired</span></td><td colspan="2" style="background-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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI5LTEtMS0xLTYzODg3_5a146098-a37f-4dcb-a2e5-892dd301249d">2,000</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI5LTMtMS0xLTYzODg3_9571f12e-53d4-4ca5-a9ec-7facdb255ee9">17,798</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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI5LTUtMS0xLTYzODg3_5febaa44-a593-42a4-9750-055227255810">&#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:#def3c0;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%">Purchase of property, plant and equipment</span></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMwLTEtMS0xLTYzODg3_5bb2f17c-5835-4849-8e1f-b16ab727fdd6">31,141</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMwLTMtMS0xLTYzODg3_5b22568e-339b-421e-84dd-6d0948165a17">25,263</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMwLTUtMS0xLTYzODg3_3c397f18-df2a-4dc1-834a-a2beac551dcd">17,874</ix:nonFraction>)</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Proceeds from sale of 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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMxLTEtMS0xLTYzODg3_027e0b0e-f79e-4d45-adad-5a7e7af2f48d">1,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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMxLTMtMS0xLTYzODg3_ac887e41-92e0-4d18-83d9-8b342378333e">9,667</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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMxLTUtMS0xLTYzODg3_29c1791d-d97e-4862-b806-c6fd8f7bc6b2">3,703</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:#def3c0;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%">Purchase of patents</span></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsToAcquireIntangibleAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMyLTEtMS0xLTYzODg3_809c756f-86cf-4310-89b5-a01e934d3675">163</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquireIntangibleAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMyLTMtMS0xLTYzODg3_b5819f21-29b6-4697-a9a7-2db510bbf6b7">44</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsToAcquireIntangibleAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMyLTUtMS0xLTYzODg3_e54db6ba-3fc7-490d-bdcf-46054ecd6ae4">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%">Net cash used in investing 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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMzLTEtMS0xLTYzODg3_5d5f090e-d8eb-47ad-a2fc-1d33980496ed">31,738</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;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMzLTMtMS0xLTYzODg3_8c1b347d-2824-4282-8d36-0fa822f59889">33,438</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;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMzLTUtMS0xLTYzODg3_44192a49-2f0a-4095-882d-20e67564208e">14,171</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 style="height:9pt"><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:700;line-height:100%">Financing Activities</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:9pt;font-weight:700;line-height:100%">&#160;</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:9pt;font-weight:700;line-height:100%">&#160;</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><td colspan="3" style="background-color:#def3c0;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%">Borrowings on bank revolving credit facility</span></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:ProceedsFromLinesOfCredit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzM2LTEtMS0xLTYzODg3_765b5d7b-e46b-4cd4-932c-6dff029832ff">222,000</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:ProceedsFromLinesOfCredit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzM2LTMtMS0xLTYzODg3_cd7eca88-1d17-4a84-a2e6-215361597e4c">188,000</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:ProceedsFromLinesOfCredit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzM2LTUtMS0xLTYzODg3_e304f9a9-6b2f-4564-ae3e-4f7b8be66e56">115,000</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Repayment on bank revolving credit facility</span></td><td colspan="2" style="background-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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:RepaymentsOfLinesOfCredit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzM3LTEtMS0xLTYzODg3_c2dce3ca-7723-48d3-a5b2-2d50fdf91506">174,000</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:RepaymentsOfLinesOfCredit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzM3LTMtMS0xLTYzODg3_19bf066a-954d-4fc5-bc8d-82d4a3810a67">189,000</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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:RepaymentsOfLinesOfCredit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzM3LTUtMS0xLTYzODg3_0033a2d3-54db-4f96-b376-76d06644cdcc">255,000</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:#def3c0;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%">Principal payments on long-term debt and capital leases</span></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:ProceedsFromRepaymentsOfOtherLongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzM4LTEtMS0xLTYzODg3_8b7a4eb8-90dc-4758-ab4c-70c75f105711">15,031</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:ProceedsFromRepaymentsOfOtherLongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzM4LTMtMS0xLTYzODg3_77a5109b-8fe6-4d7c-9463-3962413b4ea4">15,093</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:ProceedsFromRepaymentsOfOtherLongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzM4LTUtMS0xLTYzODg3_1017f622-702a-44f5-8fa6-d8ab3190d899">18,867</ix:nonFraction>)</span></td><td style="background-color:#def3c0;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;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Dividends paid</span></td><td colspan="2" style="background-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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsOfDividendsCommonStock" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQxLTEtMS0xLTYzODg3_9b526537-20a8-42a9-83f9-bcf2a99d2221">8,549</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsOfDividendsCommonStock" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQxLTMtMS0xLTYzODg3_7c381c70-0c65-4b1e-9b20-c27178435985">6,627</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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsOfDividendsCommonStock" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQxLTUtMS0xLTYzODg3_709a0df8-2948-466a-9109-528282560683">6,124</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:#def3c0;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%">Proceeds from exercise of stock options</span></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:ProceedsFromIssuanceOfCommonStock" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQyLTEtMS0xLTYzODg3_96d7b054-6caf-40db-b4bf-86b6a901be7a">803</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:ProceedsFromIssuanceOfCommonStock" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQyLTMtMS0xLTYzODg3_b9f35108-7c87-426d-b4bd-5d3b1c2175f0">1,676</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:ProceedsFromIssuanceOfCommonStock" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQyLTUtMS0xLTYzODg3_12b73f6f-1402-492a-8169-0cae112f40dd">1,459</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Common stock repurchased</span></td><td colspan="2" style="background-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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsForRepurchaseOfCommonStock" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ0LTEtMS0xLTYzODg3_978d724e-f609-4a89-84a8-8901415a20fc">768</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsForRepurchaseOfCommonStock" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ0LTMtMS0xLTYzODg3_408df30c-d163-40e9-8d1c-6b786fe17523">1,957</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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsForRepurchaseOfCommonStock" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ0LTUtMS0xLTYzODg3_3a98d09d-f3b7-4629-9be5-a39a35e32754">710</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:#def3c0;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:9pt;font-weight:400;line-height:100%">Net cash provided (used) in financing activities</span></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ2LTEtMS0xLTYzODg3_07030092-b88d-4fe1-ab34-3d0326570b6c">24,455</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ2LTMtMS0xLTYzODg3_d671f543-90f6-4748-9659-f53dce2ae8b9">23,001</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ2LTUtMS0xLTYzODg3_d2607f6f-4d8f-400c-9276-f9ad3d1d8699">164,242</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:6pt"><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Effect of exchange rate changes on cash</span></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ4LTEtMS0xLTYzODg3_aa77b356-b471-44d9-a807-35f70258ac8c">2,346</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ4LTMtMS0xLTYzODg3_8e30baaa-8046-43a6-9ce7-d18bab5a710a">1,308</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ4LTUtMS0xLTYzODg3_874203e6-3bf7-429f-855a-9517177755e3">1,964</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Net change in cash and cash equivalents</span></td><td colspan="2" style="background-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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ5LTEtMS0xLTYzODg3_18965a81-269a-4dd2-bc79-7e19459dd798">4,901</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ5LTMtMS0xLTYzODg3_284f5c93-9419-4fb3-9c52-53a11f64a69c">8,080</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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ5LTUtMS0xLTYzODg3_bc275a40-c762-4aa7-88df-e1fd8aacb37e">7,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:#def3c0;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%">Cash and cash equivalents at beginning of the year</span></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUwLTEtMS0xLTYzODg3_127ee8b7-37e0-4fa9-93af-bd735d9ac83a">42,115</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i5d74fc3138934e70861715f06fa062c7_I20201231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUwLTMtMS0xLTYzODg3_88902aeb-7184-4767-9929-4c575396898f">50,195</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i418e1db8b7e1486ea4572f36257de9de_I20191231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUwLTUtMS0xLTYzODg3_47de28eb-687f-4e66-b53d-1563beb2663b">42,311</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%">Cash and cash equivalents at end of the year</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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUxLTEtMS0xLTYzODg3_e0e65335-994d-4446-9425-db2e54184add">47,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><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUxLTMtMS0xLTYzODg3_6ef8f860-aeb1-43f0-9136-13361c4047ba">42,115</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;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5d74fc3138934e70861715f06fa062c7_I20201231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUxLTUtMS0xLTYzODg3_b6e5f426-4680-4242-86ea-cbf9d208cee2">50,195</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:#def3c0;border-top:2pt solid #000000;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%">Cash paid during the year for:</span></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><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:9pt;font-weight:400;line-height:100%">Interest</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: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="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:InterestPaidNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUzLTEtMS0xLTYzODg3_245048cf-360b-402b-b775-e428133e7a73">14,575</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="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:InterestPaidNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUzLTMtMS0xLTYzODg3_ce5fed4d-25d3-4a74-8898-3eb2aba75a0a">10,248</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="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:InterestPaidNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUzLTUtMS0xLTYzODg3_648e6d1f-c7f7-4f30-a155-680d312dcbf3">17,049</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:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%">Income taxes</span></td><td style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:1pt solid #000;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxesPaidNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzU0LTEtMS0xLTYzODg3_75dac19e-6f9f-4183-8cf5-8fb457886a60">35,102</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:1pt solid #000;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxesPaidNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzU0LTMtMS0xLTYzODg3_91cbbe5d-d93d-49d2-b987-0c502f7a170e">32,865</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:1pt solid #000;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxesPaidNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzU0LTUtMS0xLTYzODg3_e5807330-2c46-443e-a486-6c014a5147e2">17,140</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:10pt"><span><br/></span></div><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See accompanying notes.</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">51</span></div></div></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_121"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></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%">Alamo Group Inc. and Subsidiaries</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%">Notes to Consolidated Financial Statements</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%">&#160;</span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_124"></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">1. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:SignificantAccountingPoliciesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzY0_42ea1b4e-5fe4-411c-ab32-d6450a6f65dc" continuedAt="idccd0ce4b2b040688754a4c3577d4eea" escape="true">SIGNIFICANT ACCOUNTING POLICIES</ix:nonNumeric></span></div><div style="text-align:center"><span><br/></span></div><ix:continuation id="idccd0ce4b2b040688754a4c3577d4eea" continuedAt="i8ff2bf6c0060400f80d7e47abfe86ca4"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Description of the Business and Segments</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company manufactures, distributes and services high quality tractor-mounted mowing and other vegetation maintenance equipment, street sweepers, excavators, vacuum trucks, forestry and tree maintenance equipment, snow removal equipment, leaf collection equipment, pothole patchers, zero turn radius mowers, agricultural implements and related aftermarket parts and services.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company manages its business through <ix:nonFraction unitRef="segment" contextRef="ibd895d48ac38440e907abfa04402881f_D20221001-20221231" decimals="INF" name="us-gaap:NumberOfReportableSegments" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzUwNQ_b0ee14df-bf01-4dbd-9afb-9a743f26c825">two</ix:nonFraction> principal reporting segments: Vegetation Management and Industrial Equipment, which are discussed in </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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_178">Note 18</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.</span></div><div style="text-indent:18pt"><span><br/></span></div><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ConsolidationPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzUw_af6f8988-dbc0-4d4c-b5e0-7fb77766ed7d" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Basis of Presentation and Principles of Consolidation</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The accompanying consolidated financial statements include the accounts of Alamo Group Inc. and its subsidiaries (the &#8220;Company&#8221; or &#8220;Alamo Group&#8221;), all of which are wholly owned. All intercompany accounts and transactions have been eliminated in consolidation.</span></div></ix:nonNumeric><div style="text-indent:18pt"><span><br/></span></div><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:UseOfEstimates" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzU4_de52bce2-7d84-4035-852b-01979c00b471" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Use of Estimates</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;The preparation of financial statements in conformity with U.S. Generally Accepted Accounting Principles requires management to make estimates and assumptions that affect the amount of assets, liabilities, revenues, and expenses reported in the financial statements and accompanying notes. Judgments related to asset impairment and certain reserves are particularly subject to change. Actual results could differ from those estimates. Such estimates include, but are not limited to, allowance for doubtful accounts, reserve for sales discounts, estimated realizable value on obsolete and slow-moving inventory, warranty reserve, estimates related to pension accounting, estimates related to fair value for purposes of assessing goodwill, long-lived assets and intangible assets for impairment, estimates related to income taxes, and estimates related to contingencies.</span></div></ix:nonNumeric><div style="text-indent:18pt"><span><br/></span></div><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzU1_aba51eb2-3aa7-4e38-8f97-6edce2c0ce64" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Foreign Currency</span></div><div><span><br/></span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company translates the assets and liabilities of foreign-owned subsidiaries at rates in effect at the end of the year. Revenues and expenses are translated at average rates in effect during the reporting period. Translation adjustments are included in Accumulated other comprehensive income (loss).</span></div></ix:nonNumeric><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:CashAndCashEquivalentsPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzY2_51530417-3fc3-42c7-8aa9-3fb7a35cdc96" continuedAt="if2cfd682bff843bb941bee07d497fa40" escape="true">Cash Equivalents</ix:nonNumeric></span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="if2cfd682bff843bb941bee07d497fa40">The Company considers all highly liquid investments with original maturities of three months or less from the date of purchase to be cash equivalents.</ix:continuation>  As of December&#160;31, 2022 and December&#160;31, 2021, there was <ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="INF" name="us-gaap:RestrictedCash" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzMwNTY_9ff8ac34-4cf5-48a6-a860-31493cdb38d2"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="INF" name="us-gaap:RestrictedCash" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzMwNTY_e97d4415-a155-41a1-9ccf-d0cf67591c02">no</ix:nonFraction></ix:nonFraction> restricted cash.</span></div><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ConcentrationRiskCreditRisk" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzYw_528274ef-b552-4e7b-8405-e6620e2d78c9" escape="true"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Concentrations of Credit Risk</span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Financial instruments which potentially subject the Company to concentrations of credit risk consist principally of accounts receivable. The credit risk is limited because of the large numbers and types of customers and their geographic dispersion.</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:'Times New Roman',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><br/></span></div></div><ix:continuation id="i8ff2bf6c0060400f80d7e47abfe86ca4" continuedAt="i8091504503a746d6a07397b82fcfbf01"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:InventoryPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzQ1_b19c7e76-77c8-452d-a0c0-749a39eff9c8" continuedAt="i5d763c314e18402f89111837788d6583" escape="true">Inventory Valuation</ix:nonNumeric></span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%"><ix:continuation id="i5d763c314e18402f89111837788d6583">Inventories are stated at the lower of cost or net realizable value.</ix:continuation></span><span style="color:#ee2724;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%"> </span></div><div style="text-indent:18pt"><span><br/></span></div><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzQ2_f3fe4f1c-84d8-44d9-821f-9de674b51539" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:107%">Property, Plant and Equipment</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property, plant, and equipment are stated on the basis of cost. Major renewals and betterments are charged to the property accounts, while replacements, maintenance and repairs, which do not improve or extend the lives of the respective assets, are expensed to the current period. Depreciation is provided at amounts calculated to amortize the cost of the assets over their estimated useful economic lives using the straight-line method.</span></div></ix:nonNumeric><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzYx_96077ae0-9707-4e95-bba1-84e7da927961" continuedAt="i7ab03d94d1114a46b2583e774415657f" escape="true">Impairment of Long-Lived Assets</ix:nonNumeric></span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i7ab03d94d1114a46b2583e774415657f">Long-lived assets, such as property, plant and equipment, rental equipment, and purchased intangibles subject to amortization, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not be recoverable.  If circumstances require a long-lived asset or asset group to be tested for possible impairment, the Company first compares non-discounted cash flows expected to be generated by that asset group to its carrying amount.  If the carrying amount of the long-lived asset or asset group is not recoverable on a non-discounted cash flow basis, an impairment is recognized to the extent that the carrying amount exceeds fair value.  Fair value is determined through various valuation techniques including discounted cash flow models, quoted market values and third-party independent appraisals, as considered necessary.</ix:continuation> </span></div><div style="text-indent:18pt"><span><br/></span></div><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4Nzcw_e9246cfd-bc58-4484-b1cf-5252aba67465" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Goodwill</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Goodwill represents the excess of the purchase price over the estimated fair value of the identifiable net assets acquired. Goodwill is not amortized but is instead tested for impairment at least annually, or whenever events or circumstances change between the annual impairment tests that make it likely that an impairment may have occurred, such as a significant adverse change in the business climate or a decision to sell all or a portion of a reporting unit. The Company performs its annual test for goodwill impairment related to its reporting units on October 1 of each fiscal year. Impairment testing for goodwill is done at the reporting unit level.  A reporting unit is an operating segment or one level below an operating segment (also known as a component).  A component of an operating segment is a reporting unit if the component constitutes a business for which discrete financial information is available, and segment management regularly reviews the operating results of that component. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We perform a qualitative assessment for all of our reporting units to determine whether it is more likely than not that an impairment exists.  Factors considered include macroeconomic, industry and competitive conditions, legal and regulatory environment, historical financial performance and significant changes in the reporting unit. If the qualitative assessment indicates that it is more likely than not that an impairment exists, then a quantitative assessment is performed. Alternatively, we may also bypass the qualitative assessment and go ahead and perform step 1 to determine if the carrying amount exceeds the reporting unit&#8217;s fair value. If the fair value of the reporting unit is lower than its carrying amount, goodwill is written down for the amount by which the carrying amount exceeds the fair value. However, the loss recognized cannot exceed the carrying amount of goodwill. We typically use discounted cash flow models to determine the fair value of a reporting unit. The assumptions used in these models are consistent with those we believe a hypothetical marketplace participant would use.</span></div></ix:nonNumeric><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See </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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_145">Note 8</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> to the Consolidated Financial Statements for more information regarding goodwill.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">&#160;<ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:GoodwillAndIntangibleAssetsIntangibleAssetsPolicy" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4Nzcz_04867662-1a79-4286-ba46-93340ac73e04" continuedAt="i155cf05e21d74d86b4fd1df9d98df7e2" escape="true">Intangible Assets&#160;&#160;&#160;&#160;</ix:nonNumeric></span></div><div style="text-indent:18pt"><span><br/></span></div><ix:continuation id="i155cf05e21d74d86b4fd1df9d98df7e2" continuedAt="ib7a2df950d5a4167a7ec53ce0910e9bc"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has intangible assets with both definite and indefinite useful lives. The definite-lived assets are trade names and trademarks, customer and dealer relationships, and patents and drawings that are subject to amortization with useful lives ranging from <ix:nonNumeric contextRef="ic45bfdab6e1e4d28a243163b4189686e_D20220101-20221231" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzg0ODI_1e292680-d03d-4dad-b925-dc8b00b5e5c6">3</ix:nonNumeric> years to <ix:nonNumeric contextRef="i9f473c4749174271bfd71f93c77ca853_D20220101-20221231" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzg0ODg_89a2bdc9-afa2-491b-b8c2-7d79bbdc20ec">25</ix:nonNumeric> years. Impairment of definite-lived assets is discussed as part of the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Impairment of Long-Lived Assets</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> paragraph above.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">  </span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The indefinite-lived assets not subject to amortization consist of trade names.  The Company tests its indefinite-lived intangible assets for impairment on an annual basis at year-end, 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 amount. The impairment test consists of comparing the fair value of the indefinite-lived intangible asset, </span></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:'Times New Roman',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><br/></span></div></div><ix:continuation id="i8091504503a746d6a07397b82fcfbf01" continuedAt="ibb2013169cf9402ca65bedb266cb7e95"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ib7a2df950d5a4167a7ec53ce0910e9bc">determined using the relief from royalty method, with its carrying amount. An impairment loss would be recognized for the carrying amount in excess of its fair value.</ix:continuation></span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See </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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_148">Note 9</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> to the Consolidated Financial Statements for more information regarding intangible assets.</span></div><div><span><br/></span></div><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:LesseeLeasesPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzUx_99c57512-a5d3-422c-b1f5-3012b703c4ef" continuedAt="i1369d479160e4a7685fbddb03f488be6" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:95%">Leases</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We determine if an arrangement is a lease at inception. Operating leases are included in other non-current assets, accrued liabilities, and other long-term liabilities on our consolidated balance sheets. Finance leases are included in property, plant and equipment, accrued liabilities, and other long-term liabilities on our consolidated balance sheets.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ROU assets represent our right to use an underlying asset for the lease term and lease liabilities represent our obligation to make lease payments arising from the lease. Operating lease ROU assets and liabilities are recognized at commencement date based on the present value of lease payments over the lease term. As most of our leases do not provide an implicit rate, we use our incremental borrowing rate based on the information available at commencement date in determining the present value of lease payments. The operating lease ROU asset also includes any lease payments made and excludes lease incentives. Our lease terms may include options to extend or terminate the lease when it is reasonably certain that we will exercise that option. Lease expense for lease payments is recognized on a straight-line basis over the lease term. </span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have elected to not account for the lease and non-lease components separately for most of our asset classes with the exception of real-estate.  We have also elected to exclude all lease agreements with an initial term of 12 months or less from the lease recognition requirements as allowed by ASC.</span></div></ix:nonNumeric><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> </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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_151">Note 10</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> to the Consolidated Financial Statements for more information regarding leases.</span></div><div><span><br/></span></div><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:PensionAndOtherPostretirementPlansPensionsPolicy" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzUy_d88c55eb-2c02-4101-8a22-036290ce5fc5" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Pensions</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company records annual amounts relating to its pension and post-retirement plans based on calculations that incorporate various actuarial and other assumptions, including discount rates, mortality, assumed rates of return, compensation increases, turnover rates and health care cost trend rates. The Company reviews its assumptions on an annual basis and makes modifications to the assumptions based on current rates and trends when it is appropriate to do so. The effect of modifications to those assumptions is recorded in Accumulated other comprehensive income (loss) and amortized to net periodic cost over future periods using the corridor method. The Company believes that the assumptions utilized in recording its obligations under its plans are reasonable based on its experience and market conditions. The net periodic costs are recognized as employees render the services necessary to earn the post-retirement benefits.</span></div></ix:nonNumeric><div><span><br/></span></div><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:RevenueFromContractWithCustomerPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzY3_c9bdccba-ceeb-4262-9e3a-ff4cd0f6b1eb" continuedAt="ia3aa4ffb89e247b0b93af3d6892dfea5" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Revenue Recognition</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The majority of the Company's revenue is recognized from product sales under contracts with customers. The Company presents <ix:nonFraction unitRef="segment" contextRef="ibd895d48ac38440e907abfa04402881f_D20221001-20221231" decimals="INF" name="us-gaap:NumberOfReportableSegments" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzEyMDI5_b0ee14df-bf01-4dbd-9afb-9a743f26c825">two</ix:nonFraction> reportable operating segments within its financial statements: Vegetation Management and Industrial Equipment.  Contract terms and performance obligations within each contractual agreement are generally consistent for both divisions, with small differences that do not have a significant impact on the revenue recognition considerations under Topic 606.  Revenues are recognized when we satisfy our performance obligation to transfer product to our customers, which typically occurs at a point in time upon shipment or delivery of the product, and for an amount that reflects the transaction price that is allocated to the performance obligation.  Our contracts with customers state the final terms of sale, including the description, quantity and price for goods sold.  In the normal course of business, we generally do not accept product returns.  </span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The transaction price is the consideration that we expect to be entitled to in exchange for our products.  Some of our contracts contain variable consideration in the form of sales incentives to our customers, such as discounts and rebates.  For contracts that include variable consideration, we estimate the factors that determine the variable consideration in order to establish the transaction price. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have elected that any taxes collected from customers and remitted to government authorities (i.e., sales tax, use tax, etc.) are excluded from the measurement of the transaction price and therefore are excluded from net sales in the consolidated statements of operations.</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:'Times New Roman',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><br/></span></div></div><div style="text-indent:18pt"><span><br/></span></div><ix:continuation id="ibb2013169cf9402ca65bedb266cb7e95" continuedAt="i181739acff354216b227a79582d3343a"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ia3aa4ffb89e247b0b93af3d6892dfea5">There are instances where we provide shipping services in relation to the goods sold to our customers.  Shipping and handling costs that occur before the customer obtains control of the goods are deemed to be fulfillment activities and are included in cost of goods sold.  We have elected to account for shipping and handling activities that occur after the customer has obtained control of a good as fulfillment activities (i.e., an expense) rather than as a promised service.</ix:continuation></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"><ix:continuation id="i1369d479160e4a7685fbddb03f488be6" continuedAt="ia3a6cea15ab24e419d6bed7e95b0f04f">Rental Equipment</ix:continuation></span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ia3a6cea15ab24e419d6bed7e95b0f04f">The Company enters into operating lease agreements with customers related to the rental of certain equipment.  In accounting for these leases, the cost of the equipment purchased or manufactured by the Company is recorded as an asset, and is depreciated over its estimated useful life.</ix:continuation>  Accumulated depreciation relating to the rental equipment was $<ix:nonFraction unitRef="usd" contextRef="id956c87fa891446f8832478c415ae209_I20221231" decimals="-5" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE0NDEz_9db3aeba-7fe5-49d8-8fff-d796f3201b21">22.3</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="icc4ff7dd1e9a4f5fbf837842648f304e_I20211231" decimals="-5" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE0NDIw_40797759-3e39-4bcc-bb0b-3b3e46f815d4">20.1</ix:nonFraction> million on December&#160;31, 2022 and December&#160;31, 2021, respectively.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="alg:RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4Nzcy_701a2765-79f2-4c64-965e-bf5700a42b0d" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Shipping and Handling Costs</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s policy is to include shipping and handling costs in costs of goods sold.</span></div></ix:nonNumeric><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">&#160;</span></div><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:AdvertisingCostsPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzYy_d6fc144c-ba34-4ee1-a847-d95aec45220e" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Advertising</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We charge advertising costs to expense as incurred. Advertising and marketing expense related to operations for fiscal years 2022, 2021, and 2020 was approximately $<ix:nonFraction unitRef="usd" contextRef="i4a2e4f923a74483fb510a1d4aad2630b_D20220101-20221231" decimals="-5" name="us-gaap:AdvertisingExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE0NzQz_87220d8f-599b-48cf-acc9-d9b1e9a3a55e">10.9</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="i81b7a9ce02d3439b9022865004507986_D20210101-20211231" decimals="-5" name="us-gaap:AdvertisingExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE0NzQ3_efffe8c3-8a9a-4a7b-9a5e-3e90d4ac60d1">10.2</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="ia8717b37bc834a2c90bb4e0d9c8a9ef0_D20200101-20201231" decimals="-5" name="us-gaap:AdvertisingExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE0NzU0_c9847c17-ef19-4dc7-8f63-d44ac8fbd918">10.1</ix:nonFraction> million, respectively. Advertising and marketing expenses are included in Selling, General and Administrative expenses (&#8220;SG&amp;A&#8221;).</span></div></ix:nonNumeric><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ResearchAndDevelopmentExpensePolicy" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzUz_e003b1ca-34c4-4ac7-9e4c-418322b051c7" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Research and Development</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Product development and engineering costs charged to SG&amp;A amounted to $<ix:nonFraction unitRef="usd" contextRef="i4a2e4f923a74483fb510a1d4aad2630b_D20220101-20221231" decimals="-5" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE0OTc1_be4875f8-d190-4119-b3da-085d06602e88">14.3</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="i81b7a9ce02d3439b9022865004507986_D20210101-20211231" decimals="-5" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE0OTc5_4eddb1a6-1a09-4180-951d-2a09d9113a54">11.7</ix:nonFraction> million, and $<ix:nonFraction unitRef="usd" contextRef="ia8717b37bc834a2c90bb4e0d9c8a9ef0_D20200101-20201231" decimals="-5" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE0OTg3_fed66f29-d3ce-4399-9d42-75285b1d8cd1">12.4</ix:nonFraction> million for the years ended December&#160;31, 2022, 2021, and 2020, respectively.</span></div></ix:nonNumeric><div style="text-indent:18pt"><span><br/></span></div><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:CommitmentsAndContingenciesPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzQ3_2257b6f9-4227-4825-a0fb-edd259b27fa6" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Commitments and Contingencies</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Liabilities for loss contingencies arising from claims, assessments, litigation, fines and penalties and other sources are recorded when it is probable that a liability has been incurred and the amount can be reasonably estimated.  The Company's policy is to accrue for legal costs expected to be incurred in connection with loss contingencies.</span></div></ix:nonNumeric><div><span><br/></span></div><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:IncomeTaxPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzU5_ec49ab14-aa5c-4fc0-bfba-fcaa0bf7b687" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Income Taxes</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred tax assets and liabilities are determined based on differences between the financial reporting basis and tax basis of assets and liabilities, and are measured by applying enacted statutory tax rates applicable to the future years in which deferred tax assets or liabilities are expected to be settled or realized. In assessing the realizability of deferred tax assets, management considers whether it is more likely than not that some portion or all of the deferred tax assets will be realized. The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income during the periods in which those temporary differences become deductible. Management considers the scheduled reversals of deferred tax liabilities, projected future taxable income, available tax carrybacks and tax planning strategies in making this assessment other than those which we have reserved. We have elected to treat the global intangible low-taxed income (GILTI) tax as a period expense.</span></div></ix:nonNumeric><div style="text-indent:18pt"><span><br/></span></div><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzQ4_143e7811-e40e-46a8-ba65-18862219c75d" continuedAt="i62a68cd59d9f40b99d491bff97dde5d3" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Stock-Based Compensation</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company has granted options to purchase its common stock, restricted stock awards, restricted stock units, and performance stock units to certain employees and directors of the Company and its affiliates under various stock option plans at no less than the fair market value of the underlying stock on the date of grant.&#160; These options are granted for a term not exceeding <ix:nonNumeric contextRef="i9f473c4749174271bfd71f93c77ca853_D20220101-20221231" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE2ODQ3_807c2f91-a6b2-491f-83d9-ef435b970efd">ten years</ix:nonNumeric> and are forfeited in the event that the employee or director terminates his or her employment or relationship with the Company or one of its affiliates other than by retirement or death.&#160; These options generally vest over <ix:nonNumeric contextRef="ie645f8221895406fbea9037626790faf_D20220101-20221231" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE3MDcy_82beba6b-beb6-4586-81a5-939a72ff6561">five years</ix:nonNumeric>.&#160; All option plans contain anti-dilutive provisions that permit an adjustment of the number of shares of the Company&#8217;s common stock represented by each option for any change in capitalization. </span></div></ix:nonNumeric></ix:continuation><div style="text-indent:18pt"><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:'Times New Roman',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><br/></span></div></div><ix:continuation id="i181739acff354216b227a79582d3343a"><ix:continuation id="i62a68cd59d9f40b99d491bff97dde5d3"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value of each stock option is estimated on the date of grant using the Black-Scholes valuation method with the following assumptions noted:</span></div><div style="text-indent:18pt"><span><br/></span></div><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: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">The risk-free rate is based on the U.S. Treasury rate over the expected life of the option at the time of the grant.</span></div><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: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">The dividend yield is calculated as the ratio of dividends paid per share of common stock to the stock price on the date of the grant.</span></div><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: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">The expected volatility factors are based on the historical movement of the Company&#8217;s common stock price over the expected life of the option.</span></div><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:120%">4.</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">The expected life is the average length of time in which officers, other employees, and non-employee directors are expected to exercise their options, and which are primarily based on historical experience.</span></div></ix:continuation><div style="padding-left:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4Nzc0_345598d1-630b-4eca-bcea-c9b00dc02a91" continuedAt="i432b4458c1cf4a958fe8dd1b2686b5db" escape="true">The Company calculated the fair value for options with the following weighted-average assumptions for 2022, 2021, and 2020:</ix:nonNumeric></span><ix:continuation id="i432b4458c1cf4a958fe8dd1b2686b5db"><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:54.455%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.577%"></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:2.139%"></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:2.285%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.184%"></td><td style="width:0.1%"></td></tr><tr><td colspan="21" style="border-bottom:1pt solid #000;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%">Fair Value Calculation Assumptions for Stock Compensation</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="15" 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:9pt;font-weight:700;line-height:100%">December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',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="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%">2022</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%">2021</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%">2020</span></td></tr><tr style="height:9pt"><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;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:#def3c0;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%">Risk-free interest rate</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 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:nonFraction unitRef="number" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="4" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzQtMi0xLTEtNjM4ODc_6f12c91c-addc-4daf-9da7-8475043d2277">1.93</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 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:nonFraction unitRef="number" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="4" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzQtNC0xLTEtNjM4ODc_ea03cfa8-1f1f-4cd0-b122-76bccad7795b">1.25</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 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:nonFraction unitRef="number" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="4" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzQtNi0xLTEtNjM4ODc_b6eb5ac4-fdbc-4ae3-ba48-55eb0309fbd4">1.22</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">Dividend yield</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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzUtMi0xLTEtNjM4ODc_77414375-125a-4e2f-b8a5-94771360ea8f">0.5</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzUtNC0xLTEtNjM4ODc_72349529-7617-48ec-99d0-0a29569a1dbd">0.4</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzUtNi0xLTEtNjM4ODc_81adfe91-a2a4-49d7-a92e-11fc9aa73733">0.5</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Volatility factors</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 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:nonFraction unitRef="number" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="4" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzYtMi0xLTEtNjM4ODc_b1c441ef-9202-428e-932a-45dde1100ed1">33.2</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 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:nonFraction unitRef="number" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="4" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzYtNC0xLTEtNjM4ODc_98cf9e46-20bd-4ddd-813d-d29b8c2f74a5">33.9</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 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:nonFraction unitRef="number" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="4" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzYtNi0xLTEtNjM4ODc_398d0360-5069-41e9-a97f-30781092bf6c">30.0</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;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%">Weighted-average expected life</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzctMi0xLTEtNjM4ODc_07676b60-572c-4048-b7c3-b30f862ef2ec">8.0</ix:nonNumeric> years</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzctNC0xLTEtNjM4ODc_0db91bd7-9842-42b9-96ec-fe1dfff785f6">8.0</ix:nonNumeric> years</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzctNi0xLTEtNjM4ODc_22600831-74fa-4651-b9db-1049c5883d2d">8.0</ix:nonNumeric> years</span></td></tr></table></ix:continuation></div><div style="text-align:center"><span><br/></span></div><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:EarningsPerSharePolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzQ5_5996c41f-571b-4387-b2b2-c2e1d88f6105" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Earnings per Common Share (&#8220;EPS&#8221;)</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Basic EPS is computed using the weighted-average number of common shares outstanding during the year. The treasury stock method is used to compute diluted EPS which gives effect to the potential dilution of earnings that could have occurred if additional shares were issued for awards granted under the Company&#8217;s incentive stock option plans. The treasury stock method assumes that proceeds obtained upon exercise of awards granted under the incentive stock option plans are used to purchase outstanding common stock at the average market price during the period.</span></div></ix:nonNumeric></ix:continuation><div style="padding-left:6pt;padding-right:8pt;text-indent:18pt"><span><br/></span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_127"></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">2. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjcvZnJhZzo5MWE5ZjMwYzk4NDY0N2IwOTI4ZTZjYjk0ODExOWIyZS90ZXh0cmVnaW9uOjkxYTlmMzBjOTg0NjQ3YjA5MjhlNmNiOTQ4MTE5YjJlXzExNTI_1ab94e17-ef47-4425-820d-20f727d9e9f3" continuedAt="i74d1541b17884a0d82da8838b47c4493" escape="true">ACCOUNTING PRONOUNCEMENTS</ix:nonNumeric></span></div><div style="text-align:center"><span><br/></span></div><ix:continuation id="i74d1541b17884a0d82da8838b47c4493"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjcvZnJhZzo5MWE5ZjMwYzk4NDY0N2IwOTI4ZTZjYjk0ODExOWIyZS90ZXh0cmVnaW9uOjkxYTlmMzBjOTg0NjQ3YjA5MjhlNmNiOTQ4MTE5YjJlXzExNTQ_9b1b8404-ba46-4561-8b3c-7e5792bc2b2f" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:107%">Accounting Pronouncements Not Yet Adopted</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">In September 2022, the FASB issues ASU No. 2022-04, &#8220;Liabilities&#8212;Supplier Finance Programs (Subtopic 405-50): Disclosure of Supplier Finance Program Obligations&#8221;.  The amendments in this Update are effective for are effective for fiscal years beginning after December 15, 202 and require that a buyer in a supplier finance program disclose sufficient information about the program to allow a user of financial statements to understand the program&#8217;s nature, activity during the period, changes from period to period, and potential magnitude. To achieve this objective, the Company will disclose qualitative and quantitative information about its supplier finance programs.</span></div></ix:nonNumeric></ix:continuation><div style="text-indent:18pt"><span><br/></span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_130"></div><div style="text-align:center;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">3. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:BusinessCombinationDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzAvZnJhZzphZmM4NGNhMDhmYWE0N2JlYWZiYWUyYjZlMGUzYzM4ZS90ZXh0cmVnaW9uOmFmYzg0Y2EwOGZhYTQ3YmVhZmJhZTJiNmUwZTNjMzhlXzcyNg_ef594dab-cf7a-45aa-9b41-c69ef4089265" continuedAt="iaa8bb73c593b46878ed25a931f98fcfb" escape="true">BUSINESS COMBINATIONS</ix:nonNumeric></span></div><div style="text-align:center;text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><ix:continuation id="iaa8bb73c593b46878ed25a931f98fcfb"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On October 26, 2021, the Company acquired <ix:nonFraction unitRef="number" contextRef="idbd5d2e161fe40df8aef073e0d3c8443_I20211026" decimals="INF" name="us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzAvZnJhZzphZmM4NGNhMDhmYWE0N2JlYWZiYWUyYjZlMGUzYzM4ZS90ZXh0cmVnaW9uOmFmYzg0Y2EwOGZhYTQ3YmVhZmJhZTJiNmUwZTNjMzhlXzcz_dd6666a5-000b-4a09-9423-17de549ce630">100</ix:nonFraction>% of the issued and outstanding equity interests of Timberwolf Limited (&#8220;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Timberwolf</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8221;). </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> Timberwolf</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> manufactures a broad range of commercial wood chippers, primarily serving markets in the U.K. and the European Union.  The primary reason for the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Timberwolf</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> acquisition was to enhance the Company's forestry and tree care platform for growth by increasing both the Company's product portfolio and capabilities in the European market.  The acquisition price was approximately $<ix:nonFraction unitRef="usd" contextRef="id62d12deb6a04e47bc668cc97fa66db1_D20211026-20211026" decimals="-5" name="us-gaap:BusinessCombinationConsiderationTransferred1" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzAvZnJhZzphZmM4NGNhMDhmYWE0N2JlYWZiYWUyYjZlMGUzYzM4ZS90ZXh0cmVnaW9uOmFmYzg0Y2EwOGZhYTQ3YmVhZmJhZTJiNmUwZTNjMzhlXzU0Nw_3cfd7fa2-6dea-4305-89c0-7e1568c4935d">25.0</ix:nonFraction>&#160;million. The Company has included the operating results of </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Timberwolf</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> in its consolidated financial statements since the date of acquisition, these results are considered immaterial.</span></ix:continuation></div><div style="text-indent:18pt"><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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">56</span></div></div></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_133"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></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%">4. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:EarningsPerShareTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90ZXh0cmVnaW9uOjYzY2MxMThmMzljOTQxNTA4MzE0YmQyZGVkYWFjOGY4XzQ1OA_9372472d-a50c-4213-a733-140422ce5ac1" continuedAt="i0bc7063b2fb2462899d91b7cde2cfc6a" escape="true">EARNINGS PER SHARE</ix:nonNumeric></span></div><ix:continuation id="i0bc7063b2fb2462899d91b7cde2cfc6a"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90ZXh0cmVnaW9uOjYzY2MxMThmMzljOTQxNTA4MzE0YmQyZGVkYWFjOGY4XzQ2MA_de01980a-f3e3-4607-8b0d-815e81cf05dd" continuedAt="i1f04d26ae7bd4369a5b4500ab7270971" escape="true">The following table sets forth the reconciliation from basic to diluted average common shares and the calculations of net income per common share. Net income for basic and diluted calculations does not differ.</ix:nonNumeric></span><ix:continuation id="i1f04d26ae7bd4369a5b4500ab7270971"><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:53.900%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.194%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.958%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.194%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.958%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.196%"></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-weight:400;line-height:100%">(in thousands, except per share amounts)</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: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:9pt;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:9pt;font-weight:700;line-height:100%">2020</span></td></tr><tr style="height:9pt"><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income</span></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzItMS0xLTEtNjM4ODc_c685709a-052b-4d45-86d6-2bc9249847d4">101,928</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzItMy0xLTEtNjM4ODc_59576dbd-4f49-4bd9-b1d6-8dee5858bbf2">80,245</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzItNS0xLTEtNjM4ODc_6112817b-81f7-4c04-b4ad-ef25dd5a876b">57,804</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Average common shares:</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Basic (weighted-average outstanding shares)</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzUtMS0xLTEtNjM4ODc_c52e511e-0874-437d-ab2a-c1323200fbed">11,877</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzUtMy0xLTEtNjM4ODc_3a29c59c-2f7b-44c5-9f64-e040c6782a2f">11,837</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzUtNS0xLTEtNjM4ODc_7c770988-b2dc-4cc1-96fd-6da0a1162c4e">11,782</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Dilutive potential common shares from stock&#160;options</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzYtMS0xLTEtNjM4ODc_5723fe25-4d08-4dd2-8999-38c5e1df4ed9">57</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzYtMy0xLTEtNjM4ODc_e8fabd99-5e15-4452-8920-76374d4f837c">59</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzYtNS0xLTEtNjM4ODc_35ee2b7d-ef55-4045-908b-26d549ce9616">63</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Diluted (weighted-average outstanding shares)</span></div></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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzctMS0xLTEtNjM4ODc_c5bf7c85-14fa-43b1-b645-48369ee4703d">11,934</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;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzctMy0xLTEtNjM4ODc_31617641-3509-418f-8847-0c1f336ce92a">11,896</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;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzctNS0xLTEtNjM4ODc_d6b1dd7d-bc95-4511-aeb6-b8ddcae0ebb3">11,845</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:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Basic earnings per share</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzktMS0xLTEtNjM4ODc_c9c00776-3c92-498c-8701-141090aefb68">8.58</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzktMy0xLTEtNjM4ODc_67c4b3d0-8294-457a-b79b-379caf6c59a9">6.78</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzktNS0xLTEtNjM4ODc_e5d3aab0-dc33-4e53-84a2-8d6dfd9fc24d">4.91</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Diluted earnings per share</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzExLTEtMS0xLTYzODg3_89c4bf6c-7218-4422-bcac-20f193963056">8.54</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzExLTMtMS0xLTYzODg3_3365ef31-c072-478c-b6c6-22da28021e7e">6.75</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzExLTUtMS0xLTYzODg3_f42712df-a94c-4bc9-853d-311cc44487b9">4.88</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr></table></ix:continuation></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Stock options totaling <ix:nonFraction unitRef="shares" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="0" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90ZXh0cmVnaW9uOjYzY2MxMThmMzljOTQxNTA4MzE0YmQyZGVkYWFjOGY4XzI2OA_0a7a22a0-3e2c-4841-a7a7-8d534e4a9204">25,610</ix:nonFraction> shares in 2022, <ix:nonFraction unitRef="shares" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="0" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90ZXh0cmVnaW9uOjYzY2MxMThmMzljOTQxNTA4MzE0YmQyZGVkYWFjOGY4XzI4NQ_c03168e2-ba86-4775-b7c5-bea1c9110542">15,586</ix:nonFraction> shares in 2021, and <ix:nonFraction unitRef="shares" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="0" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90ZXh0cmVnaW9uOjYzY2MxMThmMzljOTQxNTA4MzE0YmQyZGVkYWFjOGY4XzMwNg_e3f5a445-5577-41f7-8b12-45c9c3a1926f">9,864</ix:nonFraction> shares in 2020 were not included in the diluted earnings per share calculation because the effect would have been anti-dilutive.</span></div></ix:continuation><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_136"></div><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">5. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzMwNjU_6f7c6178-f3f9-44ab-8aff-a4929097b802" continuedAt="i59fc08260fed4b5da211969d6dd206f4" escape="true">VALUATION AND QUALIFYING ACCOUNTS</ix:nonNumeric></span></div><ix:continuation id="i59fc08260fed4b5da211969d6dd206f4" continuedAt="i30675a6f810744bfb080833277da9663"><div style="text-indent:18pt"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="alg:ScheduleOfValuationAndQualifyingAccountsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzMwNjg_061f5ab0-d363-4bda-a80c-69b76fe6d36a" escape="true"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Valuation and qualifying accounts included the following:</span><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:30.186%"></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:2.285%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.285%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.431%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.133%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.431%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.285%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.285%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.016%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></div></td><td colspan="3" 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:9pt;font-weight:700;line-height:100%">Balance</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Beginning of</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Year</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" 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:9pt;font-weight:700;line-height:100%">Net</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Charged to</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Costs and</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Expenses</span></div></td><td colspan="3" style="padding:0 1pt"></td><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:9pt;font-weight:700;line-height:100%">&#160;Translations,</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Reclassifications</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">and Acquisitions</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" 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:9pt;font-weight:700;line-height:100%">&#160;Net Write-Offs or</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Discounts Taken</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" 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:9pt;font-weight:700;line-height:100%">Balance</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">End of</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Year</span></div></td></tr><tr><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:9pt;font-weight:700;line-height:100%">2022</span></td><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:9pt;font-weight:400;line-height:100%">&#160;</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:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:0 1pt"></td><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:9pt;font-weight:400;line-height:100%">&#160;</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:0 1pt"></td><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:9pt;font-weight:400;line-height:100%">&#160;</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: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></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:#def3c0;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%">Reserve for sales discounts</span></td><td style="background-color:#def3c0;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:#def3c0;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="ia9823408724d4000926edbb1d190feae_I20211231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzMtMS0xLTEtNjM4ODc_fa7c2afd-d49c-4a4a-9b67-78f619a76bcd">12,567</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="ifb1091d992d44cf0b0f9802926f1c066_D20220101-20221231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzMtMy0xLTEtNjM4ODc_3c8683b1-ffcf-463a-9ddb-3a860084984d">137,553</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="ifb1091d992d44cf0b0f9802926f1c066_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:ValuationAllowancesAndReservesAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzMtNi0xLTEtNjM4ODc_2f3f7ae5-1661-4050-8c33-5197b028934d">21</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="ifb1091d992d44cf0b0f9802926f1c066_D20220101-20221231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesDeductions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzMtOS0xLTEtNjM4ODc_3a4abc21-8a91-4335-861c-c27ac5951020">130,238</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="ibd755e8236cd4991b0c03464ecd075e5_I20221231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzMtMTEtMS0xLTYzODg3_830720b8-81b0-4be6-b48d-b6511441aa71">19,861</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Reserve for inventory obsolescence</span></td><td colspan="2" style="background-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="i2c251835505847ab9f8b8275a364aaf6_I20211231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzQtMS0xLTEtNjM4ODc_9b08cf4b-d86a-47ff-b5a4-5cddec1e3d5a">12,908</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="i0877b31f3bfe4be2940855869417e0ff_D20220101-20221231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzQtMy0xLTEtNjM4ODc_8cf961de-6d4f-491e-9ed9-73a6daf5deec">6,998</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="2" style="background-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="i0877b31f3bfe4be2940855869417e0ff_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:ValuationAllowancesAndReservesAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzQtNi0xLTEtNjM4ODc_777eb942-fab2-4685-a350-925a081ddffb">277</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="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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="i0877b31f3bfe4be2940855869417e0ff_D20220101-20221231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesDeductions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzQtOS0xLTEtNjM4ODc_54f34219-a4fb-4db5-a367-4ed8efdea681">6,420</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="i6e0321a33def419ba2273d3fe76c9e9a_I20221231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzQtMTEtMS0xLTYzODg3_afaceede-0c53-489b-a38c-c18d98c83eb7">13,209</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:#def3c0;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%">Reserve for warranty</span></td><td colspan="2" style="background-color:#def3c0;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="i7fc12cd1cf6643658925beb572783f63_I20211231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzUtMS0xLTEtNjM4ODc_39a1f767-d129-46ce-a9e5-dd93ddd411e8">9,953</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i278b14acd71a4ef888de09487a900f94_D20220101-20221231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzUtMy0xLTEtNjM4ODc_9c571519-9157-4ebd-955c-c04fd8de7b57">11,290</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i278b14acd71a4ef888de09487a900f94_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:ValuationAllowancesAndReservesAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzUtNi0xLTEtNjM4ODc_6783afcc-df8a-4492-9b87-f7481f7832ed">244</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i278b14acd71a4ef888de09487a900f94_D20220101-20221231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesDeductions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzUtOS0xLTEtNjM4ODc_5e823e42-39ed-4416-bcec-d2633d27c1fe">11,659</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i327013052a5348e58d6206072d5a7c00_I20221231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzUtMTEtMS0xLTYzODg3_7e5350b7-406f-4d51-af43-067650e256e7">9,340</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:#def3c0;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%">Reserve for sales discounts</span></td><td style="background-color:#def3c0;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:#def3c0;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="i10fd44437faf49d8a71d549da1958cff_I20201231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzgtMS0xLTEtNjM4ODc_2dbc26da-53b3-4166-92f5-8d7829fe52d9">13,549</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="i628b14e273ef4667875cefb44919b448_D20210101-20211231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzgtMy0xLTEtNjM4ODc_e235d217-2819-4be9-a329-5fc531c9d756">116,114</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="i628b14e273ef4667875cefb44919b448_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:ValuationAllowancesAndReservesAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzgtNi0xLTEtNjM4ODc_b43c0ae8-4470-49c5-9d5d-efdeb78fa35a">688</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="i628b14e273ef4667875cefb44919b448_D20210101-20211231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesDeductions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzgtOS0xLTEtNjM4ODc_f0a3253f-9ce0-4c4c-bbb3-33c3efaa7972">116,408</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="ia9823408724d4000926edbb1d190feae_I20211231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzgtMTEtMS0xLTYzODg3_f9293794-f511-4423-b3bb-ad1f9db2dcc6">12,567</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Reserve for inventory obsolescence</span></td><td colspan="2" style="background-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="ieab4254aff3642bbadde2c564b0a85f4_I20201231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzktMS0xLTEtNjM4ODc_dc39d15d-f17f-4385-837d-50d4e1a17b33">12,027</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="i68d46899feed46e9a18669d1773b0388_D20210101-20211231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzktMy0xLTEtNjM4ODc_852b6379-1714-4e88-a4f5-90b799c7ee4a">6,531</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="2" style="background-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="i68d46899feed46e9a18669d1773b0388_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:ValuationAllowancesAndReservesAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzktNi0xLTEtNjM4ODc_97d0ddf4-00b8-4314-8f63-eba6c4a3a924">146</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="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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="i68d46899feed46e9a18669d1773b0388_D20210101-20211231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesDeductions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzktOS0xLTEtNjM4ODc_6f1860d5-81ad-4b96-8d6b-142413a4b284">5,504</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="i2c251835505847ab9f8b8275a364aaf6_I20211231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzktMTEtMS0xLTYzODg3_54f26d97-83b1-469e-b78f-33a148cec297">12,908</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:#def3c0;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%">Reserve for warranty</span></td><td colspan="2" style="background-color:#def3c0;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="if474962fab4a4030b9eb991b08ecfdf2_I20201231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzEwLTEtMS0xLTYzODg3_197e98ca-1172-42e0-8fb6-d4265134c657">9,096</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i3ed7c8ddc75c4302a5a683b9a5d47274_D20210101-20211231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzEwLTMtMS0xLTYzODg3_7bc68bbe-6939-46fa-997b-2aa722988b78">10,727</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i3ed7c8ddc75c4302a5a683b9a5d47274_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:ValuationAllowancesAndReservesAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzEwLTYtMS0xLTYzODg3_243843bb-ebca-4a71-85dc-f46d3889ec6c">132</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i3ed7c8ddc75c4302a5a683b9a5d47274_D20210101-20211231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesDeductions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzEwLTktMS0xLTYzODg3_7d365a18-6fab-42ae-8bae-a9947b3d3062">9,738</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7fc12cd1cf6643658925beb572783f63_I20211231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzEwLTExLTEtMS02Mzg4Nw_5739512a-a226-4cfb-84e6-70f1a1ab086d">9,953</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:#def3c0;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%">Reserve for sales discounts</span></td><td style="background-color:#def3c0;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:#def3c0;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="i21f9273d6b3548fa8973dee9a48f69e0_I20191231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzEzLTEtMS0xLTYzODg3_6411bc2a-27bc-44c8-8696-f6b237965e94">16,883</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="i22c526cb7bc2454ebb5a249fde941e9c_D20200101-20201231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzEzLTMtMS0xLTYzODg3_909e8a45-8a2c-40eb-b266-598689e41b84">93,398</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="i22c526cb7bc2454ebb5a249fde941e9c_D20200101-20201231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzEzLTYtMS0xLTYzODg3_be489e43-585e-4e6b-99fb-4bd453949bdd">15</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="i22c526cb7bc2454ebb5a249fde941e9c_D20200101-20201231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesDeductions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzEzLTktMS0xLTYzODg3_6e006b88-896a-4ef2-abdf-19cf153523c5">96,747</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="i10fd44437faf49d8a71d549da1958cff_I20201231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzEzLTExLTEtMS02Mzg4Nw_58eb5c9c-3d69-4b60-bfb0-636ff34c38ab">13,549</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Reserve for inventory obsolescence</span></td><td colspan="2" style="background-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="i1cd0e52666304b0cb6d2e91288aad69e_I20191231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzE0LTEtMS0xLTYzODg3_c1841698-757b-4a37-807c-c6067d1d436c">8,233</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="i77e23cfd658449999ef76db76a8fabe0_D20200101-20201231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzE0LTMtMS0xLTYzODg3_de3b1951-e326-4307-ad0f-1d8429a17087">4,609</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="2" style="background-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="i77e23cfd658449999ef76db76a8fabe0_D20200101-20201231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesAdjustments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzE0LTYtMS0xLTYzODg3_ea217091-3361-4ebc-b29b-8f20145ecfdf">1,471</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="2" style="background-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="i77e23cfd658449999ef76db76a8fabe0_D20200101-20201231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesDeductions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzE0LTktMS0xLTYzODg3_36c1c468-52eb-45ac-8abb-643547924bff">2,286</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="ieab4254aff3642bbadde2c564b0a85f4_I20201231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzE0LTExLTEtMS02Mzg4Nw_590f5b4c-a437-4c7a-9664-706e9d17e353">12,027</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:#def3c0;border-bottom:1pt solid #000;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%">Reserve for warranty</span></td><td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9e13101fce0c40dea862f82c5b2403e3_I20191231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzE1LTEtMS0xLTYzODg3_eebb9270-5899-4886-9488-c0b5b21768bf">10,249</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9d7480f64a314da1ab83562492ffc296_D20200101-20201231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzE1LTMtMS0xLTYzODg3_70935e65-0298-44f0-98af-311be6fb0040">8,466</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9d7480f64a314da1ab83562492ffc296_D20200101-20201231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzE1LTYtMS0xLTYzODg3_8b1bc2df-5c22-48a6-b91e-ba6d41dd8e9a">247</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9d7480f64a314da1ab83562492ffc296_D20200101-20201231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesDeductions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzE1LTktMS0xLTYzODg3_b75993e2-3aee-409b-b422-32c5045c6d70">9,866</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if474962fab4a4030b9eb991b08ecfdf2_I20201231" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzE1LTExLTEtMS02Mzg4Nw_1bfce168-586c-4ff1-b685-7f8b6e095f81">9,096</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></ix:nonNumeric></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Sales Discounts</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On December&#160;31, 2022, the Company had $<ix:nonFraction unitRef="usd" contextRef="ibd755e8236cd4991b0c03464ecd075e5_I20221231" decimals="-5" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzE0NQ_d2163ed5-b03d-4f49-b24b-9985d4979857">19.9</ix:nonFraction> million in reserves for sales discounts compared to $<ix:nonFraction unitRef="usd" contextRef="ia9823408724d4000926edbb1d190feae_I20211231" decimals="-5" name="us-gaap:ValuationAllowancesAndReservesBalance" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzE5Mg_ccfb88ea-af02-4b2f-b903-b6d33d3c886e">12.6</ix:nonFraction> million on December&#160;31, 2021 on product shipped to our customers under various promotional programs. The most common programs provide a discount when the customer pays within a specified period of time. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The Company reviews the reserve quarterly based on analysis made on each program outstanding at the time. The cost of these discounts is estimated based on historical experience and known changes in promotional programs and is reported as a reduction to sales when the product sale is recognized. The reserve is adjusted if discounts paid differ from those estimated. Historically, those adjustments have not been material.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</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:'Times New Roman',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><br/></span></div></div><ix:continuation id="i30675a6f810744bfb080833277da9663"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:InventoryImpairmentPolicy" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzMwNjk_ebdb4c24-7a48-4932-a204-a4a1e5f9f1d7" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Reserve for Inventory Obsolescence </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">We value inventories at the lower of the cost of inventory or net realizable value. As needed, we record an inventory valuation adjustment for excess, slow moving, and obsolete inventory that is equal to the excess of the cost of the inventory over the estimated net realizable value. The inventory valuation adjustment to net realizable value establishes a new cost basis of the inventory that cannot be subsequently reversed. Such inventory valuation adjustments for excess, obsolete, and slow moving inventory are not reduced or removed until the product is sold or disposed of.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company had a reserve of $<ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-5" name="us-gaap:InventoryValuationReserves" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzE0NTM_7418a713-e82b-4322-8613-0a5dee42bbd9">13.2</ix:nonFraction> million on December&#160;31, 2022 and $<ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-5" name="us-gaap:InventoryValuationReserves" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzE0NjY_ee603e31-bf6e-49f8-af4f-a52d641a1dc4">12.9</ix:nonFraction> million on December&#160;31, 2021 to cover obsolete and slow moving inventory. The increase in the reserve was primarily attributable to the Company's Industrial Equipment Division. The reserve for inventory obsolescence  is calculated as follows: 1) no inventory usage over a <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="alg:InventoryUsagePeriod" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzMwNjc_12fa177d-6a0d-4034-a698-17d54ab641a3">three-year</ix:nonNumeric> period is deemed obsolete and reserved at <ix:nonFraction unitRef="number" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="INF" name="alg:InventoryReservePercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzE3Njg_42a5e18c-90c0-4c6f-9dd7-3805552208f7">100</ix:nonFraction>%; and 2) slow moving inventory with little usage requires a <ix:nonFraction unitRef="number" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="INF" name="alg:InventoryReservePercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzE4MzA_d121e66b-f729-44de-bd8f-52ea7495db37">100</ix:nonFraction>% reserve on items that have a quantity greater than a <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="alg:InventoryUsagePeriod" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzMwNzA_57d30fbf-a505-45b5-bf36-8b67cc053cd5">three-year</ix:nonNumeric> supply. There are exceptions to the obsolete and slow moving classifications if approved by an officer of the Company, based on specific identification of an item or items that are deemed to be either included or excluded from this classification. In cases where there is no historical data, management makes a judgment based on a specific review of the inventory in question to determine what reserves, if any, are appropriate. New products or parts are generally excluded from the reserve until a three-year history has been established.</span></div></ix:nonNumeric><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:StandardProductWarrantyPolicy" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzMwNzE_df95da20-cc0f-4273-8aed-07c8a57cae13" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Warranty</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s warranty policy is generally to provide its customers warranty for up to <ix:nonNumeric contextRef="i2ec5941998b24e159ba1077cecd2e60e_D20220101-20221231" name="alg:ProductWarrantyPeriod" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI1MzE_216c667c-f89e-4236-902e-c7c4bc123469">one year</ix:nonNumeric> on all wholegood units and <ix:nonNumeric contextRef="i72a1ba6068504c79a2fd7f8558bca6f2_D20220101-20221231" name="alg:ProductWarrantyPeriod" format="ixt-sec:durday" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI1NjE_365e5adf-0461-42ee-a141-9d330eb6360f">90</ix:nonNumeric> days on parts, though some components can have warranty for longer terms.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Warranty reserve, as a percentage of sales, is generally calculated by looking at the current <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="alg:ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI3Mjk_42889ff9-7e10-46e1-b497-cf21e455ef85">twelve months</ix:nonNumeric>&#8217; expenses and prorating that amount based on <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="alg:ProductWarrantyAccrualPeriodForSalesUsedInCalculation" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI3Nzc_d4083c83-b16c-4acd-9f62-9152d85c7e99">twelve months</ix:nonNumeric>&#8217; sales with a <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI3OTQ_46274a57-12b5-4685-a7f7-b0ac8eb30cb6">three</span> to <ix:nonNumeric contextRef="i9f473c4749174271bfd71f93c77ca853_D20220101-20221231" name="alg:ProductWarrantyAccrualLagPeriod" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzMwNzI_8bae3ca2-aa4a-4811-89b8-77f7d2044e7d">six month</ix:nonNumeric> lag period. The Company&#8217;s historical experience is that an end-user takes approximately <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI4OTc_461d3e84-85a1-4af0-9172-95baabe6f27b">three</span> to <ix:nonNumeric contextRef="i9f473c4749174271bfd71f93c77ca853_D20220101-20221231" name="alg:ProductWarrantyAccrualLagPeriod" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI5MDM_ea112ce1-8c91-4f97-bb7d-294cf076d7da">six months</ix:nonNumeric> from the receipt of the unit to file a warranty claim.</span></div></ix:nonNumeric><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The current liability warranty reserve balance was $<ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-5" name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzMwMTQ_29a02a00-7abe-4865-aaec-90d9ae0a45bf">9.3</ix:nonFraction> million on December&#160;31, 2022 and $<ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-5" name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzMwMjc_fbc87d47-0a23-498e-bfd4-65f35874b7d9">10.0</ix:nonFraction> million on December&#160;31, 2021 and is included in </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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_157">Note 11</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.</span></div></ix:continuation><div style="text-indent:18pt"><span><br/></span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_139"></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">6. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:InventoryDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzkvZnJhZzo3NWI3YTE5ODE1YzI0NjljYTE3ZmUyMGM5OThjZWYyMi90ZXh0cmVnaW9uOjc1YjdhMTk4MTVjMjQ2OWNhMTdmZTIwYzk5OGNlZjIyXzY3_da96e6e5-b8a5-47e5-941f-95e24e63abbc" continuedAt="ic43c3bb65db94cc3bfc3ecd9e34580ed" escape="true">INVENTORIES</ix:nonNumeric></span></div><ix:continuation id="ic43c3bb65db94cc3bfc3ecd9e34580ed"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">&#160;</span></div><div style="text-indent:18pt"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzkvZnJhZzo3NWI3YTE5ODE1YzI0NjljYTE3ZmUyMGM5OThjZWYyMi90ZXh0cmVnaW9uOjc1YjdhMTk4MTVjMjQ2OWNhMTdmZTIwYzk5OGNlZjIyXzY1_01a4a5d4-4622-48fa-925e-3183026c537c" escape="true"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Inventories consisted of the following:</span><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.350%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.139%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.373%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.432%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.206%"></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:'Times New Roman',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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Finished goods and parts</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:InventoryFinishedGoodsNetOfReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzkvZnJhZzo3NWI3YTE5ODE1YzI0NjljYTE3ZmUyMGM5OThjZWYyMi90YWJsZTpiMWFlMzNkNDVjYjU0Yjk5OGFhNjcxN2I4MDRjMDVhZC90YWJsZXJhbmdlOmIxYWUzM2Q0NWNiNTRiOTk4YWE2NzE3YjgwNGMwNWFkXzItMi0xLTEtNjM4ODc_e34d2725-3b0d-4643-a112-5cb06ae39350">312,726</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:InventoryFinishedGoodsNetOfReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzkvZnJhZzo3NWI3YTE5ODE1YzI0NjljYTE3ZmUyMGM5OThjZWYyMi90YWJsZTpiMWFlMzNkNDVjYjU0Yjk5OGFhNjcxN2I4MDRjMDVhZC90YWJsZXJhbmdlOmIxYWUzM2Q0NWNiNTRiOTk4YWE2NzE3YjgwNGMwNWFkXzItNC0xLTEtNjM4ODc_ab7a9d2b-48a1-40ec-9f1d-4d8a216d80c2">277,760</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Work in process</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:InventoryWorkInProcessNetOfReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzkvZnJhZzo3NWI3YTE5ODE1YzI0NjljYTE3ZmUyMGM5OThjZWYyMi90YWJsZTpiMWFlMzNkNDVjYjU0Yjk5OGFhNjcxN2I4MDRjMDVhZC90YWJsZXJhbmdlOmIxYWUzM2Q0NWNiNTRiOTk4YWE2NzE3YjgwNGMwNWFkXzMtMi0xLTEtNjM4ODc_9c7a98c7-aae7-4a0c-b1ce-0d4b76d687d1">22,273</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:InventoryWorkInProcessNetOfReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzkvZnJhZzo3NWI3YTE5ODE1YzI0NjljYTE3ZmUyMGM5OThjZWYyMi90YWJsZTpiMWFlMzNkNDVjYjU0Yjk5OGFhNjcxN2I4MDRjMDVhZC90YWJsZXJhbmdlOmIxYWUzM2Q0NWNiNTRiOTk4YWE2NzE3YjgwNGMwNWFkXzMtNC0xLTEtNjM4ODc_a3a651ae-be03-4860-b978-25fa96b18783">24,895</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Raw materials</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:InventoryRawMaterialsNetOfReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzkvZnJhZzo3NWI3YTE5ODE1YzI0NjljYTE3ZmUyMGM5OThjZWYyMi90YWJsZTpiMWFlMzNkNDVjYjU0Yjk5OGFhNjcxN2I4MDRjMDVhZC90YWJsZXJhbmdlOmIxYWUzM2Q0NWNiNTRiOTk4YWE2NzE3YjgwNGMwNWFkXzQtMi0xLTEtNjM4ODc_afda5038-fa04-4631-ba7c-101de7d1c532">17,554</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:InventoryRawMaterialsNetOfReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzkvZnJhZzo3NWI3YTE5ODE1YzI0NjljYTE3ZmUyMGM5OThjZWYyMi90YWJsZTpiMWFlMzNkNDVjYjU0Yjk5OGFhNjcxN2I4MDRjMDVhZC90YWJsZXJhbmdlOmIxYWUzM2Q0NWNiNTRiOTk4YWE2NzE3YjgwNGMwNWFkXzQtNC0xLTEtNjM4ODc_ca76fefd-7bb2-4187-83e5-4bea31473c86">18,262</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Inventory, net</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzkvZnJhZzo3NWI3YTE5ODE1YzI0NjljYTE3ZmUyMGM5OThjZWYyMi90YWJsZTpiMWFlMzNkNDVjYjU0Yjk5OGFhNjcxN2I4MDRjMDVhZC90YWJsZXJhbmdlOmIxYWUzM2Q0NWNiNTRiOTk4YWE2NzE3YjgwNGMwNWFkXzUtMi0xLTEtNjM4ODc_0ad81d04-7349-4c80-8247-ad39319f9401">352,553</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzkvZnJhZzo3NWI3YTE5ODE1YzI0NjljYTE3ZmUyMGM5OThjZWYyMi90YWJsZTpiMWFlMzNkNDVjYjU0Yjk5OGFhNjcxN2I4MDRjMDVhZC90YWJsZXJhbmdlOmIxYWUzM2Q0NWNiNTRiOTk4YWE2NzE3YjgwNGMwNWFkXzUtNC0xLTEtNjM4ODc_d9b78ef2-831b-41f9-9745-ba1504092e37">320,917</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr></table></ix:nonNumeric></div></ix:continuation><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">58</span></div></div></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_142"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></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%">7. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90ZXh0cmVnaW9uOjU3YTM3ZTRkNzA3MDQ4M2U4ODk3ZjAzYjYwZDdmMmQ0XzEwNg_dfe85a44-9143-4c72-8700-f7b03f8e00cf" continuedAt="id88d1b5e5dca4594a2bce3ce2dd4ee0e" escape="true">PROPERTY, PLANT AND EQUIPMENT</ix:nonNumeric></span></div><div style="text-align:center"><span><br/></span></div><div style="text-indent:18pt"><ix:continuation id="id88d1b5e5dca4594a2bce3ce2dd4ee0e"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90ZXh0cmVnaW9uOjU3YTM3ZTRkNzA3MDQ4M2U4ODk3ZjAzYjYwZDdmMmQ0XzEwNw_67bf329a-f667-4b72-b4b9-26cd7dc580ac" escape="true"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Property, plant and equipment consist of the following:</span><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:46.560%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.139%"></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:1.0%"></td><td style="width:3.724%"></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:1.0%"></td><td style="width:3.724%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.501%"></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-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:700;line-height:100%">December 31,</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%">&#160;</span></td></tr><tr><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:9pt;font-weight:400;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></div></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%">2022</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%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" 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:9pt;font-weight:700;line-height:100%">Useful</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Lives</span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Land</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3348296671fa487a884971b97eb216d2_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzItMi0xLTEtNjM4ODc_80d3a6d3-a112-4fa3-81c4-9307c0d2a7b4">12,792</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i249e2e9ad69844859b9656f0380afb9e_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzItNC0xLTEtNjM4ODc_227d7303-007b-40c6-a0d2-963850c6a82a">12,838</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Buildings and improvements</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i122eac470b9c48329a774c3e3bcded96_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzMtMi0xLTEtNjM4ODc_5fa8908e-949b-4904-8786-263c29c41bcb">145,616</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iad324c38f2e34c1f9ded6165b72b2375_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzMtNC0xLTEtNjM4ODc_6dcb735c-80c2-49ec-852c-5fc791836371">145,086</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:middle"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i95aa30d2c7224485a374de947f8e7755_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzMtNi0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo1NzU5ZDg2Nzg2Njc0NTQ1YTMwMWRjMzQ3ODI0MWRiOV81_7107e96b-cc3b-4f90-860c-2cb1589d0b4e">5</ix:nonNumeric>-<ix:nonNumeric contextRef="i36b0126f5a16463bbe27a370ace65833_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzMtNi0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo1NzU5ZDg2Nzg2Njc0NTQ1YTMwMWRjMzQ3ODI0MWRiOV84_e14c593e-1f9d-4bcc-bfeb-1574cb096a41">20</ix:nonNumeric> yrs.</span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Machinery and equipment</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i77a694f6bf444184afdfc6dc4a57c372_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzQtMi0xLTEtNjM4ODc_f646ae26-52ef-4819-b30e-a9913c68d663">140,252</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic49da4abfe964d918d3cc823a356905f_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzQtNC0xLTEtNjM4ODc_66c3c0f1-6d8b-4a97-87f6-02c628b9f5ef">129,901</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i00b8ba35ccec46dc9f5c29a4e5a91143_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzQtNi0xLTEtNjM4ODcvdGV4dHJlZ2lvbjoyZjUzOTQwNWI0YTg0Mjg4OTUzYTU4ZmZhODc4MzQyMl81_59765396-d5eb-4996-9959-bb1651ed158c">3</ix:nonNumeric>-<ix:nonNumeric contextRef="icb424d7932f448c89223aa3397e280e9_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzQtNi0xLTEtNjM4ODcvdGV4dHJlZ2lvbjoyZjUzOTQwNWI0YTg0Mjg4OTUzYTU4ZmZhODc4MzQyMl84_5d7676a2-60f8-400c-b48d-0d6cd445f263">10</ix:nonNumeric> yrs.</span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Office furniture and equipment</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id99a7e4f4e834539b17bffb1ca230dd7_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzUtMi0xLTEtNjM4ODc_5f168e99-97df-4840-8151-b48da9d27191">13,270</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id56c89efa1f343888b0c50ebff7d1899_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzUtNC0xLTEtNjM4ODc_60d9d2a8-9f77-4597-9f23-35f1d817b721">13,291</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:middle"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ie25d80ccacf9429992256251efa00407_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzUtNi0xLTEtNjM4ODcvdGV4dHJlZ2lvbjpkMmQ3N2NiZjRkNTE0ZjlkODY0Y2M4MzM3NWY3NzJlYl81_0e62823b-8a24-471b-9222-9d0cbcc0be2e">3</ix:nonNumeric>-<ix:nonNumeric contextRef="iaa9e5101517947619a1354bfee65e555_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzUtNi0xLTEtNjM4ODcvdGV4dHJlZ2lvbjpkMmQ3N2NiZjRkNTE0ZjlkODY0Y2M4MzM3NWY3NzJlYl84_77a3dfa3-8263-431a-b36a-b9d5009d0f19">7</ix:nonNumeric> yrs.</span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Computer software</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i86aa6d9413174db0a6c0a14c0845700d_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzYtMi0xLTEtNjM4ODc_870949b8-9c9b-4bc2-be84-ef2735b57923">13,551</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic8fdf016860e4a6eaadd0501b7c4cce8_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzYtNC0xLTEtNjM4ODc_e7727c2b-c174-40e8-8daf-53e1607a8383">12,384</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i3e80469457664043b7fa8c3e73b6786a_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzYtNi0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo5OTU0ZWQ2NTQyMWI0MTI1OGVkZjFlNTVmMjM4NDgwZV81_185bdccf-eded-47e5-9e18-0dfb0946fdfb">3</ix:nonNumeric>-<ix:nonNumeric contextRef="i7533dbd0266540ad9432641845a22e51_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzYtNi0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo5OTU0ZWQ2NTQyMWI0MTI1OGVkZjFlNTVmMjM4NDgwZV84_a554e249-2de2-495f-982c-87fa11df13ac">7</ix:nonNumeric> yrs.</span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Transportation equipment</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i69f6c89be1a144e883096028fa26b0da_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzctMi0xLTEtNjM4ODc_e42a62e1-0322-4efa-aa5e-0f18cc822c34">9,597</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib8393b9f33594e8dba986d7172143777_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzctNC0xLTEtNjM4ODc_ad3d3d93-a527-4b57-baaf-d470c5f33bcc">8,363</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:middle"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ib99b82b5a9c64c95a4bfe92aec5e613b_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzctNi0xLTEtNjM4ODcvdGV4dHJlZ2lvbjozYWQ5NzE5MTMzOGI0YzBjOTA4ZjIzODQ2MDI4NGY0ZV81_d264035d-c13e-4767-8c73-2ca4e3b6fdc5">3</ix:nonNumeric> yrs.</span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Property, plant and equipment, at cost</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzgtMi0xLTEtNjM4ODc_02e7b3a0-1b22-4a6f-93cd-716dbf482a65">335,078</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzgtNC0xLTEtNjM4ODc_071bf7a4-f85d-435e-81b0-690ed93b0ce0">321,863</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accumulated depreciation</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzktMi0xLTEtNjM4ODc_7ea4f1bd-962f-497a-90ca-eaa9b9e49f7e">180,071</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzktNC0xLTEtNjM4ODc_b25a1c4b-0f8f-4669-b78b-6b309c052c4d">169,372</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Property, plant and equipment, net</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzEwLTItMS0xLTYzODg3_27a6577b-a69f-44fc-88c3-6b9724a86c62">155,007</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzEwLTQtMS0xLTYzODg3_69277170-f4eb-4c1c-9e39-d04ca8e7149b">152,491</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr></table></ix:nonNumeric></ix:continuation></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </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%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_145"></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">8. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:GoodwillDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90ZXh0cmVnaW9uOjk0NzJkMzVkNWRhYzRkOTRhOTNjMGY3YzIyYmJhMjlhXzExOA_9aee14ec-7b88-40fa-a577-261067bb86b3" continuedAt="i2df924e6af50470eaa205a74494c00b8" escape="true">GOODWILL</ix:nonNumeric></span></div><ix:continuation id="i2df924e6af50470eaa205a74494c00b8"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ScheduleOfGoodwillTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90ZXh0cmVnaW9uOjk0NzJkMzVkNWRhYzRkOTRhOTNjMGY3YzIyYmJhMjlhXzExOQ_4140ebe5-dd31-46dc-9f16-68abe90484b5" escape="true"><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 year ended December&#160;31, 2020, 2021, and 2022 are as follows:</span><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:54.309%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:1.970%"></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:1.0%"></td><td style="width:1.970%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:1.970%"></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:1.0%"></td><td style="width:1.970%"></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 style="width:1.0%"></td><td style="width:2.262%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.137%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Vegetation Management</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Industrial Equipment</span></td><td colspan="3" style="display:none"></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:700;line-height:100%">Consolidated</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</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:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></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="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:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance at December 31, 2019</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iedfcf9c8e2264240a132e99838accd6d_I20191231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzItMi0xLTEtNjM4ODc_23ccd60a-197f-4625-99b3-499bd86ec3bd">126,894</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iabfb89696316430eafcf64baede0be8b_I20191231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzItNS0xLTEtNjM4ODc_f9094b5b-1f24-4b8c-8133-f850f0da5f43">71,128</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;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="display:none"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i418e1db8b7e1486ea4572f36257de9de_I20191231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzItMTEtMS0xLTYzODg3_ad7f23ff-8919-4aca-a09e-61190bcd34e3">198,022</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Translation adjustment</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i513fb2f7accf49ecacbc7116eafbe588_D20200101-20201231" decimals="-3" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzMtMi0xLTEtNjM4ODc_14a3e3e8-a6f0-4615-8766-c728a23bb435">132</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i36cdf5e00a0245ce92a15de38f5924f4_D20200101-20201231" decimals="-3" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzMtNS0xLTEtNjM4ODc_c4a215e7-37f7-4b26-b383-fbc6e370f3ea">1,036</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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="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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzMtMTEtMS0xLTYzODg3_71e2cc24-b2eb-4555-abe6-d86cd6ee2f47">1,168</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Goodwill adjustment</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i513fb2f7accf49ecacbc7116eafbe588_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:GoodwillPurchaseAccountingAdjustments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzQtMi0xLTEtNjM4ODc_1f0dfc8e-5964-44fa-8b3a-aa5b0e4d0ae9">2,045</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i36cdf5e00a0245ce92a15de38f5924f4_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:GoodwillPurchaseAccountingAdjustments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzQtNS0xLTEtNjM4ODc_dd3f4114-13c9-49c2-8f5e-10845a103542">2,013</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;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="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:GoodwillPurchaseAccountingAdjustments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzQtMTEtMS0xLTYzODg3_4971c2f1-60ce-45db-ae56-a8727a8b762c">4,058</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance at December 31, 2020</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b9aaca501be4ac2a3e9953b36156442_I20201231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzUtMi0xLTEtNjM4ODc_0240908d-1851-4e4e-8fe5-55638150abeb">124,981</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:middle"></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 style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5bb51e7640b046fcbb14996aa5001c29_I20201231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzUtNS0xLTEtNjM4ODc_707b98f9-1606-4652-a0c9-24113d039ba7">70,151</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:middle"></td><td colspan="3" style="background-color:#ffffff;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="display:none"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5d74fc3138934e70861715f06fa062c7_I20201231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzUtMTEtMS0xLTYzODg3_1dd9e05a-2e50-49de-b577-f3d4b9abb8f6">195,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:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Translation adjustment</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="if77ec05e8b684280b18475c39a8bf482_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzYtMi0xLTEtNjM4ODc_30f35053-5840-47a3-8d48-9abd9dd49d4e">1,510</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i3182e3589e3647f599dbed14ec3a5afe_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzYtNS0xLTEtNjM4ODc_0bdee14e-a120-477b-914a-e3cde2af05d2">708</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;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="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzYtMTEtMS0xLTYzODg3_60aadac8-a249-446c-bd94-bfe2de193000">2,218</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Goodwill acquired</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if77ec05e8b684280b18475c39a8bf482_D20210101-20211231" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzctMi0xLTEtNjM4ODc_9c22b1da-0df4-485e-bbca-c97af039283b">9,492</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3182e3589e3647f599dbed14ec3a5afe_D20210101-20211231" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzctNS0xLTEtNjM4ODc_08410397-4c78-40d4-9b0d-bea694428d16">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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="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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzctMTEtMS0xLTYzODg3_fcfce1d4-5e32-47df-9b10-5bc4ba0bc324">9,492</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance at December 31, 2021</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifabd95c5636e4ae29d276ed3df2f04aa_I20211231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzgtMi0xLTEtNjM4ODc_53aea828-3243-48b5-bd62-d4264c519843">132,963</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib5cd129a56a24fffb8578ab324d3ad87_I20211231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzgtNS0xLTEtNjM4ODc_af1df521-1122-4578-b9e2-9715628589b9">69,443</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;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="display:none"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzgtMTEtMS0xLTYzODg3_9e1fe3c2-1229-49d0-9077-8ebb65112f07">202,406</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Translation adjustment</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i0ff65971f8a344f3afdf75aa25d869f1_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzktMi0xLTEtNjM4ODc_c432d91d-e39e-4e9f-a9be-e9b5212f235f">1,882</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ibaa2c0aa8b8145e0846cbc65655c330c_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzktNS0xLTEtNjM4ODc_97b41f36-bf49-4703-affe-9da2445a38c5">1,147</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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="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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzktMTEtMS0xLTYzODg3_4e995c8d-ff5e-4721-8608-d4c704353216">3,029</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Goodwill adjustment</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i0ff65971f8a344f3afdf75aa25d869f1_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:GoodwillPurchaseAccountingAdjustments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzEwLTItMS0xLTYzODg3_1e025453-eb3d-4c4e-b5e8-06316952038e">3,519</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibaa2c0aa8b8145e0846cbc65655c330c_D20220101-20221231" decimals="-3" name="us-gaap:GoodwillPurchaseAccountingAdjustments" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzEwLTUtMS0xLTYzODg3_190d62ff-f001-43a0-b697-5019de8e7c31">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;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="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:GoodwillPurchaseAccountingAdjustments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzEwLTExLTEtMS02Mzg4Nw_2edf5afb-b63d-434c-82ef-dfde0f99e06a">3,519</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance at December 31, 2022</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i803060fc3e714dea8c404e56b28916c4_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzExLTItMS0xLTYzODg3_121e12f3-6a04-471f-9328-f777b15b8492">127,562</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3d862a4e890749ffb9f5627adbe5ad23_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzExLTUtMS0xLTYzODg3_453f1ce6-814c-4b6c-8b87-355a887590bd">68,296</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;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="display:none"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzExLTExLTEtMS02Mzg4Nw_00dadb2d-41db-44b9-aca8-30781cfff451">195,858</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr></table></ix:nonNumeric></div></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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">59</span></div></div></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_148"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></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%">9. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:IntangibleAssetsDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzg3Mg_ee310c54-ebf6-45b2-9d4a-90e7f67701a5" continuedAt="i1f2c363ac6b34a67b4ee96df3351893c" escape="true">INTANGIBLE ASSETS</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="i1f2c363ac6b34a67b4ee96df3351893c" continuedAt="iac5efd679b3d478c8633c0872d0f5d35"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzg3MQ_62472651-0c74-4f55-a9d4-3cd60acbdf87" escape="true"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzg3MQ_a6cfe115-5ae5-4cc7-9731-414da3927cce" escape="true"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a summary of the Company's intangible assets net of the accumulated amortization:</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%"> </span><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.755%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.419%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:1.974%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.002%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.289%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:1.974%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.027%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.560%"></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-weight:400;line-height:100%">(in thousands)</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:700;line-height:100%">Estimated Useful Lives</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:9pt;font-weight:700;line-height:100%">December 31, 2022</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:9pt;font-weight:700;line-height:100%">December 31, 2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Definite:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Trade names and trademarks</span></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:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i68a256c1723d43dbb5df670bc790f863_D20220101-20221231" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzItMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo4YTgwNmQ5NmJiMDY0MDcxYmI0YTI2ZDQ2Zjg2MjU1OF80_0da4fd1d-5af1-46ac-bbba-7cae57bf095d">15</ix:nonNumeric>-<ix:nonNumeric contextRef="icbd1c5e5e7eb47c3958b7b85bf0d081c_D20220101-20221231" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzItMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo4YTgwNmQ5NmJiMDY0MDcxYmI0YTI2ZDQ2Zjg2MjU1OF83_7dac10b6-eea7-4aa1-9649-97ede602a403">25</ix:nonNumeric> years</span></div></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="usd" contextRef="iadf14f0daee54087a5b649d24234dac0_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzItMy0xLTEtNjM4ODc_48c82008-fa06-45b3-8914-030267be8b96">68,797</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 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="usd" contextRef="i95178ffe330d48fcb4637fc13250db52_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzItNi0xLTEtNjM4ODc_4318394b-29d6-4558-a578-0b919263bd1a">68,321</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></tr><tr><td colspan="3" style="background-color:#def3c0;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;&#160;&#160;Customer and dealer relationships</span></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ib292af5aee0b48b289a81b72eca38568_D20220101-20221231" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzMtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjoxZGYyMzRiMDRhYzg0YTRiYjFiMGE2ZmFiZmE2MjljYl80_d5cf5211-9642-4708-8882-cc15f1d32bbc">8</ix:nonNumeric>-<ix:nonNumeric contextRef="iee07aec1619645a0ae8b12bd11a69963_D20220101-20221231" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzMtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjoxZGYyMzRiMDRhYzg0YTRiYjFiMGE2ZmFiZmE2MjljYl83_baaa2565-dd6e-4704-a9cc-220becec3f94">15</ix:nonNumeric> years</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i435e4507e6da42a3a9932ae15da0534c_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzMtMy0xLTEtNjM4ODc_f006f19a-0f9d-49bc-a7d6-cee85b7f4c4d">129,338</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="id92355343cac46968b239cfc5b441c9e_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzMtNi0xLTEtNjM4ODc_71b50f05-1b1e-42af-b812-e632f06fd13b">126,104</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Patents and developed technologies</span></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:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ifc03ad598ec34d0a9d6718b3661fd473_D20220101-20221231" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzQtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjphZTliNmVjODJlM2M0M2NlYWIyM2E4YWRiYjg2YjFiNF80_c1f05ed9-5e16-4998-b905-4efd4d7d1d1b">3</ix:nonNumeric>-<ix:nonNumeric contextRef="i9c308d2b36ab400a8412ea7aeb29b0ad_D20220101-20221231" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzQtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjphZTliNmVjODJlM2M0M2NlYWIyM2E4YWRiYjg2YjFiNF83_042ce0a6-bc74-4191-b84d-d3af265dfd58">12</ix:nonNumeric> years</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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="i83a283f3498f4b0fbfc99e5b21267cb7_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzQtMy0xLTEtNjM4ODc_cf897c47-6cb1-4007-abc9-f609224cc0c6">28,437</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="2" style="background-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="i71cdbdff48c64bc382792b93bb428b29_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzQtNi0xLTEtNjM4ODc_a8af76f6-6a69-4c0f-a4e9-5411a017ea4b">29,338</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></tr><tr><td colspan="3" style="background-color:#def3c0;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;&#160;&#160;Favorable leasehold interests</span></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i5c7c231201cc4d7f849189db8e3482d7_D20220101-20221231" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzUtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo4ZWJkMGQwNGE3YTM0ZjA0OWE3YTUwMjM3YWYwZWMzOF80_d2c6e29c-64d9-4e5e-9797-9032f42014a6">7</ix:nonNumeric> years</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i55ac1b87fd0140a5bea90053aada53dc_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzUtMy0xLTEtNjM4ODc_8c9413c7-1cb3-4a44-9608-88cb5c4ad864">4,200</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i470fd970d74c412eb3030b333e36860e_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzUtNi0xLTEtNjM4ODc_7efa742b-1067-4d91-8ed1-94345b7a4382">4,200</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;&#160;Total at cost</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzYtMy0xLTEtNjM4ODc_858fb263-70b8-4e2e-8fb7-32f95ab28e12">230,772</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;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzYtNi0xLTEtNjM4ODc_6674140c-8f16-4958-abe6-b8d4b668ded8">227,963</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;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#def3c0;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;&#160;&#160;Less accumulated amortization</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzctMy0xLTEtNjM4ODc_7533d20d-dea9-45a9-a9d1-a41ec32aaec5">64,931</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzctNi0xLTEtNjM4ODc_ba551b8d-7bbb-4764-8291-66373e0e247e">49,997</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total net</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="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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzgtMy0xLTEtNjM4ODc_17c53c39-14af-4b8e-a255-e321ad31e863">165,841</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;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="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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzgtNi0xLTEtNjM4ODc_2c7a03e8-ef45-4f65-aa66-7a26459e4b45">177,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;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Indefinite:</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Trade names and trademarks</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="2" style="background-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="i1a039da70c38475196938960bb28c546_I20221231" decimals="-3" name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzEwLTMtMS0xLTYzODg3_3144cd82-5157-4aae-930f-d226f8f723c6">5,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="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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="i857f1683f4514f1c9ef93bf8aebe3446_I20211231" decimals="-3" name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzEwLTYtMS0xLTYzODg3_2be8382a-72e0-40f5-96d8-7b225767aa6e">5,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></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total Intangible Assets</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzExLTMtMS0xLTYzODg3_0e60e74d-700a-406c-b099-714e8be39fe8">171,341</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzExLTYtMS0xLTYzODg3_472ed2b8-6daf-4c2d-94c3-790779412239">183,466</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td></tr></table></div></ix:nonNumeric></ix:nonNumeric><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's net carrying value at December&#160;31, 2022 of intangible assets with definite useful lives consists of trade names and trademarks at $<ix:nonFraction unitRef="usd" contextRef="iadf14f0daee54087a5b649d24234dac0_I20221231" decimals="-5" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzI2MA_335bf366-f984-45f9-9feb-95a056f95148">54.9</ix:nonFraction> million, customer and dealer relationships at $<ix:nonFraction unitRef="usd" contextRef="i435e4507e6da42a3a9932ae15da0534c_I20221231" decimals="-5" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzMwMQ_45cfed6c-a474-4e18-8a24-04d0ea35fbf6">90.2</ix:nonFraction> million, patents and drawings at $<ix:nonFraction unitRef="usd" contextRef="i83a283f3498f4b0fbfc99e5b21267cb7_I20221231" decimals="-5" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzMyOQ_153e06be-b571-4b39-88bc-0d2717be3c34">18.5</ix:nonFraction> million, and favorable leasehold interests at $<ix:nonFraction unitRef="usd" contextRef="i55ac1b87fd0140a5bea90053aada53dc_I20221231" decimals="-5" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzM3MA_491cc1fd-8872-421a-afd4-5cd40d53a197">2.3</ix:nonFraction> million.  As of December&#160;31, 2022, the related accumulated amortization balance for the definite-lived assets were $<ix:nonFraction unitRef="usd" contextRef="iadf14f0daee54087a5b649d24234dac0_I20221231" decimals="-5" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzQ2NQ_a20539c2-9919-4784-b1a8-0873c7f3edea">13.9</ix:nonFraction> million for trade names and trademarks, $<ix:nonFraction unitRef="usd" contextRef="i435e4507e6da42a3a9932ae15da0534c_I20221231" decimals="-5" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzUwMA_e82b79d6-dfae-44ca-906e-c81bdd1ea00a">39.2</ix:nonFraction> million for customer and dealer relationships, $<ix:nonFraction unitRef="usd" contextRef="i83a283f3498f4b0fbfc99e5b21267cb7_I20221231" decimals="-5" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzU0Mg_c68ab203-4408-4467-9279-4e5493602d86">9.9</ix:nonFraction> million for patents and drawings, and $<ix:nonFraction unitRef="usd" contextRef="i55ac1b87fd0140a5bea90053aada53dc_I20221231" decimals="-5" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzU3NQ_d4660430-0003-4e02-8f2e-237c7f7c33e7">1.9</ix:nonFraction> million for favorable leasehold interests.  The Company estimates amortization expense to be $<ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-5" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzY2Mw_00fb45c4-eabc-4503-8ec4-da411cee2421"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-5" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzY2Mw_3aa9c210-26e0-46e7-9228-374fa97b705c"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-5" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzY2Mw_f72b87a1-c018-4b24-941c-fc6b41818e9e"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-5" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzY2Mw_fb06b8c1-1380-44fe-ab23-8c14f0b6a3af"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-5" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzY2Mw_fc20f52f-d813-446a-9207-3b8fab2fb1fb">15.3</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction> million for each of the next five years.</span></div></ix:continuation><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><ix:continuation id="iac5efd679b3d478c8633c0872d0f5d35" continuedAt="ia34d5212181f4fc8a82e84d64a7454a9"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Indefinite-lived trade names and trademarks consisted of the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Gradall </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">trade name with a carrying value of $<ix:nonFraction unitRef="usd" contextRef="i609e1a9b7ab549e796bb32b09b753415_I20221231" decimals="-5" name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzgwNQ_cf550c29-a88b-46a1-851c-c8a4f461b60b">3.6</ix:nonFraction> million and the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Bush Hog </span></ix:continuation><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ia34d5212181f4fc8a82e84d64a7454a9">trade name with a carrying value of $<ix:nonFraction unitRef="usd" contextRef="i9bfa2e1d27b04dd59a40d79958302b94_I20221231" decimals="-5" name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzg2MQ_ada008ee-c9ad-4424-b061-a6c02439e163">1.9</ix:nonFraction> million.</ix:continuation>  </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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">60</span></div></div></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_151"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></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%">10. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:LesseeOperatingLeasesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90ZXh0cmVnaW9uOjAyZjdiZjllYzliYTRjYTRhYTNhYmI3ZDdhMGQ0YzZiXzc0OA_3ec76aed-293c-4d72-9d31-ff55fe3ecb82" continuedAt="i9d0657fdb7354fd0856973898e7c4d27" escape="true"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:LesseeFinanceLeasesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90ZXh0cmVnaW9uOjAyZjdiZjllYzliYTRjYTRhYTNhYmI3ZDdhMGQ0YzZiXzc0OA_784afc69-1c8e-4d05-a351-67642c15f804" continuedAt="idc137b6131ca47308e2f1b99f68ad313" escape="true">LEASES </ix:nonNumeric></ix:nonNumeric></span></div><div style="text-align:center"><span><br/></span></div><ix:continuation id="i9d0657fdb7354fd0856973898e7c4d27" continuedAt="ie7e5f099df4e47d383f68440c95cba5c"><ix:continuation id="idc137b6131ca47308e2f1b99f68ad313" continuedAt="i33014ec069ba4771b9a72a779d56f2d7"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Leases</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company leases office space and equipment under various operating and capital leases, which generally are expected to be renewed or replaced by other leases.  <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:LeaseCostTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90ZXh0cmVnaW9uOjAyZjdiZjllYzliYTRjYTRhYTNhYmI3ZDdhMGQ0YzZiXzc0Mg_a304fbba-2561-4885-9154-0ad93b992b6e" continuedAt="i6bc2f3ec699c4f77a1ca7ee250eb0cd8" escape="true">As of December&#160;31, 2022, the components of lease cost were as follows:</ix:nonNumeric></span></div><div style="text-indent:18pt"><span><br/></span></div><div><ix:continuation id="i6bc2f3ec699c4f77a1ca7ee250eb0cd8"><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:61.911%"></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:15.420%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.262%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.423%"></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></tr><tr><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%">Components of Lease Cost</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="9" 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:9pt;font-weight:700;line-height:100%">Twelve Months Ended December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</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></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Finance lease cost:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;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></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:9pt;font-weight:400;line-height:100%">Amortization of right-of-use assets</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: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="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:FinanceLeaseRightOfUseAssetAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzQtMi0xLTEtNjM4ODc_ae4a1ad2-e9b6-4eee-aae6-7ac37fe5e27b">30</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="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:FinanceLeaseRightOfUseAssetAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzQtNC0xLTEtNjM4ODc_10c60909-5537-4b8c-82b8-f1a1b8aaa2fd">67</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></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Interest on lease liabilities</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:FinanceLeaseInterestExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzUtMi0xLTEtNjM4ODc_087b08ff-3d57-4c42-bfeb-0dc1c44607d7">1</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:FinanceLeaseInterestExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzUtNC0xLTEtNjM4ODc_8a65aad8-86fd-4d73-90b4-dd208f505412">3</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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></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:9pt;font-weight:400;line-height:100%">Operating lease cost</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:OperatingLeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzYtMi0xLTEtNjM4ODc_7f307640-c575-4ca4-a38c-cd536bf51f5c">5,783</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:OperatingLeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzYtNC0xLTEtNjM4ODc_dab4bab9-c65b-4918-9697-2686c6e6b8c7">5,571</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></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:ShortTermLeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzctMi0xLTEtNjM4ODc_691afac3-eba3-4645-bcec-fe57a343afb5">1,397</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:ShortTermLeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzctNC0xLTEtNjM4ODc_21be4462-5084-4851-8ad5-58ff704cb78f">1,033</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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></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:9pt;font-weight:400;line-height:100%">Variable lease cost</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:VariableLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzgtMi0xLTEtNjM4ODc_6f83dedd-8d63-4314-a8e3-ff5ed5954485">348</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:VariableLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzgtNC0xLTEtNjM4ODc_916fe6e9-f5a4-4042-8e50-fbbfd665e9d7">410</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></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></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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:9pt;font-weight:400;line-height:100%">Total lease cost</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:LeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzEwLTItMS0xLTYzODg3_dff9fcd5-0b67-4813-85c5-e11fa0eb1477">7,559</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:LeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzEwLTQtMS0xLTYzODg3_0b97e97f-14ad-4690-870b-1a84ef5d4445">7,084</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;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></tr></table></ix:continuation></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span><br/></span></div><div style="margin-bottom:10pt;text-indent:18pt"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90ZXh0cmVnaW9uOjAyZjdiZjllYzliYTRjYTRhYTNhYmI3ZDdhMGQ0YzZiXzc0NQ_219b59f1-9753-4fdd-90c9-766d812be467" escape="true"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, future minimum lease payments under these non-cancelable leases are:</span><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.245%"></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:1.0%"></td><td style="width:18.345%"></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="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%">Future Minimum Lease Payments</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></div></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:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Operating</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Leases</span></div></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2023</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo3NTI3ZmZlMTUzMmI0ZmM4YmEwOTY2YWJlNThlOTZjNy90YWJsZXJhbmdlOjc1MjdmZmUxNTMyYjRmYzhiYTA5NjZhYmU1OGU5NmM3XzItMi0xLTEtNjM4ODc_99a7a259-2f83-4d67-b7da-b7332d0b10f8">5,177</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo3NTI3ZmZlMTUzMmI0ZmM4YmEwOTY2YWJlNThlOTZjNy90YWJsZXJhbmdlOjc1MjdmZmUxNTMyYjRmYzhiYTA5NjZhYmU1OGU5NmM3XzMtMi0xLTEtNjM4ODc_417632b7-0a7e-4065-b9e9-16cf93d9086e">4,099</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo3NTI3ZmZlMTUzMmI0ZmM4YmEwOTY2YWJlNThlOTZjNy90YWJsZXJhbmdlOjc1MjdmZmUxNTMyYjRmYzhiYTA5NjZhYmU1OGU5NmM3XzQtMi0xLTEtNjM4ODc_4e4f6926-cc83-4f1d-a4ba-77335bb243f8">3,294</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2026</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo3NTI3ZmZlMTUzMmI0ZmM4YmEwOTY2YWJlNThlOTZjNy90YWJsZXJhbmdlOjc1MjdmZmUxNTMyYjRmYzhiYTA5NjZhYmU1OGU5NmM3XzUtMi0xLTEtNjM4ODc_d5119dd6-9388-4114-8f70-d2eb37b4e1af">2,728</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2027</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo3NTI3ZmZlMTUzMmI0ZmM4YmEwOTY2YWJlNThlOTZjNy90YWJsZXJhbmdlOjc1MjdmZmUxNTMyYjRmYzhiYTA5NjZhYmU1OGU5NmM3XzYtMi0xLTEtNjM4ODc_144ba141-9704-42d4-a3ca-90625fdb3dc0">1,780</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Thereafter</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo3NTI3ZmZlMTUzMmI0ZmM4YmEwOTY2YWJlNThlOTZjNy90YWJsZXJhbmdlOjc1MjdmZmUxNTMyYjRmYzhiYTA5NjZhYmU1OGU5NmM3XzctMi0xLTEtNjM4ODc_5f21fdad-7b1b-4503-85f4-45508a437209">1,743</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total minimum lease payments</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo3NTI3ZmZlMTUzMmI0ZmM4YmEwOTY2YWJlNThlOTZjNy90YWJsZXJhbmdlOjc1MjdmZmUxNTMyYjRmYzhiYTA5NjZhYmU1OGU5NmM3XzgtMi0xLTEtNjM4ODc_effcbc67-fd04-4935-bd64-a11663b4b3a1">18,821</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:9pt;font-weight:400;line-height:100%">Less imputed interest</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo3NTI3ZmZlMTUzMmI0ZmM4YmEwOTY2YWJlNThlOTZjNy90YWJsZXJhbmdlOjc1MjdmZmUxNTMyYjRmYzhiYTA5NjZhYmU1OGU5NmM3XzktMi0xLTEtNjM4ODc_b7485895-654a-4155-8122-cba868dc9963">1,287</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Total lease liabilities</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:OperatingLeaseLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo3NTI3ZmZlMTUzMmI0ZmM4YmEwOTY2YWJlNThlOTZjNy90YWJsZXJhbmdlOjc1MjdmZmUxNTMyYjRmYzhiYTA5NjZhYmU1OGU5NmM3XzEwLTItMS0xLTYzODg3_a7a4663f-3cf7-4118-9e68-7798f891d370">17,534</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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></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><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></tr></table></ix:nonNumeric></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;</span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Rental expense for operating leases was $<ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-5" name="us-gaap:OperatingLeaseExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90ZXh0cmVnaW9uOjAyZjdiZjllYzliYTRjYTRhYTNhYmI3ZDdhMGQ0YzZiXzM3Ng_2b5be8f4-c1fc-4fb0-b5d7-1da61cbd1da5">7.5</ix:nonFraction> million for 2022, $<ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-5" name="us-gaap:OperatingLeaseExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90ZXh0cmVnaW9uOjAyZjdiZjllYzliYTRjYTRhYTNhYmI3ZDdhMGQ0YzZiXzM4Nw_ec23664c-3994-4aa2-b91f-0c76e0fc00f7">7.0</ix:nonFraction> million for 2021, and $<ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-5" name="us-gaap:OperatingLeaseExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90ZXh0cmVnaW9uOjAyZjdiZjllYzliYTRjYTRhYTNhYmI3ZDdhMGQ0YzZiXzQwMg_bca690cf-48b6-4ba5-8a09-19e45b34e656">6.1</ix:nonFraction> million for 2020.</span></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:'Times New Roman',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><br/></span></div></div><div style="text-indent:18pt"><span><br/></span></div><ix:continuation id="ie7e5f099df4e47d383f68440c95cba5c"><ix:continuation id="i33014ec069ba4771b9a72a779d56f2d7"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Future Lease Commencements</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, we have additional operating leases that have not yet commenced in the amount of $<ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-5" name="alg:LesseeOperatingLeaseLeaseNotYetCommencedAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90ZXh0cmVnaW9uOjAyZjdiZjllYzliYTRjYTRhYTNhYmI3ZDdhMGQ0YzZiXzUzMw_68b744fb-dab7-48c6-bd33-8f393534a6c1">3.1</ix:nonFraction> million. These operating leases will commence in fiscal year 2023.</span></div><div style="margin-bottom:10pt;text-indent:18pt"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="alg:AssetsAndLiabilitiesLesseeTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90ZXh0cmVnaW9uOjAyZjdiZjllYzliYTRjYTRhYTNhYmI3ZDdhMGQ0YzZiXzc0Ng_704227dd-bf42-4abf-9270-655d6e6327ac" escape="true"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental balance sheet information related to leases was as follows:</span><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:60.888%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.992%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.577%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.423%"></td><td style="width:0.1%"></td></tr><tr><td colspan="15" style="border-bottom: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:100%">Operating Leases</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="9" 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:9pt;font-weight:700;line-height:100%">December 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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-right:-30pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtMC0xLTEtNjM4ODc_519b9153-1678-4ae1-96d9-ece32fbc6c3b"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtMC0xLTEtNjM4ODc_5e442bd9-e082-43f6-86fc-6dbc895fe9ba">Other non-current assets</span></span></span></div></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtMi0xLTEtNjM4ODc_85eee0b7-19f0-4d4f-8f15-7f5eab5067d6">17,249</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtNC0xLTEtNjM4ODc_7d585d02-d41e-4c2d-bedc-008ef5994c89">16,744</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;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;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:#def3c0;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%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtMC0xLTEtNjM4ODc_54be147c-36db-432e-8216-c265a23c942d"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtMC0xLTEtNjM4ODc_82079088-df46-459e-bc9c-032b93ad004c">Accrued liabilities</span></span></span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtMi0xLTEtNjM4ODc_3c6d346b-779b-4d6e-9ae8-98e8c813b0af">4,685</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtNC0xLTEtNjM4ODc_0351f6fa-6860-4786-a8d8-ba1a85f31e40">4,655</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtMC0xLTEtNjM4ODc_152d7955-5136-4b3a-93f9-0d42b9c326e3"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtMC0xLTEtNjM4ODc_39316545-72e7-4e77-b63e-2caddc622e2e">Other long-term liabilities</span></span></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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtMi0xLTEtNjM4ODc_0d179e05-8e49-4996-9f8d-e2e7d7fbf897">12,849</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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtNC0xLTEtNjM4ODc_ba3a80fe-af3f-42e7-8799-ddcec9916c35">12,237</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:#def3c0;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:9pt;font-weight:400;line-height:100%">Total operating lease liabilities</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:OperatingLeaseLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzctMi0xLTEtNjM4ODc_ec80b55d-e3a9-44e9-b4cd-6e798ecc670d">17,534</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:OperatingLeaseLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzctNC0xLTEtNjM4ODc_87d1be31-e7e5-4284-90a7-8c42c633b183">16,892</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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;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:9pt;font-weight:400;line-height:100%">Weighted average remaining lease term</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzgtMi0xLTEtNjM4ODc_b9862b99-e342-41a1-931b-d6d3d0e03698">4.66</ix:nonNumeric> years</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzgtNC0xLTEtNjM4ODc_51b808e0-a8e7-4fac-aa6a-41367a0a8b40">5.14</ix:nonNumeric> years</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Weighted average discount rate</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="number" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="4" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzktMi0xLTEtNjM4ODc_1ba218c7-339c-4c77-87ea-21ff327c923d">3.30</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 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%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="number" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="4" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzktNC0xLTEtNjM4ODc_ba3e154e-5afe-47e2-a716-90364deed1d7">2.83</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 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%">%</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><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></tr></table></ix:nonNumeric></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="alg:SupplementalCashFlowInformationRelatedToLeasesTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90ZXh0cmVnaW9uOjAyZjdiZjllYzliYTRjYTRhYTNhYmI3ZDdhMGQ0YzZiXzc0Nw_2ca90c55-b60c-43b4-9698-0a9478cb6b5a" escape="true"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Supplemental cash flow information related to leases was as follows:</span><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.057%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.554%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.847%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.523%"></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:9pt;font-weight:700;line-height:100%">Twelve Months Ended December 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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;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:9pt;font-weight:700;line-height:100%">2021</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="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Cash paid for amounts included in the measurement of lease liabilities:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;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></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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;Operating cash flows from operating leases </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: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="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:OperatingLeasePayments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTpjMDg1NjQwOGM0M2E0MjMzYTFiNzdkMGFmM2MyOWM1NC90YWJsZXJhbmdlOmMwODU2NDA4YzQzYTQyMzNhMWI3N2QwYWYzYzI5YzU0XzUtMi0xLTEtNjM4ODc_0843084b-576e-4b79-ab60-54cac9787ae9">5,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 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="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:OperatingLeasePayments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTpjMDg1NjQwOGM0M2E0MjMzYTFiNzdkMGFmM2MyOWM1NC90YWJsZXJhbmdlOmMwODU2NDA4YzQzYTQyMzNhMWI3N2QwYWYzYzI5YzU0XzUtNC0xLTEtNjM4ODc_23596c6b-73a5-4ce5-82b4-75288142801c">5,013</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></tr></table></ix:nonNumeric></div></ix:continuation></ix:continuation><div style="text-indent:18pt"><span><br/></span></div><div><span><br/></span></div><div style="text-indent:18pt"><span><br/></span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_157"></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">11. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90ZXh0cmVnaW9uOjEyOWI3M2FjZWExMTQyYTBiZTg5ODczODk0MjhiNDM5Xzg3_b3fc34f6-3a7b-4a52-8019-cbc59e3d993f" continuedAt="iec98b74b88284c909a44bd139836b684" escape="true">ACCRUED LIABILITIES</ix:nonNumeric></span></div><div style="text-align:center"><span><br/></span></div><div style="text-indent:15pt"><ix:continuation id="iec98b74b88284c909a44bd139836b684"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90ZXh0cmVnaW9uOjEyOWI3M2FjZWExMTQyYTBiZTg5ODczODk0MjhiNDM5Xzg5_cb52158f-862a-4125-9b02-17d9afe0ecda" escape="true"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued liabilities consist of the following balances:</span><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.028%"></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.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.847%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.499%"></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:'Times New Roman',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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Salaries, wages and bonuses</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:AccruedEmployeeBenefitsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzItMi0xLTEtNjM4ODc_6d86061c-03a5-4c23-893e-4e7e3e3a0c67">37,590</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:AccruedEmployeeBenefitsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzItNC0xLTEtNjM4ODc_30987d90-06f3-419f-865d-92039615a154">37,462</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Lease liability</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzMtMi0xLTEtNjM4ODc_a8daa139-2b2a-4964-9131-b2eceba6eab0">4,685</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzMtNC0xLTEtNjM4ODc_989e292c-337b-485f-9b99-fde064bd04f0">4,655</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Taxes</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:TaxesPayableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzQtMi0xLTEtNjM4ODc_843ff345-a0b2-4a1a-85ec-fd6da402103c">2,426</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:TaxesPayableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzQtNC0xLTEtNjM4ODc_ac191bb7-c5e4-49a6-8f8d-2bb305026903">1,902</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Warranty</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzUtMi0xLTEtNjM4ODc_2c5375bf-ac12-4e1d-9353-f98eb888f295">9,340</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzUtNC0xLTEtNjM4ODc_95ef326e-2800-43d5-b254-e4d3510f230e">9,953</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Retirement provision</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzYtMi0xLTEtNjM4ODc_336f6545-0215-402b-b719-6360603272ae">2,588</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzYtNC0xLTEtNjM4ODc_79e0e65a-de52-4754-8364-0e9ab3be3603">2,967</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Customer deposits</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:ContractWithCustomerLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzctMi0xLTEtNjM4ODc_fd449cfb-cb94-455a-9758-c2c1350fb69a">5,197</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:ContractWithCustomerLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzctNC0xLTEtNjM4ODc_022d1714-9397-4908-aa08-f20dad3cc285">6,383</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:OtherLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzgtMi0xLTEtNjM4ODc_f9ff7924-a000-437b-969e-c384684efd20">9,542</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:OtherLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzgtNC0xLTEtNjM4ODc_dc07e361-bf9c-47d8-9136-06569ad3fab6">10,201</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued liabilities</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:AccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzktMi0xLTEtNjM4ODc_597be378-e413-4693-b487-764693cd4e0d">71,368</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:AccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzktNC0xLTEtNjM4ODc_75883dfa-4e07-4b42-b9a8-6f5f77dec61f">73,523</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr></table></ix:nonNumeric></ix:continuation></div><div style="text-align:center"><span><br/></span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_160"></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">12. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:FairValueDisclosuresTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjAvZnJhZzphMTIyNjQ0MDc5NDk0ODg0YTdlZjU2ZGVjMWI0NWExMS90ZXh0cmVnaW9uOmExMjI2NDQwNzk0OTQ4ODRhN2VmNTZkZWMxYjQ1YTExXzMwNDg_7b3b8559-97a2-4c58-bc63-db95232d082e" continuedAt="ie091bba5e5014a678475d91c488b4c62" escape="true">FAIR VALUE OF FINANCIAL INSTRUMENTS </ix:nonNumeric></span></div><div style="text-align:center"><span><br/></span></div><ix:continuation id="ie091bba5e5014a678475d91c488b4c62" continuedAt="i5b84d7873a844c8db4c54abc283ebf22"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:FairValueOfFinancialInstrumentsPolicy" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjAvZnJhZzphMTIyNjQ0MDc5NDk0ODg0YTdlZjU2ZGVjMWI0NWExMS90ZXh0cmVnaW9uOmExMjI2NDQwNzk0OTQ4ODRhN2VmNTZkZWMxYjQ1YTExXzMwNDk_ab1ffaab-6218-42dd-9bbe-4ee2ffc35feb" continuedAt="i8712e6f541f544c29722accbb1eae9ef" escape="true"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">U.S. GAAP requires or permits certain assets or liabilities to be measured at fair value on a recurring or non- recurring basis in our balance sheets. U.S. GAAP also requires the disclosure of the fair values of financial instruments when an option to elect fair value accounting has been provided but such election has not been made.  A debt obligation is an example of such a financial instrument.</span></div><div style="text-align:center"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Fair value is defined as the exchange price that would be received for an asset or paid to transfer a liability (an exit price) in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants. There is a three-tier fair value hierarchy based upon the observability of inputs used in valuation techniques. Observable inputs (highest level) reflect market data obtained from independent sources, while </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:'Times New Roman',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><br/></span></div></div><ix:continuation id="i5b84d7873a844c8db4c54abc283ebf22"><ix:continuation id="i8712e6f541f544c29722accbb1eae9ef"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">unobservable inputs (lowest level) reflect internally developed market assumptions. In fair value, measurements are classified under the following hierarchy:</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Level 1</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> &#8211; Quoted prices for identical assets or liabilities in active markets.</span></div><div style="padding-left:81pt;text-indent:-45pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Level 2</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> &#8211; Quoted prices for similar instruments in active markets; quoted prices for identical or similar instruments in markets that are not active; and model-derived valuations in which all significant inputs or significant value-drivers are observable in active markets.</span></div><div style="padding-left:81pt;text-indent:-45pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Level 3</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> &#8211; Model-derived valuations in which one or more significant inputs or significant value-drivers are unobservable.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="padding-right:16pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">When measuring fair value, the Company maximizes use of observable inputs and minimizes the use of unobservable inputs.</span></div><div style="padding-left:6pt;padding-right:16pt;text-indent:36pt"><span><br/></span></div><div style="margin-top:0.4pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">       Fair value measurements are classified to the lowest level input or value-driver that is significant to the valuation. A measurement may therefore be classified within Level 3 even though there may be significant inputs that are readily observable.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The carrying values of certain financial instruments, including cash and cash equivalents, accounts receivable, accounts payable, and accrued expenses, approximate fair value because of the short-term nature of these items. The carrying value of our debt approximates the fair value as of December&#160;31, 2022 and 2021, as the floating rates on our outstanding balances approximate current market rates. This conclusion was made based on Level 2 inputs.   Fair values determined by Level 2 utilize inputs that are observable for the asset or liability, either directly or indirectly. These include quoted prices for similar assets or liabilities in active markets and quoted prices for identical or similar assets or liabilities in markets that are not active. Other than the investments held by the retirement benefit plans, as described in </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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_175">Note 17</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> to the Consolidated Financial Statements, the Company does not have any other significant financial assets or liabilities measured at fair value on a recurring basis. </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The Company has no recurring or nonrecurring valuations that fall under Level 3 of the fair value hierarchy as of December&#160;31, 2022 and 2021.</span></div></ix:continuation></ix:continuation><div><span><br/></span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_163"></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">13. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:DebtDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzIzNjk_230910db-5e66-40e0-98ac-23000849f930" continuedAt="i1162f6f3b6f548a3a3e3315c59ef7080" escape="true">LONG-TERM DEBT</ix:nonNumeric></span></div><div style="text-align:center"><span><br/></span></div><ix:continuation id="i1162f6f3b6f548a3a3e3315c59ef7080" continuedAt="i3b13e3e551a24a00a0cce99b28c3f21d"><div style="text-indent:18pt"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ScheduleOfDebtInstrumentsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzIzNzA_97dcb1d1-6620-414d-807f-b62dbc185e50" escape="true"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of long-term debt are as follows:</span><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: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:1.0%"></td><td style="width:4.747%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.330%"></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:'Times New Roman',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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Bank revolving credit facility</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i424fb85a13d04e37be619989350f15bf_I20221231" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzItMi0xLTEtNjM4ODc_7ef461d2-23c2-4a20-b5ba-4549e9a78b78">52,000</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i91573b62aa034f839c16b96542b20382_I20211231" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzItNC0xLTEtNjM4ODc_e5073fa6-e2b6-455e-9fea-c567ab801138">4,000</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Term debt</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia1bd7756203d4a66b543323629c2482c_I20221231" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzMtMi0xLTEtNjM4ODc_cb40efd8-6d18-4469-8ae1-2fcf905725c0">249,928</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i675eae9488b54f378ef618ba956ab83c_I20211231" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzMtNC0xLTEtNjM4ODc_77891ec3-345b-4462-98d7-6c21b924c384">265,498</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_9b1bfaa9-100d-4705-a145-bc36daae463f"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_c663b58e-5137-4e83-8879-5ba725887654"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_fdd87ed0-80b6-4669-a105-d27b4fbd2dac"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_ffc75352-7531-4c29-bdca-e32d1f2af6f6">Capital lease obligations</span></span></span></span></span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:FinanceLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMi0xLTEtNjM4ODc_a767acd3-2f97-4741-9531-80ff46fa6380">24</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:FinanceLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtNC0xLTEtNjM4ODc_b22efee9-a3c0-48ae-b6b1-bcd4dab53563">56</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total debt</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzYtMi0xLTEtNjM4ODc_8784bbeb-489f-48f4-a25c-5519ebd74306">301,952</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:middle"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzYtNC0xLTEtNjM4ODc_651fca47-303a-479d-bf89-73dce384ac76">269,554</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:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less current maturities</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzctMi0xLTEtNjM4ODc_2db745ac-fc1e-4ff3-b293-1f754683874b">15,009</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzctNC0xLTEtNjM4ODc_f6fb4cc7-bb13-4437-bff7-8ca7fdf0402b">15,032</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total long-term debt</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzgtMi0xLTEtNjM4ODc_2199c823-b5f7-4642-b8db-b3808e695b21">286,943</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzgtNC0xLTEtNjM4ODc_725e0be8-a73e-4500-be9b-38dc660ccd65">254,522</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr></table></ix:nonNumeric></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On October 28, 2022, the Company, as Borrower, and each of its domestic subsidiaries as guarantors, entered into a Third Amended and Restated Credit Agreement (the &#8220;2022 Credit Agreement&#8221;) with Bank of America, N.A., as Administrative Agent.  The 2022 Credit Agreement provides Borrower with the ability to request loans and other financial obligations in an aggregate amount of up to $<ix:nonFraction unitRef="usd" contextRef="ia7571866d7ef4d27a8e9a1abed0c52c3_I20221028" decimals="-5" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzQ1NA_96b42513-dba0-48db-a8da-0fd89408d0c4">655.0</ix:nonFraction> million. Under the 2022 Credit Agreement, the Company has borrowed $<ix:nonFraction unitRef="usd" contextRef="i0e92704c63dd44fd966d6fae8d0d8e53_I20221028" decimals="-5" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzY1NA_f578f2a7-a582-4b77-9dc2-858990fbbb2e">255.0</ix:nonFraction> million pursuant to a Term Facility, while up to $<ix:nonFraction unitRef="usd" contextRef="i9a6b48d630e74ce9aef9f9eb731b3006_I20221028" decimals="-5" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0Xzg1MA_641a462c-255a-4841-9555-9bb23967c2c7">400.0</ix:nonFraction> million is available to the Company pursuant to a Revolver Facility which terminates in <ix:nonNumeric contextRef="ie04bb4cb3a604fbd98c2353b6aa9d56e_D20221028-20221028" name="us-gaap:LineOfCreditFacilityExpirationPeriod" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0Xzk0NQ_f752ff33-90b7-4c90-aa6c-25a1381a0311">5</ix:nonNumeric> years. The Term Facility requires the Company to make equal quarterly principal payments of $<ix:nonFraction unitRef="usd" contextRef="i9b6e8624e81943d4beae545861849ec0_D20221028-20221028" decimals="-3" name="us-gaap:DebtInstrumentPeriodicPayment" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzYwNDczMTM5NjQwMDg_1e5052cb-4840-4724-b81a-79863a68d96d">3,750,000</ix:nonFraction> over the term of the loan, with the final payment of any outstanding principal amount, plus interest, due at the end of the five year term. Borrowings under the 2022 Credit Agreement bear interest, at the Company&#8217;s option, at a Term Secured Overnight Financing Rate (&#8220;SOFR&#8221;) or a Base Rate (each as defined in the 2022 Credit Agreement), plus, in each case, an applicable margin. The applicable margin ranges from <ix:nonFraction unitRef="number" contextRef="idfac62871e4a40fd93ae3475d46cc451_I20221028" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" format="ixt:num-dot-decimal" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzYwNDczMTM5NjQwMjA_5b343329-f251-4372-bb53-3925165b00ab">1.25</ix:nonFraction>% to <ix:nonFraction unitRef="number" contextRef="ia094bf88179843b3a2e0b1221fc54927_I20221028" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" format="ixt:num-dot-decimal" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzYwNDczMTM5NjQwMjc_8a1ee0bf-fa27-4cbb-8f95-ad6480ac420b">2.50</ix:nonFraction>% for Term SOFR borrowings and from <ix:nonFraction unitRef="number" contextRef="iacedc088100e4e3cab47bb79b4393b39_I20221028" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzYwNDczMTM5NjQwMzQ_7e02be3b-bd0d-4719-b5a1-92dc33c86138">.25</ix:nonFraction>% to <ix:nonFraction unitRef="number" contextRef="ib5a844e3ed8648eab740d6b4a8340cf8_I20221028" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" format="ixt:num-dot-decimal" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzYwNDczMTM5NjQwNDA_e9260118-1b4d-4520-a886-799702c68635">1.50</ix:nonFraction>% for Base Rate borrowings with the margin percentage based upon the Company's consolidated leverage ratio. The Company must also pay a commitment fee to the lenders ranging between <ix:nonFraction unitRef="number" contextRef="ia90d069988524b79a36aa083c4b5ea7f_D20221028-20221028" decimals="INF" name="us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" format="ixt:num-dot-decimal" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzYwNDczMTM5NjQwNjE_5d44d24c-180e-4462-902d-1f9215528822">0.15</ix:nonFraction>% to <ix:nonFraction unitRef="number" contextRef="i57683f616816455b9d2d3f82dfee4e7e_D20221028-20221028" decimals="INF" name="us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" format="ixt:num-dot-decimal" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzYwNDczMTM5NjQwNjg_74352d13-1751-4a9a-a9a6-2a2e478b745f">0.30</ix:nonFraction>% on any unused portion of the $<ix:nonFraction unitRef="usd" contextRef="ia7571866d7ef4d27a8e9a1abed0c52c3_I20221028" decimals="-3" name="us-gaap:DebtInstrumentUnusedBorrowingCapacityAmount" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzYwNDczMTM5NjQwNDc_776528e1-43e4-41cb-b6f2-381618da37d2">400,000,000</ix:nonFraction> Revolver Facility.</span></div></ix:continuation><div style="text-align:justify;text-indent: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:'Times New Roman',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><br/></span></div></div><ix:continuation id="i3b13e3e551a24a00a0cce99b28c3f21d" continuedAt="i5cd0312820c6429db7b5455a0263a58b"><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The 2022 Credit Agreement requires the Company to maintain <ix:nonFraction unitRef="covenant" contextRef="i5d9b8bb0d7d046279d8250520b65cd6c_I20191024" decimals="INF" name="alg:DebtInstrumentNumberOfCovenants" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzEzMDE_6755046d-43bb-4d69-b555-13d3d3923b95">two</ix:nonFraction> financial covenants, namely, a maximum consolidated leverage ratio and a minimum consolidated fixed charge coverage ratio. The Agreement also contains various covenants relating to limitations on indebtedness, limitations on investments and acquisitions, limitations on the sale of properties and limitations on liens and capital expenditures. The Agreement also contains other customary covenants, representations and events of defaults.  The expiration date of the 2022 Credit Agreement, including the Term Facility and the Revolver Facility, is October&#160;28, 2027.  </span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">As of December&#160;31, 2022, $<ix:nonFraction unitRef="usd" contextRef="iafdae17ff83f451d8586288de3217a60_I20221231" decimals="-5" name="us-gaap:LineOfCreditFacilityFairValueOfAmountOutstanding" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzE3ODQ_b0063a22-8014-40a5-be29-71de70cf66e2">301.9</ix:nonFraction> million was outstanding under the Credit Agreement. Of the total outstanding, $<ix:nonFraction unitRef="usd" contextRef="i974fb1cfb185413eb7f81ef329347fe1_I20221231" decimals="-5" name="us-gaap:LineOfCreditFacilityFairValueOfAmountOutstanding" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzE4NTg_f758c6ba-e4e4-4ca5-b1e9-60267944d893">249.9</ix:nonFraction> million was on the Term Facility at a rate of <ix:nonFraction unitRef="number" contextRef="i974fb1cfb185413eb7f81ef329347fe1_I20221231" decimals="4" name="us-gaap:LongtermDebtWeightedAverageInterestRate" format="ixt:num-dot-decimal" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzE2NDkyNjc0NTI4OTU_48e179ad-25a4-48ce-b5a7-468359a9e7ba">6.17</ix:nonFraction>% and $<ix:nonFraction unitRef="usd" contextRef="i19738afad34c4dc5a87ec2fe8156ed18_I20221231" decimals="-5" name="us-gaap:LineOfCreditFacilityFairValueOfAmountOutstanding" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzE5MDY_be4efdf1-fe56-4664-a944-f6bcee237909">52.0</ix:nonFraction> million was on the Revolver Facility at a rate of <ix:nonFraction unitRef="number" contextRef="i19738afad34c4dc5a87ec2fe8156ed18_I20221231" decimals="4" name="us-gaap:LongtermDebtWeightedAverageInterestRate" format="ixt:num-dot-decimal" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzE2NDkyNjc0NTI5MDE_f7733f87-bde8-45ee-8e40-be0d84a49693">6.25</ix:nonFraction>%. On December&#160;31, 2022, $<ix:nonFraction unitRef="usd" contextRef="i19738afad34c4dc5a87ec2fe8156ed18_I20221231" decimals="-5" name="us-gaap:LineOfCreditFacilityCapacityAvailableForTradePurchases" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzE5NjI_d4b8f792-a8a1-49fe-a035-0e7739b3318b">2.8</ix:nonFraction> million of the revolver capacity was committed to irrevocable standby letters of credit issued in the ordinary course of business as required by vendors' contracts resulting in $<ix:nonFraction unitRef="usd" contextRef="i19738afad34c4dc5a87ec2fe8156ed18_I20221231" decimals="-5" name="us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzIxMzQ_1da765e4-9b93-408e-bd96-e8a1cac8556a">295.2</ix:nonFraction> million in available borrowings. The Company is in compliance with the covenants under the Credit Agreement.</span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">&#160;</span></div></ix:continuation><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i5cd0312820c6429db7b5455a0263a58b">The aggregate maturities of long-term debt, as of December&#160;31, 2022, are as follows: $<ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-5" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzIzMTA_1a467abd-e01f-4f6a-8d74-e714e6e0629d">15.0</ix:nonFraction> million in 2023; $<ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-5" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzIzMjA_8d4290fc-0189-4b9f-b192-4076e95ec6a5">15.0</ix:nonFraction> million in 2024; $<ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-5" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzIzMzA_0e864eee-b5e9-4d7b-801b-4fce4e3bfbcc">15.0</ix:nonFraction> million in 2025; $<ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-5" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzIzNDA_e9740447-fe10-41f1-a148-34038c1d2309">15.0</ix:nonFraction> million in 2026; $<ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-5" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzE2NDkyNjc0NDQwMzk_dbc30048-fe30-4894-910c-e14b765363e3">241.9</ix:nonFraction> in 2027; and <ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-5" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive" format="ixt:fixed-zero" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzIzNTQ_c630c76d-12f2-4f20-8ff4-5674968531fa">zero</ix:nonFraction> thereafter.</ix:continuation>&#160;</span></div><div style="text-indent:18pt"><span><br/></span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_166"></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">14. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:IncomeTaxDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90ZXh0cmVnaW9uOmVhNTJlMzUwZjkwOTRkZjZiNTRmZDE0NDRhODAwNDQ3XzIwOTg_c58fedbb-1d87-42da-94a5-e788ec4e0ed5" continuedAt="i5ecb410bbc2249c197fbc2c231163ad4" escape="true">INCOME TAXES</ix:nonNumeric></span></div><div style="text-align:center"><span><br/></span></div><ix:continuation id="i5ecb410bbc2249c197fbc2c231163ad4" continuedAt="i88fe08a5d049490fa7efb3d2e8ff1049"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Income Statement Components</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90ZXh0cmVnaW9uOmVhNTJlMzUwZjkwOTRkZjZiNTRmZDE0NDRhODAwNDQ3XzIwOTk_47c7d52d-7899-40de-a25d-0b8a6de23ab1" escape="true"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Earnings before income taxes were as follows:</span><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.648%"></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:1.992%"></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:1.846%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.332%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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:top"><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="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:top"><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="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:top"><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="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income before income taxes:</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:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Domestic</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpjMzgzZTY2OGMxNjU0NDU1YjY0ZGM0MWQ1YjFjZjI3ZS90YWJsZXJhbmdlOmMzODNlNjY4YzE2NTQ0NTViNjRkYzQxZDViMWNmMjdlXzMtMi0xLTEtNjM4ODc_0b28ac73-82db-4945-ae31-3a6d00469c4b">86,680</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpjMzgzZTY2OGMxNjU0NDU1YjY0ZGM0MWQ1YjFjZjI3ZS90YWJsZXJhbmdlOmMzODNlNjY4YzE2NTQ0NTViNjRkYzQxZDViMWNmMjdlXzMtNC0xLTEtNjM4ODc_2e82407a-3bf5-4281-a22e-581f45cbb049">74,070</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpjMzgzZTY2OGMxNjU0NDU1YjY0ZGM0MWQ1YjFjZjI3ZS90YWJsZXJhbmdlOmMzODNlNjY4YzE2NTQ0NTViNjRkYzQxZDViMWNmMjdlXzMtNi0xLTEtNjM4ODc_b9c08b9a-a3ac-4a42-9284-aabb34090855">50,977</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpjMzgzZTY2OGMxNjU0NDU1YjY0ZGM0MWQ1YjFjZjI3ZS90YWJsZXJhbmdlOmMzODNlNjY4YzE2NTQ0NTViNjRkYzQxZDViMWNmMjdlXzQtMi0xLTEtNjM4ODc_5636030f-2901-4b25-9d56-c1f0413fcf79">47,630</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpjMzgzZTY2OGMxNjU0NDU1YjY0ZGM0MWQ1YjFjZjI3ZS90YWJsZXJhbmdlOmMzODNlNjY4YzE2NTQ0NTViNjRkYzQxZDViMWNmMjdlXzQtNC0xLTEtNjM4ODc_b55863d0-404e-4d33-819b-795611e14076">35,428</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpjMzgzZTY2OGMxNjU0NDU1YjY0ZGM0MWQ1YjFjZjI3ZS90YWJsZXJhbmdlOmMzODNlNjY4YzE2NTQ0NTViNjRkYzQxZDViMWNmMjdlXzQtNi0xLTEtNjM4ODc_bf8e3a89-5fab-4500-8d43-eda305f8cedf">28,780</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpjMzgzZTY2OGMxNjU0NDU1YjY0ZGM0MWQ1YjFjZjI3ZS90YWJsZXJhbmdlOmMzODNlNjY4YzE2NTQ0NTViNjRkYzQxZDViMWNmMjdlXzUtMi0xLTEtNjM4ODc_708b383c-4c0b-4e90-8afb-4a4bbf334696">134,310</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpjMzgzZTY2OGMxNjU0NDU1YjY0ZGM0MWQ1YjFjZjI3ZS90YWJsZXJhbmdlOmMzODNlNjY4YzE2NTQ0NTViNjRkYzQxZDViMWNmMjdlXzUtNC0xLTEtNjM4ODc_76d57f85-5a99-442a-a728-691085ceedd7">109,498</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpjMzgzZTY2OGMxNjU0NDU1YjY0ZGM0MWQ1YjFjZjI3ZS90YWJsZXJhbmdlOmMzODNlNjY4YzE2NTQ0NTViNjRkYzQxZDViMWNmMjdlXzUtNi0xLTEtNjM4ODc_1e886dab-c2fd-487b-aefa-bc748e8a9391">79,757</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr></table></ix:nonNumeric></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-bottom:10pt;text-indent:18pt"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90ZXh0cmVnaW9uOmVhNTJlMzUwZjkwOTRkZjZiNTRmZDE0NDRhODAwNDQ3XzIxMDY_51c1314e-8745-4a27-852a-b99ec92828c9" escape="true"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of income tax expense (benefit) were as follows:</span><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:53.285%"></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:1.0%"></td><td style="width:2.701%"></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:1.0%"></td><td style="width:2.701%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.331%"></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: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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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:top"><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="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:top"><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="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:top"><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="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Current:</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:left;vertical-align:middle"><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="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><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="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Domestic</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:CurrentFederalTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzMtMi0xLTEtNjM4ODc_9f3b430d-e3ca-4d7d-8207-055172334f08">19,197</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:CurrentFederalTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzMtNC0xLTEtNjM4ODc_1e9f64f6-1f55-41bf-8d40-d588f3732ab2">16,846</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:CurrentFederalTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzMtNi0xLTEtNjM4ODc_a499bc1b-68b9-406b-91e3-e9e6a8093879">10,823</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:CurrentForeignTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzQtMi0xLTEtNjM4ODc_09322a40-2377-4ee8-97d3-bd3c60e08c25">11,848</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:CurrentForeignTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzQtNC0xLTEtNjM4ODc_c4940132-028a-428f-b405-ad9a1a6cb048">8,646</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:CurrentForeignTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzQtNi0xLTEtNjM4ODc_5bc5b329-ad7c-4a65-bdcf-8867b55d30af">8,759</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">State</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzUtMi0xLTEtNjM4ODc_212c1f3c-c164-44f1-a6c6-2b5a68b3f3fa">3,674</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzUtNC0xLTEtNjM4ODc_b807b1bd-d6b4-4416-8de0-8600c42e2c91">4,943</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzUtNi0xLTEtNjM4ODc_93a22181-85db-47c2-b990-df15682ee7b2">3,226</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><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="background-color:#ffffff;border-top:1pt solid #000000;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:CurrentIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzYtMi0xLTEtNjM4ODc_478e3fc1-fcf4-42d6-ae1a-220f31ddcf05">34,719</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:middle"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:CurrentIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzYtNC0xLTEtNjM4ODc_2d4cfe13-2c9c-44a7-8c5f-e34f05ccf828">30,435</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:middle"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:CurrentIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzYtNi0xLTEtNjM4ODc_87b6b6b4-0181-438b-a26e-0e887bc9374e">22,808</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:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Deferred:</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Domestic</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzgtMi0xLTEtNjM4ODc_a64837de-30e8-41aa-9678-db3defa89c18">2,246</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzgtNC0xLTEtNjM4ODc_d98ee7e1-4a75-49a6-a6b6-cb1270c1c704">679</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzgtNi0xLTEtNjM4ODc_93e896d6-712a-4f18-b205-a5d85647cc9e">1,238</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzktMi0xLTEtNjM4ODc_c49d1a9f-08de-4fd3-975e-39f7c2ce58d5">51</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzktNC0xLTEtNjM4ODc_9ba5c5e7-5679-4d27-bd09-cacadb29e513">274</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzktNi0xLTEtNjM4ODc_b37a9b97-258b-4794-aed6-a368ed76f78b">1199</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">State</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzEwLTItMS0xLTYzODg3_5916b485-3612-40bc-81e3-286ba54b8255">40</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzEwLTQtMS0xLTYzODg3_33279dcb-096f-43f5-86ff-a5ed6cea3aca">229</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzEwLTYtMS0xLTYzODg3_e785480d-d7bc-409f-9e93-1f0335cf58d3">894</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><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="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:DeferredIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzExLTItMS0xLTYzODg3_5ce8bab6-1559-4266-992c-ddce27e62d41">2,337</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:DeferredIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzExLTQtMS0xLTYzODg3_741f7eb4-82e4-45ae-81e2-356961617df2">1,182</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzExLTYtMS0xLTYzODg3_f643fe67-545f-4b9f-a453-8973ea062c07">855</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total income taxes</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzEyLTItMS0xLTYzODg3_013bcaac-cb53-4d32-a1b1-d973f5637140">32,382</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzEyLTQtMS0xLTYzODg3_c46f4d66-352b-4e91-9190-c96ad264c1d7">29,253</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzEyLTYtMS0xLTYzODg3_eb335542-0e2e-4d76-907d-a32953ca6973">21,953</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr></table></ix:nonNumeric></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;&#160;</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:'Times New Roman',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><br/></span></div></div><ix:continuation id="i88fe08a5d049490fa7efb3d2e8ff1049" continuedAt="i60386c07d97944d6a6986db5764780e2"><div style="margin-bottom:10pt;text-indent:18pt"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90ZXh0cmVnaW9uOmVhNTJlMzUwZjkwOTRkZjZiNTRmZDE0NDRhODAwNDQ3XzIxMDA_839dc20f-7f7a-4cf7-8e5a-ed6d7b807630" escape="true"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A reconciliation of the income tax at the Company&#8217;s U.S. statutory federal income tax rate to the provision for income tax follows: &#160;</span><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:53.285%"></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:1.0%"></td><td style="width:2.701%"></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:1.0%"></td><td style="width:2.701%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.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:'Times New Roman',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:700;line-height:100%">December 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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</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%">2020</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income tax expense at statutory rates</span></div></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzItMi0xLTEtNjM4ODc_4274515b-0215-47ec-a886-e32f3bb42cb9">28,205</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzItNC0xLTEtNjM4ODc_f9e51be2-b687-4881-91ce-e6dde696a652">22,995</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzItNi0xLTEtNjM4ODc_ae2cc9e9-b02a-42e2-969b-0ddc427a9701">16,749</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Increase (reduction) from:</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Jurisdictional rate differences</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzQtMi0xLTEtNjM4ODc_9783b525-7ad4-42ee-b96f-c7804eddc16d">1,989</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzQtNC0xLTEtNjM4ODc_41e416db-39b0-4671-8110-93117546603d">1,599</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzQtNi0xLTEtNjM4ODc_9612f410-0655-4246-b5b7-bd4c6d9bc1bd">1,034</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Executive compensation limitation</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="alg:EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzUtMi0xLTEtNjM4ODc_2a99b76c-92ab-4159-b79e-c1115a298adf">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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="alg:EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzUtNC0xLTEtNjM4ODc_f0d78241-5c11-41ca-8925-e706f41872ed">1,314</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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="alg:EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzUtNi0xLTEtNjM4ODc_c9cac992-8d05-4ee1-8438-3b3835a2c43e">170</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><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></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock based compensation</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzgtMi0xLTEtNjM4ODc_70664aaa-43a3-4a07-9eff-f780710c4052">122</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzgtNC0xLTEtNjM4ODc_a668f6dd-ce79-463b-8536-33e440930a65">322</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzgtNi0xLTEtNjM4ODc_6fde12b3-33e5-47f1-adab-d8494f2b6722">366</ix:nonFraction>)</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. state taxes</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzktMi0xLTEtNjM4ODc_4ac8a26d-72b3-421d-86c0-4218ab9ac560">2,632</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzktNC0xLTEtNjM4ODc_337902ec-6fdd-4754-8096-9a62c01cd458">3,724</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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzktNi0xLTEtNjM4ODc_26194d84-cc54-4b69-b0fa-b3b8d1936423">2,556</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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign tax expense</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="alg:IncomeTaxRateReconciliationForeignTaxExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzEwLTItMS0xLTYzODg3_2bbd8ec3-4878-4541-89cf-527113543cb5">267</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="alg:IncomeTaxRateReconciliationForeignTaxExpense" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzEwLTQtMS0xLTYzODg3_704392c6-6ee2-474b-b122-783390c5074f">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="alg:IncomeTaxRateReconciliationForeignTaxExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzEwLTYtMS0xLTYzODg3_1146f4a4-3e1f-4252-aff5-3bc2f5678731">704</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">R&amp;D credit </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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxReconciliationTaxCreditsResearch" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzExLTItMS0xLTYzODg3_3aa14a63-94e7-4221-9b39-b1d3c4cf52a4">1,645</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxReconciliationTaxCreditsResearch" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzExLTQtMS0xLTYzODg3_e88921c5-7508-47cb-9498-3e2188dd6d12">670</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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxReconciliationTaxCreditsResearch" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzExLTYtMS0xLTYzODg3_83bd63a3-d8ae-4225-9e6c-52a930ed0135">415</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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">GILTI</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="alg:EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzEyLTItMS0xLTYzODg3_1ca76bd6-393d-492f-ba5f-e6e475786f2a">500</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="alg:EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzEyLTQtMS0xLTYzODg3_a013bc05-086d-4da9-93c6-f37633c89c51">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="alg:EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzEyLTYtMS0xLTYzODg3_75e0b146-39a6-41f4-98fb-3bfbef61951f">50</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Previously unrecognized tax (benefit)/expense</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" sign="-" name="alg:EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzEzLTItMS0xLTYzODg3_3975d564-b241-4aed-adcc-e39036d75118">51</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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" sign="-" name="alg:EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzEzLTQtMS0xLTYzODg3_b5b15f6c-9d64-442b-9185-6b29cfd396ec">8</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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="alg:EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzEzLTYtMS0xLTYzODg3_81ceb11c-e019-4c5a-9e87-8aaed8a1e4e6">2,219</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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other, net</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:IncomeTaxReconciliationOtherAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzE0LTItMS0xLTYzODg3_d47e7c34-1afa-4407-a1a4-5e26ec061c99">220</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxReconciliationOtherAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzE0LTQtMS0xLTYzODg3_4465de04-24b3-40c2-876c-307eb5637899">605</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncomeTaxReconciliationOtherAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzE0LTYtMS0xLTYzODg3_8979139e-6729-47de-bff4-e3b82b243710">748</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%">Provision for income taxes </span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="alg:IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzE1LTItMS0xLTYzODg3_a2cd8115-51f3-4434-a57f-9ab2e21dc35d">32,382</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;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="alg:IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzE1LTQtMS0xLTYzODg3_7d413359-5c5e-4a9b-90fb-a82702f173f9">29,253</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;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="alg:IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzE1LTYtMS0xLTYzODg3_520936bf-35f2-4e15-8e67-0642abfb0891">21,953</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:#def3c0;border-top:2pt solid #000000;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%">Effective tax rate </span></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:2pt 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="number" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="2" name="alg:EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzE2LTItMS0xLTYzODg3_0a6b5d34-4bfd-44ad-88c8-a8daa31db826">24</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:2pt solid #000000;padding:2px 1pt 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%">%</span></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:2pt 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="number" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="2" name="alg:EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzE2LTQtMS0xLTYzODg3_3de98aa5-8196-4dbe-a3ba-731c39d27a58">27</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:2pt solid #000000;padding:2px 1pt 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%">%</span></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:2pt 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="number" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="2" name="alg:EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzE2LTYtMS0xLTYzODg3_658f2dfe-2fe2-497a-bebf-4244b27431f7">28</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:2pt solid #000000;padding:2px 1pt 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%">%</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></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></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></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></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></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></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></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></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></tr></table></ix:nonNumeric></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</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:'Times New Roman',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><br/></span></div></div><ix:continuation id="i60386c07d97944d6a6986db5764780e2" continuedAt="i2374a65bd21d462a833deec421d8f81b"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Deferred Income Tax Assets and Liabilities</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90ZXh0cmVnaW9uOmVhNTJlMzUwZjkwOTRkZjZiNTRmZDE0NDRhODAwNDQ3XzIxMDM_d1d685b2-f751-425e-9314-ef825d52fa78" escape="true"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The components of the Company&#8217;s deferred income tax assets and liabilities were as follows. Certain prior year deferred tax component amounts have been reclassified to conform to the current year presentation. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:112%"> </span><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:58.110%"></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:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:4.747%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.330%"></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:'Times New Roman',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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:700;line-height:100%">Deferred income tax assets:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></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:9pt;font-weight:400;line-height:100%">&#160;&#160;Inventory basis difference</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: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="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsInventory" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzMtMi0xLTEtNjM4ODc_19a13316-4f99-4668-b87a-1cac125cf6d6">3,459</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="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsInventory" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzMtNC0xLTEtNjM4ODc_e49331e3-8b0e-4abe-8dc4-e81bdf562e51">1,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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;Accounts receivable reserve</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzQtMi0xLTEtNjM4ODc_2f8d704f-daef-4be9-b431-d9d58b128255">334</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzQtNC0xLTEtNjM4ODc_40227da5-334a-4e95-bd1a-165db7199976">270</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;&#160;Rental equipment and Property, plant and equipment </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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzUtMi0xLTEtNjM4ODc_af2f4630-14ba-4605-9537-57f8094a1fe0">347</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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzUtNC0xLTEtNjM4ODc_0ddc8837-421b-4477-993a-5348d8bbb165">201</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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;Stock based compensation</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzYtMi0xLTEtNjM4ODc_be9033ec-b344-4b0e-a95c-d72f3d1dc1af">826</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzYtNC0xLTEtNjM4ODc_5c5574a3-573e-4148-9e8e-2c2a15d20875">754</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;&#160;Pension liability</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzctMi0xLTEtNjM4ODc_0b82d3ae-6e74-4e32-86f1-3b4e3c4a3125">2,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="2" style="background-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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzctNC0xLTEtNjM4ODc_6835e2c9-d309-40d7-9c89-60b007d95581">3,351</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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;Employee benefit accrual</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzgtMi0xLTEtNjM4ODc_2fd17010-e78c-4b21-ac84-c7e5098fcd90">2,451</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzgtNC0xLTEtNjM4ODc_0e8b294c-0297-4d4b-a380-bb40dc571a03">3,070</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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></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:9pt;font-weight:400;line-height:100%">&#160;&#160;Product liability and warranty 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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzEwLTItMS0xLTYzODg3_32bd94a8-d50a-409d-aafc-b232c037c8b1">2,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="2" style="background-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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzEwLTQtMS0xLTYzODg3_02a69dd3-499d-4cf8-a273-fe93daf5ec59">2,464</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></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="background-color:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;Foreign net operating loss</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsForeign" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzEzLTItMS0xLTYzODg3_fe034666-7cbb-4a7c-9a46-9d6265a68f50">3,078</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsForeign" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzEzLTQtMS0xLTYzODg3_c9b280ab-ca65-4fb6-9b06-bfae033ca276">3,764</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;&#160;Lease liability</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="alg:DeferredTaxAssetsLeaseLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzE0LTItMS0xLTYzODg3_9f864533-a6a6-42f3-8be6-4f1c8c2f6153">4,738</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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="alg:DeferredTaxAssetsLeaseLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzE0LTQtMS0xLTYzODg3_b04a7437-e4d7-4668-9b02-016b3f0cee55">4,221</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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;Capitalized R&amp;D costs</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzE1LTItMS0xLTYzODg3_38146159-7c7f-4e88-8307-48a04876e94d">4,230</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzE1LTQtMS0xLTYzODg3_ae14fc3b-b7c2-428f-b5e8-1c69a904261f">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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></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:9pt;font-weight:400;line-height:100%">&#160;&#160;Other</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsOther" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzE3LTItMS0xLTYzODg3_b10f3f62-33f2-4f71-aa85-fd2c8dcac07b">1,635</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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsOther" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzE3LTQtMS0xLTYzODg3_dacecf5e-a145-412d-9f5e-d565c70798eb">1,415</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total deferred income tax assets</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: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="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzE5LTItMS0xLTYzODg3_0aaaeef7-b580-4928-97c5-4b7e9cb2cc04">26,175</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="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzE5LTQtMS0xLTYzODg3_e6d98540-955e-4d81-a241-2bc7720e31da">20,646</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:#def3c0;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;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Less: Valuation allowance</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsValuationAllowance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzIwLTItMS0xLTYzODg3_b95706af-8cd8-4040-b295-a51167671b81">3,637</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsValuationAllowance" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzIwLTQtMS0xLTYzODg3_9c92bfcc-35a5-4b9c-837f-cd957ffe1472">4,129</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><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;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;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;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;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Net deferred income tax assets</span></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:2pt 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:#def3c0;border-top:2pt 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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzIyLTItMS0xLTYzODg3_ce253a41-db14-4835-b4f9-ac371052a0d5">22,538</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:2pt 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:#def3c0;border-top:2pt 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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzIyLTQtMS0xLTYzODg3_308ce790-1e86-49a4-b16f-619e97575d80">16,517</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Deferred income tax liabilities:</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></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:9pt;font-weight:400;line-height:100%">&#160;&#160;Inventory basis differences</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: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="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzI1LTItMS0xLTYzODg3_fede7ec0-6781-43f4-b1e5-bcc602c45037">264</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="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzI1LTQtMS0xLTYzODg3_dd461f30-69e9-4015-8d33-91438d1bbc83">283</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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;Rental equipment and Property, plant and equipment </span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzI2LTItMS0xLTYzODg3_75f76388-72fb-44a3-ab9d-073d7b47d184">14,373</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzI2LTQtMS0xLTYzODg3_0727760e-ad42-4452-829d-3261333fd76f">13,253</ix:nonFraction>)</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;&#160;Lease asset</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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="alg:DeferredTaxLiabilitiesLeaseAsset" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzI3LTItMS0xLTYzODg3_9060ad1b-027c-490b-9119-59cd0df4d6ff">4,637</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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="alg:DeferredTaxLiabilitiesLeaseAsset" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzI3LTQtMS0xLTYzODg3_82a6c1c2-eff6-4cf1-bc40-3c2551524358">4,149</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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;Intangible assets</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzI4LTItMS0xLTYzODg3_01a5fce0-5673-4cfe-81c9-7d9bd67ebf1b">19,301</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzI4LTQtMS0xLTYzODg3_f3b78667-f194-493b-9df1-d05e3ebf017a">18,041</ix:nonFraction>)</span></td><td style="background-color:#def3c0;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></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="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:9pt;font-weight:400;line-height:100%">&#160;&#160;Expenses not currently deductible for book purposes</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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesOther" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzMxLTItMS0xLTYzODg3_ed2580c4-4bff-47d1-b718-cf95b4b2dc63">1,244</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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesOther" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzMxLTQtMS0xLTYzODg3_cf84d9ca-3dc0-444d-8483-401ccee98cd0">1,139</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total deferred income tax liabilities</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: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="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzMzLTItMS0xLTYzODg3_e54d2275-3842-4672-a42d-46a3dd4e93ff">39,819</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="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzMzLTQtMS0xLTYzODg3_c3a0c052-5353-4cb8-b361-c843d8cb5a4f">36,865</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;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;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Net deferred income taxes</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;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:2pt solid #000;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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DeferredTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzM1LTItMS0xLTYzODg3_9c0f4cdc-af6f-4e14-b17f-6d57fff8ab11">17,281</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;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:2pt solid #000;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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DeferredTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzM1LTQtMS0xLTYzODg3_52620e7e-89d7-46f7-9f40-dd0d286f28de">20,348</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></ix:nonNumeric></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><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 foreign deferred tax assets consisting of foreign net operating losses and other tax benefits available to reduce future taxable income in a foreign jurisdiction. These foreign jurisdictions&#8217; net operating loss carry-forwards are approximately $<ix:nonFraction unitRef="usd" contextRef="i4e96c6494cd0405689a6ca0d4e5afaad_I20221231" decimals="-5" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90ZXh0cmVnaW9uOmVhNTJlMzUwZjkwOTRkZjZiNTRmZDE0NDRhODAwNDQ3XzcyMw_27e0fef6-c0df-42e0-b49f-cd8d74d6e60f">10.1</ix:nonFraction> million with an unlimited carry-forward period. The Company also has U.S. state net operating loss carry-forwards in the amount of $<ix:nonFraction unitRef="usd" contextRef="ib24cead7aa1d453cbb4bc6f47cb17caa_I20221231" decimals="-5" name="us-gaap:OperatingLossCarryforwards" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90ZXh0cmVnaW9uOmVhNTJlMzUwZjkwOTRkZjZiNTRmZDE0NDRhODAwNDQ3Xzg5NQ_f3af9830-e116-4db4-9f7c-3c988c6a46b7">0.2</ix:nonFraction> million which will expire between 2036 and 2042.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's valuation allowances as of December&#160;31, 2022 and 2021 related primarily to foreign net operating losses and foreign tax credits.</span></div></ix:continuation><div style="text-indent:1pt"><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:'Times New Roman',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><br/></span></div></div><ix:continuation id="i2374a65bd21d462a833deec421d8f81b"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Unrecognized Tax Benefits</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A reconciliation of the beginning and ending amount of unrecognized tax benefits is as follows. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90ZXh0cmVnaW9uOmVhNTJlMzUwZjkwOTRkZjZiNTRmZDE0NDRhODAwNDQ3XzIxMDE_e75d95e4-0867-482a-9f21-b9648a7cdf41" continuedAt="if1a8d9aafd3643f7908d06b63c2efb20" escape="true">The Company does not expect the unrecognized tax benefits to change significantly over the next 12 months.</ix:nonNumeric></span></div><div><ix:continuation id="if1a8d9aafd3643f7908d06b63c2efb20"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span><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: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:1.0%"></td><td style="width:4.747%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.330%"></td><td style="width:0.1%"></td></tr><tr><td colspan="15" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unrecognized Tax Benefits</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance as of beginning of year</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:UnrecognizedTaxBenefits" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTo1ODI5NTZjZGU0YjE0MjhiYWZjOGE2ZjQ0MTU3NjViMC90YWJsZXJhbmdlOjU4Mjk1NmNkZTRiMTQyOGJhZmM4YTZmNDQxNTc2NWIwXzMtMi0xLTEtNjM4ODc_49211fa0-de29-4e51-8de3-4074ddf8833d">270</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5d74fc3138934e70861715f06fa062c7_I20201231" decimals="-3" name="us-gaap:UnrecognizedTaxBenefits" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTo1ODI5NTZjZGU0YjE0MjhiYWZjOGE2ZjQ0MTU3NjViMC90YWJsZXJhbmdlOjU4Mjk1NmNkZTRiMTQyOGJhZmM4YTZmNDQxNTc2NWIwXzMtNC0xLTEtNjM4ODc_4bb868b9-ef7c-4669-9073-6cfecac4ac7d">262</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Increases for tax positions related to the current year</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTo1ODI5NTZjZGU0YjE0MjhiYWZjOGE2ZjQ0MTU3NjViMC90YWJsZXJhbmdlOjU4Mjk1NmNkZTRiMTQyOGJhZmM4YTZmNDQxNTc2NWIwXzQtMi0xLTEtNjM4ODc_7d18f61d-948d-4ee9-9aa8-94695b4ef19b">156</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTo1ODI5NTZjZGU0YjE0MjhiYWZjOGE2ZjQ0MTU3NjViMC90YWJsZXJhbmdlOjU4Mjk1NmNkZTRiMTQyOGJhZmM4YTZmNDQxNTc2NWIwXzQtNC0xLTEtNjM4ODc_6b46ee60-92b6-4057-aee7-9f55f125d4ba">82</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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><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></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Decreases due to lapse of statute of limitations</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTo1ODI5NTZjZGU0YjE0MjhiYWZjOGE2ZjQ0MTU3NjViMC90YWJsZXJhbmdlOjU4Mjk1NmNkZTRiMTQyOGJhZmM4YTZmNDQxNTc2NWIwXzgtMi0xLTEtNjM4ODc_b9a000c2-1161-437f-9bae-fc2f7866dbb6">105</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTo1ODI5NTZjZGU0YjE0MjhiYWZjOGE2ZjQ0MTU3NjViMC90YWJsZXJhbmdlOjU4Mjk1NmNkZTRiMTQyOGJhZmM4YTZmNDQxNTc2NWIwXzgtNC0xLTEtNjM4ODc_b1d45b57-cecf-496e-ad2a-0bbde9dfcbe7">74</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance as of end of year</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:UnrecognizedTaxBenefits" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTo1ODI5NTZjZGU0YjE0MjhiYWZjOGE2ZjQ0MTU3NjViMC90YWJsZXJhbmdlOjU4Mjk1NmNkZTRiMTQyOGJhZmM4YTZmNDQxNTc2NWIwXzktMi0xLTEtNjM4ODc_4b503684-517a-49cb-a4bc-aea9bac39b62">321</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:UnrecognizedTaxBenefits" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTo1ODI5NTZjZGU0YjE0MjhiYWZjOGE2ZjQ0MTU3NjViMC90YWJsZXJhbmdlOjU4Mjk1NmNkZTRiMTQyOGJhZmM4YTZmNDQxNTc2NWIwXzktNC0xLTEtNjM4ODc_12d910b5-4287-43cd-bbf4-7b2f28a10ef5">270</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr></table></ix:continuation></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has adopted the policy to include interest and penalty expense related to income taxes as interest and other expense, respectively. As of December&#160;31, 2022, <ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="INF" name="us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90ZXh0cmVnaW9uOmVhNTJlMzUwZjkwOTRkZjZiNTRmZDE0NDRhODAwNDQ3XzE0NTQ_4f9c0380-0ed1-49f3-b0b6-2b304861fa1b">no</ix:nonFraction> interest or penalties have accrued.  With few exceptions, the Company&#8217;s open tax years for its federal and state income tax returns are for the tax years ended 2017 through 2022, and for tax years ended 2016 through 2022 for its foreign income tax returns.  </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company currently intends to permanently reinvest its earnings in certain foreign subsidiaries. No U.S. corporate income taxes or foreign withholding taxes should be imposed on future distributions of the earnings not permanently reinvested.  If the amounts asserted as permanent reinvestment were distributed, the Company would be subject to approximately $<ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-5" name="alg:TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90ZXh0cmVnaW9uOmVhNTJlMzUwZjkwOTRkZjZiNTRmZDE0NDRhODAwNDQ3XzIwNzQ_4decc286-a337-433d-960c-04ccec60a669">4.8</ix:nonFraction> million in withholding taxes.</span></div></ix:continuation><div style="text-indent:18pt"><span><br/></span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_169"></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">15. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:StockholdersEquityNoteDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjkvZnJhZzoxY2U3YjhhNzViYzg0OTQzOTI4NDdhYzNkYWZmMGVhYy90ZXh0cmVnaW9uOjFjZTdiOGE3NWJjODQ5NDM5Mjg0N2FjM2RhZmYwZWFjXzM3Mg_f325317b-7e17-44d8-9612-a9604edb7f42" continuedAt="ie3cac69602824fa0bca6797241063ccd" escape="true">COMMON STOCK</ix:nonNumeric></span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ie3cac69602824fa0bca6797241063ccd">On January&#160;3, 2023, the Board of Directors of the Company declared a quarterly dividend of $<ix:nonFraction unitRef="usdPerShare" contextRef="id39bf75be2ed41dca0e9d849b8b972d4_D20230201-20230201" decimals="INF" name="us-gaap:CommonStockDividendsPerShareCashPaid" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjkvZnJhZzoxY2U3YjhhNzViYzg0OTQzOTI4NDdhYzNkYWZmMGVhYy90ZXh0cmVnaW9uOjFjZTdiOGE3NWJjODQ5NDM5Mjg0N2FjM2RhZmYwZWFjXzEwMQ_db9aebb7-1481-443f-bba0-bb217efcca0d"><ix:nonFraction unitRef="usdPerShare" contextRef="i038226a8b3f3404f98d4ecbbb625c889_D20230103-20230103" decimals="INF" name="us-gaap:CommonStockDividendsPerShareDeclared" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjkvZnJhZzoxY2U3YjhhNzViYzg0OTQzOTI4NDdhYzNkYWZmMGVhYy90ZXh0cmVnaW9uOjFjZTdiOGE3NWJjODQ5NDM5Mjg0N2FjM2RhZmYwZWFjXzEwMQ_e768d9f5-993d-4b6f-aff7-fc222d17a1ad">0.22</ix:nonFraction></ix:nonFraction> per share which was paid on February&#160;1, 2023 to holders of record as of January&#160;18, 2023. The Company also has a share repurchase program under which the Company is authorized to repurchase, in the aggregate, up to $<ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="INF" name="us-gaap:StockRepurchaseProgramAuthorizedAmount1" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjkvZnJhZzoxY2U3YjhhNzViYzg0OTQzOTI4NDdhYzNkYWZmMGVhYy90ZXh0cmVnaW9uOjFjZTdiOGE3NWJjODQ5NDM5Mjg0N2FjM2RhZmYwZWFjXzI5MQ_f7b3c28c-37d3-4d20-a6f3-16107b3a3278">30.0</ix:nonFraction> million of its outstanding common stock. During 2022, the Company purchased <ix:nonFraction unitRef="shares" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="INF" name="us-gaap:TreasuryStockSharesAcquired" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjkvZnJhZzoxY2U3YjhhNzViYzg0OTQzOTI4NDdhYzNkYWZmMGVhYy90ZXh0cmVnaW9uOjFjZTdiOGE3NWJjODQ5NDM5Mjg0N2FjM2RhZmYwZWFjXzM2MA_810c496f-dbcb-407d-9c32-356bbe53d179">zero</ix:nonFraction> shares.</ix:continuation></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%">&#160;</span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_172"></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">16. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ3MzA_241b58a1-9092-4818-b47f-87ac930b6980" continuedAt="i74208992970e4333bcbbd5f9889ee73e" escape="true">STOCK OPTIONS</ix:nonNumeric></span></div><ix:continuation id="i74208992970e4333bcbbd5f9889ee73e" continuedAt="i0fbb2e12582c40a3b49b78ac939c6280"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Incentive Stock Option Plan</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On May 7, 2015, the stockholders of the Company approved the 2015 Incentive Stock Option Plan (&#8220;2015 ISO Plan&#8221;) and the Company reserved <ix:nonFraction unitRef="shares" contextRef="i1eae38dc9edd48f998885d656ee56f1f_I20150507" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzE5Mg_23760c08-b449-43a6-870e-529eec5f02a0">400,000</ix:nonFraction> shares of common stock for options to be issued under the 2015 ISO Plan. Each option becomes vested and exercisable for up to <ix:nonFraction unitRef="number" contextRef="ib57b490f97f0442fa5ebce9384a2da12_D20150507-20150507" decimals="INF" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzMyMQ_0084083d-a953-4a72-9488-d8ae87f35f7f">20</ix:nonFraction>% of the total optioned shares <ix:nonNumeric contextRef="ibb8983f6dca043ffb15dcb9296db84fb_D20150507-20150507" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzM1Mw_352f5272-36b5-4b69-adee-7b5998ec1b43">one year</ix:nonNumeric> following the grant of the option and for an additional <ix:nonFraction unitRef="number" contextRef="iaf39c77254434dd89c8e34925ee2cbf6_D20150507-20150507" decimals="INF" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQxMg_886e2b84-0a94-4ac5-87a2-d691ada035e1"><ix:nonFraction unitRef="number" contextRef="i0eeffb1ea1e84e5890830bc854584ac6_D20150507-20150507" decimals="INF" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQxMg_a86460a8-fbba-451c-a1b9-21efee1bec5d"><ix:nonFraction unitRef="number" contextRef="i8c4050d8889b46eb82ccc74d27f377c8_D20150507-20150507" decimals="INF" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQxMg_b0cc0c98-1a84-48e3-bfef-adceecbbc74c"><ix:nonFraction unitRef="number" contextRef="i003b20a90fb44ef1bcb77f9b3c6059fc_D20150507-20150507" decimals="INF" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQxMg_f872a02c-3cfd-47e9-ba34-cf03dd7a79d7">20</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction>% of the total optioned shares after each succeeding year until the option is fully exercisable at the end of the fifth year.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We also maintain other incentive option plans that have expired, under which previously granted awards remain outstanding. No additional grants may be awarded under these plans.</span></div></ix:continuation><div style="text-indent:18pt"><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:'Times New Roman',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><br/></span></div></div><ix:continuation id="i0fbb2e12582c40a3b49b78ac939c6280" continuedAt="iea19104229d2404e8ed974772cb5a6b6"><ix:nonNumeric contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ3NDQ_3b08246d-c6bc-435c-9490-b931e5208125" escape="true"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Following is a summary of activity in the Incentive Stock Option Plans for the periods indicated:</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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:32.379%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.402%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.285%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.402%"></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.402%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.285%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.402%"></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.402%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.285%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.410%"></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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" 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%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" 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%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" 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%">2020</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 4pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;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:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160; Exercise</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160; Price*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 4pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;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:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;Exercise</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160; Price*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 4pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;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:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;Exercise</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160; Price*</span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Options outstanding at beginning of year</span></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="icd1fb9b0cdab41bd9c168d8388cb4c8d_I20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzItMS0xLTEtNjM4ODc_aabd0f46-7673-4955-8ab3-fbc1c7fd8955">87,610</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="icd1fb9b0cdab41bd9c168d8388cb4c8d_I20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzItMy0xLTEtNjM4ODc_3297f318-3f79-4c60-a012-8fd9949ba008">91.24</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ic761a5d8d966472c96815aa37af02a45_I20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzItNS0xLTEtNjM4ODc_63816b2f-9a30-4271-8ece-1afb26e7264e">100,920</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ic761a5d8d966472c96815aa37af02a45_I20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzItNy0xLTEtNjM4ODc_d6264429-cdba-4863-b8ad-859592c48e30">68.58</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="id0b7a3a5b4e443538e02d0e614fc830b_I20191231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzItOS0xLTEtNjM4ODc_2bfebbd8-5c79-4cf1-a809-17759d5df3b3">119,720</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="id0b7a3a5b4e443538e02d0e614fc830b_I20191231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzItMTEtMS0xLTYzODg3_9d2941f3-30ec-42a6-9233-8c7551ac1a53">57.65</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzMtMS0xLTEtNjM4ODc_d271987b-23b2-4e00-93bc-cbc538e1c7d2">17,625</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzMtMy0xLTEtNjM4ODc_a0c83347-7a7a-4304-88db-5aafb49da4f7">137.93</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i51676da905124b298c0db5d4b498da5c_D20210101-20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzMtNS0xLTEtNjM4ODc_919b998c-e2e3-4b50-b125-c081383115c6">18,900</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i51676da905124b298c0db5d4b498da5c_D20210101-20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzMtNy0xLTEtNjM4ODc_f234cf3a-747e-4d9b-8cf5-250829e4a8dc">156.38</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i219410650f93481ebd26323b8a832def_D20200101-20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzMtOS0xLTEtNjM4ODc_a3199680-31b2-412e-9288-eb3d1d7b4a05">13,950</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i219410650f93481ebd26323b8a832def_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzMtMTEtMS0xLTYzODg3_f1a6cb7e-df99-4a90-9176-1d7f9b1a6e15">114.53</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzQtMS0xLTEtNjM4ODc_075e9e09-4af0-45af-8d96-b626b5870809">14,780</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzQtMy0xLTEtNjM4ODc_b9325286-288b-4f4a-a706-c21e8c84c56c">50.79</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i51676da905124b298c0db5d4b498da5c_D20210101-20211231" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzQtNS0xLTEtNjM4ODc_0ce985ea-7a04-45a7-bf1a-2bb7eedf451b">30,210</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i51676da905124b298c0db5d4b498da5c_D20210101-20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzQtNy0xLTEtNjM4ODc_907bf6bd-f5e5-4b72-ad68-40840f958e9c">53.68</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i219410650f93481ebd26323b8a832def_D20200101-20201231" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzQtOS0xLTEtNjM4ODc_2d476592-2406-43dd-87db-4dbf9c87a950">31,300</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i219410650f93481ebd26323b8a832def_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzQtMTEtMS0xLTYzODg3_30aadfe3-598c-43a1-8337-68f46e887997">45.94</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Canceled</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzUtMS0xLTEtNjM4ODc_4319fd7b-c02a-44bb-9722-b58d001fbe8e">5,808</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzUtMy0xLTEtNjM4ODc_9bc99073-0a26-4151-adc9-173ca6a7347d">114.48</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i51676da905124b298c0db5d4b498da5c_D20210101-20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzUtNS0xLTEtNjM4ODc_9e4f1638-6ecf-437a-ba2f-5440bda894de">2,000</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i51676da905124b298c0db5d4b498da5c_D20210101-20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzUtNy0xLTEtNjM4ODc_1bbfc3ab-faeb-46f6-95f8-3badbe75739c">130.92</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i219410650f93481ebd26323b8a832def_D20200101-20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzUtOS0xLTEtNjM4ODc_c72d5bf1-7e74-46c0-88b1-c5531f3c5c99">1,450</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i219410650f93481ebd26323b8a832def_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzUtMTEtMS0xLTYzODg3_cf43ed08-e296-496f-bb1c-ebc090a452fa">96.97</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Options outstanding at end of year</span></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i0b10e572815d4913953edd8c1c32efa6_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzYtMS0xLTEtNjM4ODc_35d0676a-7b95-4150-8180-6a48b3443f26">84,647</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i0b10e572815d4913953edd8c1c32efa6_I20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzYtMy0xLTEtNjM4ODc_c5fea905-f023-48b2-9e54-0e5cbfec0b63">106.43</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="icd1fb9b0cdab41bd9c168d8388cb4c8d_I20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzYtNS0xLTEtNjM4ODc_c1dec989-bda3-4eb6-a27a-ff2ea26abb07">87,610</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="icd1fb9b0cdab41bd9c168d8388cb4c8d_I20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzYtNy0xLTEtNjM4ODc_3297f318-3f79-4c60-a012-8fd9949ba008">91.24</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ic761a5d8d966472c96815aa37af02a45_I20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzYtOS0xLTEtNjM4ODc_d1db377f-d52c-41f5-9864-de6c580cbb27">100,920</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ic761a5d8d966472c96815aa37af02a45_I20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzYtMTEtMS0xLTYzODg3_c4435450-2474-421a-b7f6-b8374bd9414f">68.58</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Options exercisable at end of year</span></td><td colspan="2" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i0b10e572815d4913953edd8c1c32efa6_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzctMS0xLTEtNjM4ODc_f79a1fa4-5875-4278-b031-52185ecc88b0">43,412</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i0b10e572815d4913953edd8c1c32efa6_I20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzctMy0xLTEtNjM4ODc_68e98d57-bb87-4bf5-8f94-62cb11bd9bcb">78.50</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="icd1fb9b0cdab41bd9c168d8388cb4c8d_I20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzctNS0xLTEtNjM4ODc_3566b24f-4d2c-43ea-b76d-1f38e8ba5cec">49,360</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="icd1fb9b0cdab41bd9c168d8388cb4c8d_I20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzctNy0xLTEtNjM4ODc_41848f49-be92-4396-b221-96dc119fd916">61.21</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ic761a5d8d966472c96815aa37af02a45_I20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzctOS0xLTEtNjM4ODc_584d5bfa-08bc-4cca-809d-89b778a9155c">67,700</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ic761a5d8d966472c96815aa37af02a45_I20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzctMTEtMS0xLTYzODg3_52af18ea-913b-4916-90ce-4b0d9cf1a49d">52.60</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Options available for grant at end of year</span></td><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i0b10e572815d4913953edd8c1c32efa6_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzgtMS0xLTEtNjM4ODc_f84509c5-c5c0-4aa4-b68e-44f5d1661496">286,033</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="icd1fb9b0cdab41bd9c168d8388cb4c8d_I20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzgtNS0xLTEtNjM4ODc_88805f75-3b7b-4f58-ace8-424402e28738">297,850</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ic761a5d8d966472c96815aa37af02a45_I20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzgtOS0xLTEtNjM4ODc_6fe48d0a-229f-4cd5-9ed7-a2112e958c74">314,750</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%">*Weighted Averages</span></div></ix:nonNumeric><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;<ix:nonNumeric contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231" name="us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ3Mzc_4e4a2ca8-b848-4d22-b53d-5eee1a710dfd" continuedAt="i9d2d5db7bceb43f2981c17a9807038b8" escape="true">Options outstanding and exercisable at December&#160;31, 2022 were as follows:</ix:nonNumeric></span></div><ix:continuation id="i9d2d5db7bceb43f2981c17a9807038b8"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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.326%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.402%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.285%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.402%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.285%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.402%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.625%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.402%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.285%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.286%"></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:9pt;font-weight:700;line-height:100%">Qualified Stock Options</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Options Outstanding</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Options Exercisable</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:'Times New Roman',sans-serif;font-size:9pt;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:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Shares</span></div></td><td colspan="9" 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%">Remaining Contractual  Life (yrs)*</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:400;line-height:100%">Exercise Price*</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%">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:9pt;font-weight:400;line-height:100%">Exercise&#160;&#160;&#160;&#160; Price*</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Range of Exercise Price</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',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="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',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="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$<ix:nonFraction unitRef="usdPerShare" contextRef="ibee7f745de38423e9660fafdbc60fe1e_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzQtMC0xLTEtNjM4ODcvdGV4dHJlZ2lvbjowOWQzNjQ2NDJlMWE0MDM3YTY0M2UxYzkwMTJjMWJiNF80_f6b0e00c-2864-4407-b9dd-dc317b859488">42.70</ix:nonFraction> - $<ix:nonFraction unitRef="usdPerShare" contextRef="ibee7f745de38423e9660fafdbc60fe1e_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzQtMC0xLTEtNjM4ODcvdGV4dHJlZ2lvbjowOWQzNjQ2NDJlMWE0MDM3YTY0M2UxYzkwMTJjMWJiNF85_0435fbe5-039e-4fa8-a480-f79242505d56">83.99</ix:nonFraction></span></div></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i332b0e139818417a8cd4a2d136b9d52b_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzQtMS0xLTEtNjM4ODc_e3e96c60-0792-41e3-819d-3776c5537a94">27,725</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ibee7f745de38423e9660fafdbc60fe1e_D20220101-20221231" name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzQtMy0xLTEtNjM4ODc_f5a498ef-eb78-44a7-80d1-4a32ca213116">2.32</ix:nonNumeric></span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i332b0e139818417a8cd4a2d136b9d52b_I20221231" decimals="2" name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzQtNS0xLTEtNjM4ODc_75545de0-1e8e-4bdb-aad9-b404461ab184">57.89</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i332b0e139818417a8cd4a2d136b9d52b_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzQtNy0xLTEtNjM4ODc_55d17195-c25e-4654-b706-054f7f3454bc">27,725</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i332b0e139818417a8cd4a2d136b9d52b_I20221231" decimals="2" name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzQtOS0xLTEtNjM4ODc_0e0c9cb7-f528-4de0-bc0a-c36d7b230dc2">57.89</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$<ix:nonFraction unitRef="usdPerShare" contextRef="i9ab8ee9172b244a8a8dd397b1dd4f908_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzUtMC0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo3OTQ2N2FjM2YwZmE0ZDQxODMzOTM2M2Y5YzFjZTEyZV80_57615038-370b-4a9b-8e58-1907d3863878">92.50</ix:nonFraction> - $<ix:nonFraction unitRef="usdPerShare" contextRef="i9ab8ee9172b244a8a8dd397b1dd4f908_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzUtMC0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo3OTQ2N2FjM2YwZmE0ZDQxODMzOTM2M2Y5YzFjZTEyZV85_de4863ce-366b-4591-bf73-46718a23fa79">138.75</ix:nonFraction></span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i767a94e19e5e40159ac0157413db98af_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzUtMS0xLTEtNjM4ODc_a55a2aa8-7d9a-40e0-97d3-ac56839a25a5">40,422</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i9ab8ee9172b244a8a8dd397b1dd4f908_D20220101-20221231" name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzUtMy0xLTEtNjM4ODc_bc1a87d5-abaf-43ad-8665-36767ec5493b">7.57</ix:nonNumeric></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:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i767a94e19e5e40159ac0157413db98af_I20221231" decimals="2" name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzUtNS0xLTEtNjM4ODc_23021692-5e73-4fdf-aceb-905426eeea38">119.34</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i767a94e19e5e40159ac0157413db98af_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzUtNy0xLTEtNjM4ODc_5891c0d7-7614-4456-9f68-7b694e16b46a">12,387</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i767a94e19e5e40159ac0157413db98af_I20221231" decimals="2" name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzUtOS0xLTEtNjM4ODc_bb166d76-13e1-4d69-9dda-1e0d32f50a45">103.89</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$<ix:nonFraction unitRef="usdPerShare" contextRef="iaf629ab3836645949ab33e5501ca2f6b_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzYtMC0xLTEtNjM4ODcvdGV4dHJlZ2lvbjpkMmE4YmVhY2UyYTg0ODFjOTVlOTcyOWNkMDAxNmM3Zl80_172eb7b1-db6a-4073-a66c-3e4bf0b09da8">156.38</ix:nonFraction> - $<ix:nonFraction unitRef="usdPerShare" contextRef="iaf629ab3836645949ab33e5501ca2f6b_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzYtMC0xLTEtNjM4ODcvdGV4dHJlZ2lvbjpkMmE4YmVhY2UyYTg0ODFjOTVlOTcyOWNkMDAxNmM3Zl85_124ca3c6-ab36-4947-a688-9de6ee07017c">234.57</ix:nonFraction></span></div></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i9b3455aa56ab4d2a8a3dd620f413fe46_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzYtMS0xLTEtNjM4ODc_6f833c79-5f56-4698-9797-831c9240689c">16,500</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="iaf629ab3836645949ab33e5501ca2f6b_D20220101-20221231" name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzYtMy0xLTEtNjM4ODc_82478849-dbb4-43cc-a377-9e2029d83f31">8.16</ix:nonNumeric></span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i9b3455aa56ab4d2a8a3dd620f413fe46_I20221231" decimals="2" name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzYtNS0xLTEtNjM4ODc_7594c784-45ea-4fd6-a649-97b2de224dde">156.38</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i9b3455aa56ab4d2a8a3dd620f413fe46_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzYtNy0xLTEtNjM4ODc_5deb87c8-1fb5-4843-aa62-045a44dae68f">3,300</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i9b3455aa56ab4d2a8a3dd620f413fe46_I20221231" decimals="2" name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzYtOS0xLTEtNjM4ODc_533ccf91-5e4a-4b28-8fce-0e50362bbd83">156.38</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i0b10e572815d4913953edd8c1c32efa6_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzctMS0xLTEtNjM4ODc_f4e4f307-0b59-476c-91a0-1e0ec09dd2c7">84,647</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i0b10e572815d4913953edd8c1c32efa6_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzctNy0xLTEtNjM4ODc_5ea58eb2-b966-4895-a282-8a735df5749c">43,412</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%">*Weighted Averages</span></div></ix:continuation><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The weighted-average grant-date fair values of options granted during 2022, 2021, and 2020 were $<ix:nonFraction unitRef="usdPerShare" contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzEwMTc_80555a2c-943c-45b7-9bf4-bb3d31251623">52.70</ix:nonFraction>, $<ix:nonFraction unitRef="usdPerShare" contextRef="i51676da905124b298c0db5d4b498da5c_D20210101-20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzEwMjE_efaeb3e4-f52d-4be0-8d51-86477623700e">59.01</ix:nonFraction> and $<ix:nonFraction unitRef="usdPerShare" contextRef="i219410650f93481ebd26323b8a832def_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzEwMjg_34743347-50ec-40a4-906d-1462b0412cf5">38.33</ix:nonFraction>, respectively. Stock option expense was $<ix:nonFraction unitRef="usd" contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231" decimals="-5" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzEwNzE_c28f8dd1-ec20-47f7-af14-f6775d031639">0.6</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="i51676da905124b298c0db5d4b498da5c_D20210101-20211231" decimals="-5" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzEwNzU_f5c33032-6079-41ea-bb74-cb2add65bd0f">0.6</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i219410650f93481ebd26323b8a832def_D20200101-20201231" decimals="-5" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzEwODI_d5809a4f-95c5-478b-b07a-259c3a0a2fab">0.5</ix:nonFraction> million for years ending 2022, 2021, and 2020, respectively. As of December&#160;31, 2022, there was $<ix:nonFraction unitRef="usd" contextRef="i0b10e572815d4913953edd8c1c32efa6_I20221231" decimals="-5" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzExNTI_45f26644-be98-4cc1-9a31-f070db1861a4">1.3</ix:nonFraction> million of total unrecognized compensation cost related to non-vested share-based compensation arrangements granted under the plans. That cost is expected to be recognized over a period of <ix:nonNumeric contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzEzMzY_0900b606-4b3d-4c24-b847-262e3974211c">five years</ix:nonNumeric>.</span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Equity Incentive Plan</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On May 2, 2019, the stockholders of the Company approved the 2019 Equity Incentive Plan and the Company reserved <ix:nonFraction unitRef="shares" contextRef="if704f1f032cf4b038dd5aaa4540f8a40_I20190502" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzE0Nzg_60a426e3-7d24-43f3-99f8-f8ddd286f569">500,000</ix:nonFraction> shares of common stock for issuance of equity awards including the issuance of non-qualified options for the purchase of shares of our common stock which may be granted to Company officers and non-employee directors. Options become vested and exercisable for up to <ix:nonFraction unitRef="number" contextRef="if51b205dc7294d10bf77e82a58091b25_D20190502-20190502" decimals="INF" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzE3NDY_aaebdb87-8bc1-4325-9fe3-def467ae055a">20</ix:nonFraction>% of the total optioned shares <ix:nonNumeric contextRef="i0cdeefb3beb84a369128f330466e4a2a_D20190502-20190502" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzE3Nzg_5337aec3-a812-4bb3-b578-d6910d35f225">one year</ix:nonNumeric> following the grant of the option and for an additional <ix:nonFraction unitRef="number" contextRef="if63b9384c4f94bddbe03628bb7f1e50d_D20190502-20190502" decimals="INF" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzE4Mzc_05593ab4-676f-4117-a79d-741c09ac3fa2"><ix:nonFraction unitRef="number" contextRef="i40bae31f1b4f4d67b5f1264b3662002b_D20190502-20190502" decimals="INF" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzE4Mzc_675936ab-6f4a-4ff1-be2e-5f1ba38f0735"><ix:nonFraction unitRef="number" contextRef="if834433608a64a74af49ea7398f84bde_D20190502-20190502" decimals="INF" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzE4Mzc_7bc685e2-97a2-4939-87b1-a2679c5a3902"><ix:nonFraction unitRef="number" contextRef="ic07dcf17dce848028271ce79a08ab201_D20190502-20190502" decimals="INF" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzE4Mzc_abc2a9b7-f680-4847-b33d-d4d6b68a8707">20</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction>% of the total optioned shares after each succeeding year until the option is fully exercisable at the end of the fifth year. </span><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ3MzQ_f674fdb5-a7cf-4920-8c83-13ce98d93cef" escape="true"><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:66.443%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.718%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.718%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.721%"></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:'Times New Roman',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:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2022</span></div></td><td colspan="3" style="border-top:1pt solid #000000;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:9pt;font-weight:700;line-height:100%">2021</span></div></td><td colspan="3" style="border-top:1pt solid #000000;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:9pt;font-weight:700;line-height:100%">2020</span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Options available for grant at end of year</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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%"><ix:nonFraction unitRef="shares" contextRef="i667450baff3d4245af27b6b303fd59cd_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplMjhiZTNiODViZDM0N2IwYjNkZTUwNzdiMmIwNmY3ZC90YWJsZXJhbmdlOmUyOGJlM2I4NWJkMzQ3YjBiM2RlNTA3N2IyYjA2ZjdkXzEtMS0xLTEtNjM4ODc_f676f2d8-380c-43d9-88e3-c7f483e156d4">381,531</ix:nonFraction></span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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%"><ix:nonFraction unitRef="shares" contextRef="i1fd93aa3097f4b8dbbca4de45cf5ed5b_I20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplMjhiZTNiODViZDM0N2IwYjNkZTUwNzdiMmIwNmY3ZC90YWJsZXJhbmdlOmUyOGJlM2I4NWJkMzQ3YjBiM2RlNTA3N2IyYjA2ZjdkXzEtMi0xLTEtNjM4ODc_35d248ab-1d00-49a2-a513-0a93f1e3955f">423,969</ix:nonFraction></span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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%"><ix:nonFraction unitRef="shares" contextRef="i7604370e7a114affa5bb1f9fbbc2bd2c_I20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplMjhiZTNiODViZDM0N2IwYjNkZTUwNzdiMmIwNmY3ZC90YWJsZXJhbmdlOmUyOGJlM2I4NWJkMzQ3YjBiM2RlNTA3N2IyYjA2ZjdkXzEtMy0xLTEtNjM4ODc_84c23e45-480f-4576-976c-a4352cdddf5d">455,549</ix:nonFraction></span></td></tr></table></ix:nonNumeric></div><div style="padding-left:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We also maintain other incentive option plans that have expired, under which previously granted awards remain outstanding. No additional grants may be awarded under these plans.</span></div></ix:continuation><div style="text-indent:18pt"><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:'Times New Roman',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><br/></span></div></div><ix:continuation id="iea19104229d2404e8ed974772cb5a6b6" continuedAt="i6a72e9e21df64868bb64f3f95b6d8b33"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Non-Qualified Options</span></div><div><span><br/></span></div><ix:nonNumeric contextRef="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ3MzI_c704b1d4-1972-4c66-9b09-8e777cdbaa33" escape="true"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Following is a summary of activity in the Non-Qualified Stock Option Plans for the periods indicated:</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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:32.184%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.430%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.292%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.430%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.826%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.430%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.292%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.430%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.826%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.430%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.292%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.438%"></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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" 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%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" 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%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" 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%">2020</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:400;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:9pt;font-weight:400;line-height:100%">Exercise Price*</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%">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:9pt;font-weight:400;line-height:100%">Exercise Price*</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%">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:9pt;font-weight:400;line-height:100%">Exercise Price*</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Options outstanding at beginning of year</span></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="i1fd93aa3097f4b8dbbca4de45cf5ed5b_I20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzItMS0xLTEtNjM4ODc_a6eee76f-8f8e-47e3-bc67-c52f31705c2d">2,000</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="i1fd93aa3097f4b8dbbca4de45cf5ed5b_I20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzItMy0xLTEtNjM4ODc_8a7fa6f8-5cd1-4ee2-99b8-1d8ea189a132">53.51</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="i7604370e7a114affa5bb1f9fbbc2bd2c_I20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzItNS0xLTEtNjM4ODc_5bba7d56-900a-47b7-b691-488fee528685">3,000</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="i7604370e7a114affa5bb1f9fbbc2bd2c_I20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzItNy0xLTEtNjM4ODc_ee6c89b7-5b67-4734-9f95-73fa5c88747c">53.51</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="i5ad65b8c4e4d456d9cf858ed0bf0f59f_I20191231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzItOS0xLTEtNjM4ODc_06c2cc82-2589-4ada-bd16-3655be63200f">5,300</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="i5ad65b8c4e4d456d9cf858ed0bf0f59f_I20191231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzItMTEtMS0xLTYzODg3_320e50a2-c7af-42bc-a3b2-35f96bd5a854">46.87</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:bottom"><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="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzMtMS0xLTEtNjM4ODc_ff464f29-9805-4e55-950a-588d26c6bb41">&#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="usdPerShare" contextRef="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzMtMy0xLTEtNjM4ODc_eed9cda5-f1f6-4623-90ac-a7f7132e94ca">&#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="shares" contextRef="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzMtNS0xLTEtNjM4ODc_e2066dcc-785b-4b3c-aee6-28a06427a0d2">&#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="usdPerShare" contextRef="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzMtNy0xLTEtNjM4ODc_709aa401-5f80-4073-a3cc-2eb7f2bff2f0">&#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="shares" contextRef="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzMtOS0xLTEtNjM4ODc_e1ca1006-d542-462a-94eb-51f7ea852549">&#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="usdPerShare" contextRef="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzMtMTEtMS0xLTYzODg3_ffa737b2-1331-4619-ae3c-35d23d18897b">&#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:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#def3c0;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="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzQtMS0xLTEtNjM4ODc_0d335d0b-0121-438a-95ff-68ca0348f705">1,000</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="usdPerShare" contextRef="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzQtMy0xLTEtNjM4ODc_5cd37c72-82db-4cfd-8aae-93ab49a42cf5">53.51</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzQtNS0xLTEtNjM4ODc_34f26600-ed1b-4aa1-9a39-80dc3090b578">1,000</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="usdPerShare" contextRef="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzQtNy0xLTEtNjM4ODc_4dec024e-7de8-4f93-ab3e-091029113cbb">53.51</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzQtOS0xLTEtNjM4ODc_9fa53331-9721-45a8-a845-fb40f5874e53">2,300</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="usdPerShare" contextRef="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzQtMTEtMS0xLTYzODg3_8535ce3b-2edf-499b-b07b-bee091786be8">38.22</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Canceled</span></td><td colspan="2" style="background-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="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzUtMS0xLTEtNjM4ODc_2f55fef3-8850-405a-a94f-8ee94e5a58d9">&#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="usdPerShare" contextRef="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzUtMy0xLTEtNjM4ODc_e1dd3d86-cb28-47ca-a5c7-9b3bbad7f6c0">&#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="shares" contextRef="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzUtNS0xLTEtNjM4ODc_c53244fc-5cd5-40e1-866e-ce63f560c258">&#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="usdPerShare" contextRef="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzUtNy0xLTEtNjM4ODc_fe0a1248-ad81-43ef-aacd-c371e9a74173">&#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="shares" contextRef="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzUtOS0xLTEtNjM4ODc_96f19427-b093-40fc-8040-b8324828b945">&#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="usdPerShare" contextRef="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzUtMTEtMS0xLTYzODg3_e0405851-7a40-4a03-baec-6ea93022799c">&#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:#def3c0;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:9pt;font-weight:400;line-height:100%">Options outstanding at end of year</span></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="i667450baff3d4245af27b6b303fd59cd_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzYtMS0xLTEtNjM4ODc_304d6a02-4104-4bde-afb4-8c73e5146f24">1,000</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="usdPerShare" contextRef="i667450baff3d4245af27b6b303fd59cd_I20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzYtMy0xLTEtNjM4ODc_b3a14577-8c86-4bf5-a432-9e0c34a3f9ee">53.51</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="i1fd93aa3097f4b8dbbca4de45cf5ed5b_I20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzYtNS0xLTEtNjM4ODc_e4e109b6-ab6b-4410-893f-65b5c7825bac">2,000</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="usdPerShare" contextRef="i1fd93aa3097f4b8dbbca4de45cf5ed5b_I20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzYtNy0xLTEtNjM4ODc_8a7fa6f8-5cd1-4ee2-99b8-1d8ea189a132">53.51</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="i7604370e7a114affa5bb1f9fbbc2bd2c_I20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzYtOS0xLTEtNjM4ODc_0cb24dcd-fe77-4be0-a4e8-042c3165096d">3,000</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="usdPerShare" contextRef="i7604370e7a114affa5bb1f9fbbc2bd2c_I20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzYtMTEtMS0xLTYzODg3_1b87bd1b-4f30-43c4-b938-7af453a23be9">53.51</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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;border-bottom:2pt solid #000000;border-top:2pt solid #000000;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%">Options exercisable at end of year</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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="i667450baff3d4245af27b6b303fd59cd_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzctMS0xLTEtNjM4ODc_0fa2119e-0c35-46fb-a227-800652209f92">1,000</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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:2pt solid #000000;border-top:2pt 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="i667450baff3d4245af27b6b303fd59cd_I20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzctMy0xLTEtNjM4ODc_87747c80-caa2-49cb-b533-3f484ad2d344">53.51</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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:2pt solid #000000;border-top:2pt 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="i1fd93aa3097f4b8dbbca4de45cf5ed5b_I20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzctNS0xLTEtNjM4ODc_0052d054-d022-4ef9-ab23-b79799662b3f">2,000</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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:2pt solid #000000;border-top:2pt 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="i1fd93aa3097f4b8dbbca4de45cf5ed5b_I20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzctNy0xLTEtNjM4ODc_305079ff-0a35-41b2-9769-afd3054b035e">53.51</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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:2pt solid #000000;border-top:2pt 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="i7604370e7a114affa5bb1f9fbbc2bd2c_I20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzctOS0xLTEtNjM4ODc_ae684513-fdc5-477c-b52f-b234ef97000e">3,000</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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:2pt solid #000000;border-top:2pt 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="i7604370e7a114affa5bb1f9fbbc2bd2c_I20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzctMTEtMS0xLTYzODg3_181bbd57-dc55-4cd1-af2b-fd36707dbd05">53.51</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%">*Weighted Averages</span></div></ix:nonNumeric><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> <ix:nonNumeric contextRef="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231" name="us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ3NDA_6dad41d0-24fe-4390-8f57-7d7c36a5bf55" continuedAt="ib3b0de4f3b224a34a4937f4502b889a7" escape="true">Options outstanding and exercisable as of December&#160;31, 2022 were as follows:</ix:nonNumeric></span></div><div style="text-indent:18pt"><span><br/></span></div><ix:continuation id="ib3b0de4f3b224a34a4937f4502b889a7"><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:35.449%"></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:2.285%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.133%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.285%"></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:1.0%"></td><td style="width:5.917%"></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:1.846%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.824%"></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-weight:700;line-height:100%">Non-Qualified Stock Options</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:9pt;font-weight:700;line-height:100%">Options Outstanding</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:700;line-height:100%">Options Exercisable</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:400;line-height:100%">Shares</span></td><td colspan="9" 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%">&#160;&#160; Remaining Contractual Life (yrs)*</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:400;line-height:100%">Exercise Price*</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%">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:9pt;font-weight:400;line-height:100%">Exercise Price*</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Range of Exercise Price</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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></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;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;$<ix:nonFraction unitRef="usdPerShare" contextRef="ifc1c7939faa3461a8d5c3b191e68cfcd_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplYTY4OGJlM2Y5ZWM0NTY2YWJkOGIzNmQ5Yjk5MTFmNi90YWJsZXJhbmdlOmVhNjg4YmUzZjllYzQ1NjZhYmQ4YjM2ZDliOTkxMWY2XzUtMC0xLTEtNjM4ODcvdGV4dHJlZ2lvbjpjYmNmN2RjNzU0Yjg0MzFmOTUyZjU4YWJjODk0YzA3Ml81_5375af2e-aa36-406c-95be-a5d8887a6e77">42.70</ix:nonFraction> - $<ix:nonFraction unitRef="usdPerShare" contextRef="ifc1c7939faa3461a8d5c3b191e68cfcd_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplYTY4OGJlM2Y5ZWM0NTY2YWJkOGIzNmQ5Yjk5MTFmNi90YWJsZXJhbmdlOmVhNjg4YmUzZjllYzQ1NjZhYmQ4YjM2ZDliOTkxMWY2XzUtMC0xLTEtNjM4ODcvdGV4dHJlZ2lvbjpjYmNmN2RjNzU0Yjg0MzFmOTUyZjU4YWJjODk0YzA3Ml8xMA_a53ba839-1feb-458f-a251-d88dfe863f86">83.99</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="id831c7e0d302482faca3cb3558d21e5c_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplYTY4OGJlM2Y5ZWM0NTY2YWJkOGIzNmQ5Yjk5MTFmNi90YWJsZXJhbmdlOmVhNjg4YmUzZjllYzQ1NjZhYmQ4YjM2ZDliOTkxMWY2XzUtMS0xLTEtNjM4ODc_18807018-1960-4b22-8f94-ca8a8a8c082c">1,000</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:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ifc1c7939faa3461a8d5c3b191e68cfcd_D20220101-20221231" name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplYTY4OGJlM2Y5ZWM0NTY2YWJkOGIzNmQ5Yjk5MTFmNi90YWJsZXJhbmdlOmVhNjg4YmUzZjllYzQ1NjZhYmQ4YjM2ZDliOTkxMWY2XzUtMy0xLTEtNjM4ODc_21e104f4-d7ba-4f88-8268-eec517316f14">1.36</ix:nonNumeric></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: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="id831c7e0d302482faca3cb3558d21e5c_I20221231" decimals="2" name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplYTY4OGJlM2Y5ZWM0NTY2YWJkOGIzNmQ5Yjk5MTFmNi90YWJsZXJhbmdlOmVhNjg4YmUzZjllYzQ1NjZhYmQ4YjM2ZDliOTkxMWY2XzUtNS0xLTEtNjM4ODc_0bde9541-6cfe-440c-a6cc-fefe8229f2a9">53.51</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="id831c7e0d302482faca3cb3558d21e5c_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplYTY4OGJlM2Y5ZWM0NTY2YWJkOGIzNmQ5Yjk5MTFmNi90YWJsZXJhbmdlOmVhNjg4YmUzZjllYzQ1NjZhYmQ4YjM2ZDliOTkxMWY2XzUtNy0xLTEtNjM4ODc_d2e38e75-06ab-4255-90fb-84193c335803">1,000</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="id831c7e0d302482faca3cb3558d21e5c_I20221231" decimals="2" name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplYTY4OGJlM2Y5ZWM0NTY2YWJkOGIzNmQ5Yjk5MTFmNi90YWJsZXJhbmdlOmVhNjg4YmUzZjllYzQ1NjZhYmQ4YjM2ZDliOTkxMWY2XzUtOS0xLTEtNjM4ODc_ea3cc66c-16c3-475d-9d3f-acdf997d3144">53.51</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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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="i667450baff3d4245af27b6b303fd59cd_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplYTY4OGJlM2Y5ZWM0NTY2YWJkOGIzNmQ5Yjk5MTFmNi90YWJsZXJhbmdlOmVhNjg4YmUzZjllYzQ1NjZhYmQ4YjM2ZDliOTkxMWY2XzYtMS0xLTEtNjM4ODc_05625449-1c59-4428-80a9-3e620fd51619">1,000</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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="i667450baff3d4245af27b6b303fd59cd_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplYTY4OGJlM2Y5ZWM0NTY2YWJkOGIzNmQ5Yjk5MTFmNi90YWJsZXJhbmdlOmVhNjg4YmUzZjllYzQ1NjZhYmQ4YjM2ZDliOTkxMWY2XzYtNy0xLTEtNjM4ODc_ed8688df-1777-4767-9823-c4d86dcf3513">1,000</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%">*Weighted Averages</span></div></ix:continuation><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There were <ix:nonFraction unitRef="shares" contextRef="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzIzOTM_1e930d1f-fb2e-4c05-bca2-41258d0fdeb9"><ix:nonFraction unitRef="shares" contextRef="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzIzOTM_c9a3c5fb-6551-4d2a-ab4f-8947b86bae03"><ix:nonFraction unitRef="shares" contextRef="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzIzOTM_dd0df1c6-2396-4f0a-8161-eaf9cc32a5f0">no</ix:nonFraction></ix:nonFraction></ix:nonFraction> options granted in 2020</span><span style="color:#000000;font-family:'Times New Roman',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%">2021</span><span style="color:#000000;font-family:'Times New Roman',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%">or</span><span style="color:#000000;font-family:'Times New Roman',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%">2022. Stock option expense was <ix:nonFraction unitRef="usd" contextRef="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231" decimals="-5" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzI0NTQ_873199e2-6ff1-4ce1-b90c-f018ca978607"><ix:nonFraction unitRef="usd" contextRef="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231" decimals="-5" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzI0NTQ_ad111716-177c-4953-81c8-44bf991bfa80"><ix:nonFraction unitRef="usd" contextRef="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231" decimals="-5" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzI0NTQ_ef518623-65cc-4440-939d-30b17c007cc8">zero</ix:nonFraction></ix:nonFraction></ix:nonFraction> for years ending 2022, 2021, and 2020, respectively. As of December&#160;31, 2022, there was <ix:nonFraction unitRef="usd" contextRef="i667450baff3d4245af27b6b303fd59cd_I20221231" decimals="-5" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzI1MzU_36664a55-14cd-4f97-bfad-de9ebcbb563d">zero</ix:nonFraction> unrecognized compensation cost related to non-vested share-based compensation arrangements granted under the plans.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During 2022, 2021, and 2020, <ix:nonFraction unitRef="shares" contextRef="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzI2Nzg_0d335d0b-0121-438a-95ff-68ca0348f705">1,000</ix:nonFraction>, <ix:nonFraction unitRef="shares" contextRef="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzI2ODI_34f26600-ed1b-4aa1-9a39-80dc3090b578">1,000</ix:nonFraction>, and <ix:nonFraction unitRef="shares" contextRef="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzI2OTA_9fa53331-9721-45a8-a845-fb40f5874e53">2,300</ix:nonFraction> non-qualified options were exercised, respectively, $<ix:nonFraction unitRef="usd" contextRef="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231" decimals="-5" name="us-gaap:ProceedsFromStockOptionsExercised" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzI3NDU_1fd684e4-fbc2-4793-9e9d-86bb1c497391">0.1</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231" decimals="-5" name="us-gaap:ProceedsFromStockOptionsExercised" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzI3NDk_6d7f14d7-ea27-4712-8858-9a127803e453">0.1</ix:nonFraction> million, and $<ix:nonFraction unitRef="usd" contextRef="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231" decimals="-5" name="us-gaap:ProceedsFromStockOptionsExercised" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzI3NTc_da57c616-f898-459c-8e44-a06f068d0c14">0.1</ix:nonFraction> million of cash receipts were received, respectively. </span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Restricted Stock Awards/Units</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ3MzM_3fb73012-bb84-4ca9-aef6-283f058703b0" escape="true"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Following is a summary of activity in the Restricted Stock Awards ("</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">RSA</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">")/Units for the periods indicated:</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;</span><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:31.794%"></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:2.285%"></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:8.841%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.285%"></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:8.841%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.285%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.846%"></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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" 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%">2022</span></td><td colspan="9" 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%">2021</span></td><td colspan="9" 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%">2020</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:400;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:9pt;font-weight:400;line-height:100%">Grant-Date Fair Value*</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:400;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:9pt;font-weight:400;line-height:100%">Grant-Date Fair Value*</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:400;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:9pt;font-weight:400;line-height:100%">Grant-Date Fair Value*</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Awards outstanding at beginning of year</span></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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:nonFraction unitRef="shares" contextRef="ifc8f47975add4f749d27d6b110aa5ed3_I20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzItMS0xLTEtNjM4ODc_ea69a255-26c4-446a-9421-bf36f132cb5c">80,616</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;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:nonFraction unitRef="usdPerShare" contextRef="ifc8f47975add4f749d27d6b110aa5ed3_I20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzItMy0xLTEtNjM4ODc_bfe5f3a1-51cb-4713-b7e0-6e0935550c2c">129.53</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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:nonFraction unitRef="shares" contextRef="ic1d5d64367254c4c819a305f0ab20b2c_I20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzItNC0xLTEtNjM4ODc_a06fc566-d98d-4087-b896-57312970b3d6">91,043</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;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:nonFraction unitRef="usdPerShare" contextRef="ic1d5d64367254c4c819a305f0ab20b2c_I20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzItNi0xLTEtNjM4ODc_983556a5-e45f-401a-abae-a9634b961295">104.77</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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:nonFraction unitRef="shares" contextRef="ie83acb459d73467c87c99796c09994fb_I20191231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzItNy0xLTEtNjM4ODc_16ee53a6-4c4b-4520-9571-ffb1a1a37783">78,705</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;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:nonFraction unitRef="usdPerShare" contextRef="ie83acb459d73467c87c99796c09994fb_I20191231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzItOS0xLTEtNjM4ODc_960ca8c4-6d43-4d76-ab80-2df8ef28f11d">94.34</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i38f33838ce91420482c5796e5388bdd8_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzMtMS0xLTEtNjM4ODc_dc96d064-0420-4358-9968-71021eb0f31a">48,396</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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:nonFraction unitRef="usdPerShare" contextRef="i38f33838ce91420482c5796e5388bdd8_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzMtMy0xLTEtNjM4ODc_34d070da-93ee-4bde-b9a7-c19c1021f201">133.70</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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:nonFraction unitRef="shares" contextRef="i1011c4830f5f4c91869fe042f30279ce_D20210101-20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzMtNC0xLTEtNjM4ODc_a8f4bf3e-1a01-451b-a457-b046d5e4bc6c">35,224</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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:nonFraction unitRef="usdPerShare" contextRef="i1011c4830f5f4c91869fe042f30279ce_D20210101-20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzMtNi0xLTEtNjM4ODc_61ea1e85-5ef6-463f-a971-a1a33b614074">157.00</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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:nonFraction unitRef="shares" contextRef="i23b96fe554184ee8b4402d7b2035a8fc_D20200101-20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzMtNy0xLTEtNjM4ODc_c1d24f3e-b77f-44e2-9f9d-7b9e1cca980b">44,307</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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:nonFraction unitRef="usdPerShare" contextRef="i23b96fe554184ee8b4402d7b2035a8fc_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzMtOS0xLTEtNjM4ODc_7f46b946-2c33-4a1c-9e19-b3ae5959e6e7">111.95</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Exercised</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 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:nonFraction unitRef="shares" contextRef="i38f33838ce91420482c5796e5388bdd8_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzQtMS0xLTEtNjM4ODc_2ca81c0a-2a50-4a51-ba85-4008811efde3">29,922</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 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:nonFraction unitRef="usdPerShare" contextRef="i38f33838ce91420482c5796e5388bdd8_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzQtMy0xLTEtNjM4ODc_d0fe1a0b-5700-48f2-aaa9-c523576632b5">122.19</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 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:nonFraction unitRef="shares" contextRef="i1011c4830f5f4c91869fe042f30279ce_D20210101-20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzQtNC0xLTEtNjM4ODc_bd08aff3-bc84-4535-bd9f-0bcbc70617fd">45,651</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 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:nonFraction unitRef="usdPerShare" contextRef="i1011c4830f5f4c91869fe042f30279ce_D20210101-20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzQtNi0xLTEtNjM4ODc_93bc8e57-760a-49d5-adbd-944b38731cb7">101.36</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 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:nonFraction unitRef="shares" contextRef="i23b96fe554184ee8b4402d7b2035a8fc_D20200101-20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzQtNy0xLTEtNjM4ODc_d6d4d17f-0ffd-4b44-8109-8822e99511f1">31,594</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 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:nonFraction unitRef="usdPerShare" contextRef="i23b96fe554184ee8b4402d7b2035a8fc_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzQtOS0xLTEtNjM4ODc_4522eb1d-0702-47da-9dca-635ca4608ffa">88.90</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></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%">Canceled</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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:nonFraction unitRef="shares" contextRef="i38f33838ce91420482c5796e5388bdd8_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzUtMS0xLTEtNjM4ODc_525a9616-1f53-4a20-aaf6-2a875736be87">1,460</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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:nonFraction unitRef="usdPerShare" contextRef="i38f33838ce91420482c5796e5388bdd8_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzUtMy0xLTEtNjM4ODc_16665db2-e027-44da-baf7-a07691f10260">143.82</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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:nonFraction unitRef="shares" contextRef="i1011c4830f5f4c91869fe042f30279ce_D20210101-20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzUtNC0xLTEtNjM4ODc_4d8d007c-444e-490b-b50f-7ef61e23e3d9">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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:nonFraction unitRef="usdPerShare" contextRef="i1011c4830f5f4c91869fe042f30279ce_D20210101-20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzUtNi0xLTEtNjM4ODc_cdc6a3a6-44f1-4c97-b3b9-ccb9f2ea92c9">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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:nonFraction unitRef="shares" contextRef="i23b96fe554184ee8b4402d7b2035a8fc_D20200101-20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzUtNy0xLTEtNjM4ODc_335581da-0311-4b52-8e8b-6ca0cb9ef78f">375</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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:nonFraction unitRef="usdPerShare" contextRef="i23b96fe554184ee8b4402d7b2035a8fc_D20200101-20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzUtOS0xLTEtNjM4ODc_211a2b66-8e5a-47bd-b101-52264717a718">100.34</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Awards outstanding at end of year</span></td><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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="if085f70a27904be0b93506b76678eba3_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzYtMS0xLTEtNjM4ODc_6ab5cb3a-496a-442c-a560-754161057ee2">97,630</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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="usdPerShare" contextRef="if085f70a27904be0b93506b76678eba3_I20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzYtMy0xLTEtNjM4ODc_4b0f8fa9-07f0-4311-9460-6eccc18dfcec">133.67</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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="ifc8f47975add4f749d27d6b110aa5ed3_I20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzYtNC0xLTEtNjM4ODc_baee2494-a3ea-4a90-9084-0fd7d6e1ae07">80,616</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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="usdPerShare" contextRef="ifc8f47975add4f749d27d6b110aa5ed3_I20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzYtNi0xLTEtNjM4ODc_c79c4e7b-ec6d-4766-8753-9becf447ad77">129.53</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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="ic1d5d64367254c4c819a305f0ab20b2c_I20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzYtNy0xLTEtNjM4ODc_88b27790-ae22-41fa-b1aa-a0390c370356">91,043</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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="usdPerShare" contextRef="ic1d5d64367254c4c819a305f0ab20b2c_I20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzYtOS0xLTEtNjM4ODc_37537870-47c0-482b-825e-fdb128053f55">104.77</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%">*Weighted Averages</span></div></ix:nonNumeric><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Restricted stock awards vest over a <ix:nonNumeric contextRef="i3490753726ff4591a37ea325756d1abc_D20220101-20221231" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ3NDE_0bb7131b-a25c-4d4f-850f-ff52843ca1df">three year</ix:nonNumeric> period. The weighted-average remaining contractual life in years for 2022, 2021 and 2020 was <ix:nonNumeric contextRef="i7b81e0cb72d241c4a4953368ac25f53e_D20220101-20221231" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzMzMDA_fe7d0bc5-3992-44bc-b372-e1209d3245a0">1.41</ix:nonNumeric>, <ix:nonNumeric contextRef="i6d534cef18a748ab92702c2c5656810b_D20210101-20211231" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzMzMDQ_d27058bf-5a42-41e7-ba4d-d6561fe2e2b9">1.61</ix:nonNumeric> and <ix:nonNumeric contextRef="i2e5beadb31454176860e9cb0fa2c4b9a_D20200101-20201231" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzMzMTE_53bf6ac3-6e2d-47e9-b74f-bdec0848a58a">1.95</ix:nonNumeric>, respectively. Compensation expense was $<ix:nonFraction unitRef="usd" contextRef="i7b81e0cb72d241c4a4953368ac25f53e_D20220101-20221231" decimals="-5" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzMzNTQ_54fd28a6-6faa-43c2-98bf-2e1803dff576">4.9</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="i6d534cef18a748ab92702c2c5656810b_D20210101-20211231" decimals="-5" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzMzNTg_9380a0d0-5c53-4a48-afb5-fd39bb4fb7d3">5.4</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i2e5beadb31454176860e9cb0fa2c4b9a_D20200101-20201231" decimals="-5" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzMzNjU_8821e7ed-aac1-4c2d-b0ff-3a15738de1b6">3.7</ix:nonFraction> million for years ending 2022, 2021, and 2020, respectively. As of December&#160;31, 2022, there was $<ix:nonFraction unitRef="usd" contextRef="icb775f781f264316a750b5e7578a7bad_I20221231" decimals="-5" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzM0MzU_b90984eb-8ed8-4228-a339-42f3d33cd8b6">7.0</ix:nonFraction> million of total unrecognized compensation cost related to non-vested share-based compensation arrangements granted under the plans. That cost is expected to be recognized over a period of <ix:nonNumeric contextRef="i92d53dcc417e4226ae49092eda85d752_D20200101-20201231" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzM3NDA_9e3f94fd-874d-463a-8b50-8722448fbe23">three years</ix:nonNumeric>. </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:'Times New Roman',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><br/></span></div></div><div style="text-indent:18pt"><span><br/></span></div><ix:continuation id="i6a72e9e21df64868bb64f3f95b6d8b33" continuedAt="i6da2e8e88f1b443f952ee0afaa2abfc1"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Performance Stock Units</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2020, the Company's Board of Directors approved a change to our long-term incentive compensation plan to implement new performance-based equity grants in the form of a Performance Stock Unit ("PSU") award. PSU award vesting and payout amounts are tied to the Company's achievement of certain targeted financial metrics relating to a <ix:nonNumeric contextRef="i50ab4791b6dd43998fe818c2a7c3ceec_D20220101-20221231" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ3MzY_9cb5ff59-fcfa-4f5c-b3f2-756a00adacd4">three-year</ix:nonNumeric> performance period with the goal of more closely aligning executive compensation with long-term Company performance.</span></div></ix:continuation><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:18pt"><ix:continuation id="i6da2e8e88f1b443f952ee0afaa2abfc1" continuedAt="i5b6e9656a63b42a0b0f8920afd30a154"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The 2020 target long-term incentive compensation mix established for the Company's Section 16 filers consists of RSAs and PSUs each representing fifty percent (<ix:nonFraction unitRef="number" contextRef="i50ab4791b6dd43998fe818c2a7c3ceec_D20220101-20221231" decimals="INF" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ0NTI_c0bdbc50-0584-45d0-bc89-bf411e3e6df5"><ix:nonFraction unitRef="number" contextRef="i38f33838ce91420482c5796e5388bdd8_D20220101-20221231" decimals="INF" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ0NTI_cfe4d66e-af51-488b-8b55-f81032327f4d">50</ix:nonFraction></ix:nonFraction>%) of the total long-term incentive compensation target value.</span><span style="color:#000000;font-family:'Times New Roman',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="i5b6e9656a63b42a0b0f8920afd30a154">PSU awards represent a right to receive a certain number of shares of the Company&#8217;s common stock at the end of the <ix:nonNumeric contextRef="i50ab4791b6dd43998fe818c2a7c3ceec_D20220101-20221231" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ3NDI_a55b22b2-e06e-443e-83c4-1c9ebc196cf2">three-year</ix:nonNumeric> performance period if certain financial or other performance targets/metrics have been met.</ix:continuation>&#160;</span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_175"></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%">17. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDI3_39aaa043-7893-4042-9270-4367a1f2503c" continuedAt="i5f22dac6edb8402a97762de262227459" escape="true">RETIREMENT BENEFIT PLANS</ix:nonNumeric></span></div><ix:continuation id="i5f22dac6edb8402a97762de262227459" continuedAt="iafd9e78eaf904bedb3ce18b385567bbe"><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Defined Benefit Plans</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In connection with the February 3, 2006 purchase of all the net assets of the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Gradall</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> excavator business, the Company assumed sponsorship of <ix:nonFraction unitRef="plan" contextRef="i9023c726c26349e2a4c074fdc4a88989_I20060203" decimals="INF" name="alg:DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzIwMA_40f00cc1-ef6a-4b62-a124-ffe78b06095f">two</ix:nonFraction> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Gradall</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> non-contributory defined benefit pension plans, both of which are frozen with respect to both future benefit accruals and future new entrants.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Gradall</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Company Employees&#8217; Retirement Plan covers approximately <ix:nonFraction unitRef="employee" contextRef="id2b30941a2b4404bbd80394ffc1e2677_D20220101-20221231" decimals="INF" name="alg:FormerEmployeesCoveredByPensionPlan" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzQyNA_1a1e7d5c-f1b3-4a63-92fb-4246fc06f225">245</ix:nonFraction> former employees and <ix:nonFraction unitRef="employee" contextRef="id2b30941a2b4404bbd80394ffc1e2677_D20220101-20221231" decimals="INF" name="alg:CurrentEmployeesCoveredByPensionPlan" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzQ0OA_d7750c2a-c1e2-4387-8af8-16a5d65a9186">51</ix:nonFraction> current employees who (i) were formerly employed by JLG Industries, Inc., (ii) were not covered by a collective bargaining agreement and (iii) first participated in the plan before December 31, 2004. An amendment ceasing future benefit accruals for certain participants was effective December 31, 2004. A second amendment discontinued all future benefit accruals for all participants effective April 24, 2006.</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Gradall</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Company Hourly Employees&#8217; Pension Plan covered former employees and current employees who (i) were formerly employed by JLG Industries, Inc., (ii) were covered by a collective bargaining agreement and (iii) first participated in the plan before April 6, 1997. An amendment ceasing all future benefit accruals was effective April 6, 1997.</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDM4_e85bd2ca-b253-4198-8067-3efbcef81864" continuedAt="i9c2b526a57914b199d52a815dd296fda" escape="true">The following table sets forth the change in plan assets, change in projected benefit obligation, rate assumptions and components of net periodic benefit cost as of December 31 with respect to the plan. The measurement dates of the assets and liabilities of the plan were December 31 of the respective years presented.</ix:nonNumeric></span></div><div style="text-align:justify"><ix:continuation id="i9c2b526a57914b199d52a815dd296fda"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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:53.139%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.794%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.859%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.847%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.861%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="15" style="border-bottom: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:100%">Reconciliation of Funded Status</span></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="9" 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:9pt;font-weight:700;line-height:100%">Year Ended December 31,</span></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:9pt;font-weight:400;line-height:100%">(in thousands)&#160;&#160;&#160;</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%">2022</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%">2021</span></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Change in projected benefit obligation&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"></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:9pt;font-weight:400;line-height:100%">Benefit obligation at beginning of year</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: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="usd" contextRef="iddf0fe15564f4b3b90fe266fbef3b250_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzQtMi0xLTEtNjM4ODc_ccd32534-a842-423a-8b1e-7aa964a18f59">22,564</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="usd" contextRef="i157f5442992d4d448c7b527a323d059a_I20201231" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzQtNC0xLTEtNjM4ODc_33a18fdc-1a33-417c-a44f-54fd95936ff8">24,100</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:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Service cost</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanServiceCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzUtMi0xLTEtNjM4ODc_0b690151-0c5d-439f-ab55-45052d6fc3c0">4</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanServiceCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzUtNC0xLTEtNjM4ODc_4350ca19-111b-415e-b5fa-a337d196ed1f">5</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest cost</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanInterestCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzYtMi0xLTEtNjM4ODc_7eb82b2d-f661-420d-ac11-5dfa39cdd6c6">604</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="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanInterestCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzYtNC0xLTEtNjM4ODc_d2d9e8e0-3283-4ce0-837e-a0412cd7e1b8">553</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:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Liability actuarial (gain) loss </span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanActuarialGainLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzctMi0xLTEtNjM4ODc_da3057d9-f133-4849-9be8-6253eb5c875c">4,761</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanActuarialGainLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzctNC0xLTEtNjM4ODc_a79df8fd-b183-4126-834c-999a13d1d4b5">994</ix:nonFraction>)</span></td><td style="background-color:#def3c0;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 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Benefits paid</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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzgtMi0xLTEtNjM4ODc_aff86619-07de-40aa-9741-9ae57a6ceb70">1,140</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="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzgtNC0xLTEtNjM4ODc_3bd6c9e5-db8c-4d5c-8225-2a6a483cad2e">1,100</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></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:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Benefit obligation at end of year</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzEwLTItMS0xLTYzODg3_9cb72f77-8ef9-4441-bd8a-95d958bc1a2b">17,271</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="iddf0fe15564f4b3b90fe266fbef3b250_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzEwLTQtMS0xLTYzODg3_32f0da50-b394-49a9-8fb5-37fce691b643">22,564</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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;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:9pt;font-weight:400;line-height:100%">Change in fair value of plan assets&#160;&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Fair value of plan assets at beginning of year</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="iddf0fe15564f4b3b90fe266fbef3b250_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzEyLTItMS0xLTYzODg3_dc658b0b-6d14-41a6-bb5d-ea1c3ec54bc2">23,671</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="i157f5442992d4d448c7b527a323d059a_I20201231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzEyLTQtMS0xLTYzODg3_7ebca515-422c-4507-b844-d4cf718567ab">22,370</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Return on plan assets</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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:DefinedBenefitPlanActualReturnOnPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzEzLTItMS0xLTYzODg3_4a9c6e22-f69f-4c31-9213-3deffff04206">4,262</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="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanActualReturnOnPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzEzLTQtMS0xLTYzODg3_f13a93e1-507b-4399-84d8-4681be5f4703">2,401</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:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Employer contributions</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanContributionsByEmployer" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzE0LTItMS0xLTYzODg3_aef4c173-7208-4938-b7ef-974132b10d3d">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanContributionsByEmployer" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzE0LTQtMS0xLTYzODg3_542f79c7-1b0e-4362-aa0f-b7d943e84b7b">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Benefits paid</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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanPlanAssetsBenefitsPaid" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzE1LTItMS0xLTYzODg3_1376fe20-321b-49f2-8e09-b5b097d6c3c7">1,140</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="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanPlanAssetsBenefitsPaid" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzE1LTQtMS0xLTYzODg3_a80d8195-84d1-4fdd-8e80-adee9e714ee9">1,100</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></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:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Fair value of plan assets at end of year</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="usd" contextRef="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzE3LTItMS0xLTYzODg3_aa350fbc-e21e-4276-8e64-79adc54d765d">18,269</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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="usd" contextRef="iddf0fe15564f4b3b90fe266fbef3b250_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzE3LTQtMS0xLTYzODg3_66c2a0a7-1f8d-489e-ab9f-4f6173966973">23,671</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Funded status </span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt 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:2pt solid #000000;border-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="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFundedStatusOfPlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzE4LTItMS0xLTYzODg3_8df4d76f-2194-4e8a-8c69-5ca8e761bd79">998</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #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;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt 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:2pt solid #000000;border-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="iddf0fe15564f4b3b90fe266fbef3b250_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFundedStatusOfPlan" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzE4LTQtMS0xLTYzODg3_61b6c7e4-249b-4012-98d4-8b5189cfebd2">1,107</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #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></ix:continuation></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:'Times New Roman',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><br/></span></div></div><ix:continuation id="iafd9e78eaf904bedb3ce18b385567bbe" continuedAt="i4b374e784d5f49e1b93bf1bb105acdf2"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company recognizes the overfunded or underfunded status (i.e., the difference between the fair value of plan assets and the projected benefit obligations) of defined benefit postretirement plans as an asset or liability in its consolidated balance sheet and recognizes changes in the funded status in the year in which the changes occur. The Company measures the funded status of a plan as of the date of the year-end consolidated balance sheet.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160; </span><span style="color:#ee2724;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The accumulated benefit obligation for our pension plan represents the actuarial present value of benefits based on employee service and compensation as of a certain date and does not include an assumption about future compensation levels.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> <ix:nonNumeric contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231" name="us-gaap:ScheduleOfAssumptionsUsedTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDMz_34816410-164f-4044-9f0e-fa2693208e4b" continuedAt="id0bc2f159864436d96950cc8ae3623f5" escape="true">In determining the projected benefit obligation and the net pension cost, we used the following significant weighted-average assumptions:</ix:nonNumeric></span></div><ix:continuation id="id0bc2f159864436d96950cc8ae3623f5"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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:41.736%"></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:15.859%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.636%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.639%"></td><td style="width:0.1%"></td></tr><tr><td colspan="15" style="border-bottom:1pt solid #000;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%">Rates to Determine Benefit Obligation</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</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:0 1pt"></td><td colspan="6" style="border-top:1pt solid #000;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:9pt;font-weight:700;line-height:100%">Year Ended December 31,</span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;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="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Discount rate</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231" decimals="4" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0YTdlMTg2YTFiODY0ZjkwYmRmNWExMDhiMjRlY2ExNS90YWJsZXJhbmdlOjRhN2UxODZhMWI4NjRmOTBiZGY1YTEwOGIyNGVjYTE1XzMtMy0xLTEtNjM4ODc_5704b429-f6d6-489a-a2e2-96ee96b32cc9">5.10</ix:nonFraction>%</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="iddf0fe15564f4b3b90fe266fbef3b250_I20211231" decimals="4" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0YTdlMTg2YTFiODY0ZjkwYmRmNWExMDhiMjRlY2ExNS90YWJsZXJhbmdlOjRhN2UxODZhMWI4NjRmOTBiZGY1YTEwOGIyNGVjYTE1XzMtNC0xLTEtNjM4ODc_c6ef6dce-b9db-45ac-9a15-7a0ab42e97bd">2.75</ix:nonFraction>%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Composite rate of compensation increase</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">N/A</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">N/A</span></td></tr></table></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></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:41.736%"></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:15.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.636%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.224%"></td><td style="width:0.1%"></td></tr><tr><td colspan="15" style="border-bottom:1pt solid #000;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%">Rates to Determine Net Periodic Benefit Cost</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:9pt;font-weight:700;line-height:100%">&#160;</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:0 1pt"></td><td colspan="6" 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:9pt;font-weight:700;line-height:100%">Year Ended December 31,</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:9pt;font-weight:700;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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Discount rate</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231" decimals="4" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0N2UwNDYzMjk2YzI0NTc4YTk5MzNjOWZhZGJlODk4ZC90YWJsZXJhbmdlOjQ3ZTA0NjMyOTZjMjQ1NzhhOTkzM2M5ZmFkYmU4OThkXzMtMy0xLTEtNjM4ODc_c6c8bef5-4969-4a26-b4a5-dd9086f566dd">2.75</ix:nonFraction>%</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231" decimals="4" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0N2UwNDYzMjk2YzI0NTc4YTk5MzNjOWZhZGJlODk4ZC90YWJsZXJhbmdlOjQ3ZTA0NjMyOTZjMjQ1NzhhOTkzM2M5ZmFkYmU4OThkXzMtNC0xLTEtNjM4ODc_f79e395c-b225-4ac1-a190-07ec87053cf0">2.35</ix:nonFraction>%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Long-term rate of return on plan 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:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231" decimals="4" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0N2UwNDYzMjk2YzI0NTc4YTk5MzNjOWZhZGJlODk4ZC90YWJsZXJhbmdlOjQ3ZTA0NjMyOTZjMjQ1NzhhOTkzM2M5ZmFkYmU4OThkXzQtMy0xLTEtNjM4ODc_018184b0-5c3b-4bf7-be8a-791bd59c2343">6.00</ix:nonFraction>%</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231" decimals="4" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0N2UwNDYzMjk2YzI0NTc4YTk5MzNjOWZhZGJlODk4ZC90YWJsZXJhbmdlOjQ3ZTA0NjMyOTZjMjQ1NzhhOTkzM2M5ZmFkYmU4OThkXzQtNC0xLTEtNjM4ODc_12667021-3134-4db3-b0ad-86cb773b8b8f">7.25</ix:nonFraction>%</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Composite rate of compensation increase</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">N/A</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">N/A</span></td></tr></table></div></ix:continuation><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company employs a building block approach in determining the expected long-term rate of return on plan assets. Historical markets are studied and long-term historical relationships between equities and fixed income are preserved consistent with the widely accepted capital market principle that assets with higher volatility generate a greater return over the long run. Current market factors such as inflation and interest rates are evaluated before long-term market assumptions are determined. The long-term portfolio return is established via a building block approach with proper consideration of diversification and rebalancing. Peer data and historical returns are reviewed to check for reasonability and appropriateness.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><ix:nonNumeric contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231" name="us-gaap:ScheduleOfNetBenefitCostsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDIz_d7450e1b-4059-4912-947b-6f50ed4a952d" escape="true"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the components of net periodic benefit cost (gains are denoted with parentheses and losses are not):</span><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:68.052%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.723%"></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:1.0%"></td><td style="width:4.894%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.867%"></td><td style="width:0.1%"></td></tr><tr><td colspan="15" style="border-bottom: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:100%">Components of Net Periodic Benefit Cost</span></td></tr><tr><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:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="9" 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:9pt;font-weight:700;line-height:100%">Year Ended December 31,</span></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:9pt;font-weight:700;line-height:100%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></div></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:9pt;font-weight:700;line-height:100%">2022</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:9pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Service cost</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanServiceCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0MzFjZTRlY2M5ZmU0YjIxYjIyYzg3MmRhNTRjZjgzNC90YWJsZXJhbmdlOjQzMWNlNGVjYzlmZTRiMjFiMjJjODcyZGE1NGNmODM0XzMtMi0xLTEtNjM4ODc_0b690151-0c5d-439f-ab55-45052d6fc3c0">4</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanServiceCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0MzFjZTRlY2M5ZmU0YjIxYjIyYzg3MmRhNTRjZjgzNC90YWJsZXJhbmdlOjQzMWNlNGVjYzlmZTRiMjFiMjJjODcyZGE1NGNmODM0XzMtNC0xLTEtNjM4ODc_4350ca19-111b-415e-b5fa-a337d196ed1f">5</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Interest cost</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanInterestCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0MzFjZTRlY2M5ZmU0YjIxYjIyYzg3MmRhNTRjZjgzNC90YWJsZXJhbmdlOjQzMWNlNGVjYzlmZTRiMjFiMjJjODcyZGE1NGNmODM0XzQtMi0xLTEtNjM4ODc_7eb82b2d-f661-420d-ac11-5dfa39cdd6c6">604</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="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanInterestCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0MzFjZTRlY2M5ZmU0YjIxYjIyYzg3MmRhNTRjZjgzNC90YWJsZXJhbmdlOjQzMWNlNGVjYzlmZTRiMjFiMjJjODcyZGE1NGNmODM0XzQtNC0xLTEtNjM4ODc_d2d9e8e0-3283-4ce0-837e-a0412cd7e1b8">553</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:#def3c0;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%">Expected return on plan assets</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0MzFjZTRlY2M5ZmU0YjIxYjIyYzg3MmRhNTRjZjgzNC90YWJsZXJhbmdlOjQzMWNlNGVjYzlmZTRiMjFiMjJjODcyZGE1NGNmODM0XzUtMi0xLTEtNjM4ODc_a6677d73-9e20-46c7-b899-e8828c889129">1,384</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0MzFjZTRlY2M5ZmU0YjIxYjIyYzg3MmRhNTRjZjgzNC90YWJsZXJhbmdlOjQzMWNlNGVjYzlmZTRiMjFiMjJjODcyZGE1NGNmODM0XzUtNC0xLTEtNjM4ODc_fdc3c871-63f3-44d7-aa18-6f2e023c4266">1,581</ix:nonFraction>)</span></td><td style="background-color:#def3c0;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></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:9pt;font-weight:400;line-height:100%">Amortization of net loss</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0MzFjZTRlY2M5ZmU0YjIxYjIyYzg3MmRhNTRjZjgzNC90YWJsZXJhbmdlOjQzMWNlNGVjYzlmZTRiMjFiMjJjODcyZGE1NGNmODM0XzctMi0xLTEtNjM4ODc_f4d5510a-e7e0-42f1-a8c6-707f1316df13">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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0MzFjZTRlY2M5ZmU0YjIxYjIyYzg3MmRhNTRjZjgzNC90YWJsZXJhbmdlOjQzMWNlNGVjYzlmZTRiMjFiMjJjODcyZGE1NGNmODM0XzctNC0xLTEtNjM4ODc_c605b926-cf36-4ab5-ae0a-1784858d7232">542</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></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Net periodic benefit cost</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0MzFjZTRlY2M5ZmU0YjIxYjIyYzg3MmRhNTRjZjgzNC90YWJsZXJhbmdlOjQzMWNlNGVjYzlmZTRiMjFiMjJjODcyZGE1NGNmODM0XzktMi0xLTEtNjM4ODc_983fb031-1b72-4ce4-9a23-8217c3aa9cc9">594</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0MzFjZTRlY2M5ZmU0YjIxYjIyYzg3MmRhNTRjZjgzNC90YWJsZXJhbmdlOjQzMWNlNGVjYzlmZTRiMjFiMjJjODcyZGE1NGNmODM0XzktNC0xLTEtNjM4ODc_b9132925-328f-45b1-943c-78420f08f768">481</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></ix:nonNumeric></div><div style="text-align:justify"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;The Company estimates that $<ix:nonFraction unitRef="usd" contextRef="ifb1b11ee7ef44dc39600b55c62f605e9_D20230101-20231231" decimals="-5" name="us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzMyODM_ef380ee6-94f4-443f-80e8-d9be956a87e8">1.0</ix:nonFraction> million of unrecognized actuarial expense will be amortized from Accumulated other comprehensive income (loss) into net periodic benefit costs during 2023.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company employs a total return investment approach whereby a mix of equities and fixed income investments are used to maximize the long-term return of plan assets for a prudent level of risk. Risk tolerance is established through careful consideration of plan liabilities, plan funded status, and corporate financial condition. The investment portfolio contains a diversified blend of equity and fixed income investments. Furthermore, equity investments are diversified across U.S. and non-U.S. stocks, as well as growth, value, and small and large </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:'Times New Roman',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><br/></span></div></div><ix:continuation id="i4b374e784d5f49e1b93bf1bb105acdf2" continuedAt="if24e6cdc093b4ceb8e3ba256f0480a3a"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">capitalization. Other assets such as real estate, private equity, and hedge funds are used judiciously to enhance long-term returns while improving portfolio diversification. Derivatives may be used to gain market exposure in an efficient and timely manner; however, derivatives may not be used to leverage the portfolio beyond the market value of the underlying investments. Investment risk is measured and monitored on an ongoing basis through quarterly investment portfolio reviews, annual liability measurements, and periodic asset/liability studies. Our current asset allocations are consistent with our targeted allocations.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ScheduleOfAllocationOfPlanAssetsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDQx_77a36d01-1af7-415b-b384-affb1ffe619a" continuedAt="i609489ac833a4e45ac92be8b9d8aa91e" escape="true">The pension plans' weighted-average asset allocation as a percentage of plan assets at December 31 is as follows:</ix:nonNumeric></span></div><div style="text-align:center"><ix:continuation id="i609489ac833a4e45ac92be8b9d8aa91e"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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:31.063%"></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:35.157%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.131%"></td><td style="width:0.1%"></td></tr><tr><td colspan="15" style="border-bottom:1pt solid #000;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%">Asset Allocation as a Percentage of the Plan</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="6" style="border-top:1pt solid #000;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:9pt;font-weight:700;line-height:100%">Year Ended December 31,</span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',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="display:none"></td><td colspan="3" style="display:none"></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%">2022</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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Equity securities</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%"><ix:nonFraction unitRef="number" contextRef="if3cf207cdc8041109a3c2438a4737717_I20221231" decimals="2" name="us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplMDkwNzYyOWE5NmQ0ZWQ1ODQxNDc5Mjk1MWMzOGY0ZC90YWJsZXJhbmdlOmUwOTA3NjI5YTk2ZDRlZDU4NDE0NzkyOTUxYzM4ZjRkXzMtNS0xLTEtNjM4ODc_d127f28b-3460-4c5b-a27e-334a11d58150">36</ix:nonFraction>%</span></td><td colspan="3" style="background-color:#def3c0;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%"><ix:nonFraction unitRef="number" contextRef="icd556120213a4b5fbfc69e2fa86c1d1c_I20211231" decimals="2" name="us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplMDkwNzYyOWE5NmQ0ZWQ1ODQxNDc5Mjk1MWMzOGY0ZC90YWJsZXJhbmdlOmUwOTA3NjI5YTk2ZDRlZDU4NDE0NzkyOTUxYzM4ZjRkXzMtNi0xLTEtNjM4ODc_76e86f98-82a7-4981-8a8b-652908822474">36</ix:nonFraction>%</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:9pt;font-weight:400;line-height:100%">Debt securities</span></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;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i2c8713fba4954513b58d3eab3a03f19e_I20221231" decimals="2" name="us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplMDkwNzYyOWE5NmQ0ZWQ1ODQxNDc5Mjk1MWMzOGY0ZC90YWJsZXJhbmdlOmUwOTA3NjI5YTk2ZDRlZDU4NDE0NzkyOTUxYzM4ZjRkXzQtNS0xLTEtNjM4ODc_210f84e4-d8aa-4f16-81a3-12b8c5bb1ddf">62</ix:nonFraction>%</span></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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i437277f20055408d91f03cfe359bc428_I20211231" decimals="2" name="us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplMDkwNzYyOWE5NmQ0ZWQ1ODQxNDc5Mjk1MWMzOGY0ZC90YWJsZXJhbmdlOmUwOTA3NjI5YTk2ZDRlZDU4NDE0NzkyOTUxYzM4ZjRkXzQtNi0xLTEtNjM4ODc_97ef0268-89a8-4c26-a977-94298487ae34">62</ix:nonFraction>%</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Short-term investments</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%"><ix:nonFraction unitRef="number" contextRef="i74997fdc0ff948d29df323b4c3cb9d2c_I20221231" decimals="2" name="us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplMDkwNzYyOWE5NmQ0ZWQ1ODQxNDc5Mjk1MWMzOGY0ZC90YWJsZXJhbmdlOmUwOTA3NjI5YTk2ZDRlZDU4NDE0NzkyOTUxYzM4ZjRkXzUtNS0xLTEtNjM4ODc_247977f6-0124-4d7e-9a37-eed43705feee">2</ix:nonFraction>%</span></td><td colspan="3" style="background-color:#def3c0;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%"><ix:nonFraction unitRef="number" contextRef="i5e260d6c10e145de848833420aba74ad_I20211231" decimals="2" name="us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplMDkwNzYyOWE5NmQ0ZWQ1ODQxNDc5Mjk1MWMzOGY0ZC90YWJsZXJhbmdlOmUwOTA3NjI5YTk2ZDRlZDU4NDE0NzkyOTUxYzM4ZjRkXzUtNi0xLTEtNjM4ODc_583a5437-b5d0-4097-ae1d-979b27409b1e">2</ix:nonFraction>%</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:9pt;font-weight:400;line-height:100%">Other</span></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;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ic0c4ecbf07bf43779d0da8efbf7bb6bb_I20221231" decimals="2" name="us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations" format="ixt:fixed-zero" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplMDkwNzYyOWE5NmQ0ZWQ1ODQxNDc5Mjk1MWMzOGY0ZC90YWJsZXJhbmdlOmUwOTA3NjI5YTk2ZDRlZDU4NDE0NzkyOTUxYzM4ZjRkXzYtNS0xLTEtNjM4ODc_4c7c4152-469c-4ff9-ae81-dee467577d8b">&#8212;</ix:nonFraction>%</span></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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="iceda45e1bd664c60986a5aa84bb37e7a_I20211231" decimals="2" name="us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations" format="ixt:fixed-zero" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplMDkwNzYyOWE5NmQ0ZWQ1ODQxNDc5Mjk1MWMzOGY0ZC90YWJsZXJhbmdlOmUwOTA3NjI5YTk2ZDRlZDU4NDE0NzkyOTUxYzM4ZjRkXzYtNi0xLTEtNjM4ODc_b3999e58-93ae-4572-bf7a-d1f9425e5804">&#8212;</ix:nonFraction>%</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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:9pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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%"><ix:nonFraction unitRef="number" contextRef="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231" decimals="INF" name="us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplMDkwNzYyOWE5NmQ0ZWQ1ODQxNDc5Mjk1MWMzOGY0ZC90YWJsZXJhbmdlOmUwOTA3NjI5YTk2ZDRlZDU4NDE0NzkyOTUxYzM4ZjRkXzctNS0xLTEtNjM4ODc_bbb94959-7549-477a-ae42-4953da3966f2">100</ix:nonFraction>%</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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%"><ix:nonFraction unitRef="number" contextRef="iddf0fe15564f4b3b90fe266fbef3b250_I20211231" decimals="INF" name="us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplMDkwNzYyOWE5NmQ0ZWQ1ODQxNDc5Mjk1MWMzOGY0ZC90YWJsZXJhbmdlOmUwOTA3NjI5YTk2ZDRlZDU4NDE0NzkyOTUxYzM4ZjRkXzctNi0xLTEtNjM4ODc_0950957e-b804-4cf5-8432-81a3e2d3a94e">100</ix:nonFraction>%</span></td></tr></table></ix:continuation></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDI5_a7f4604b-23ac-4098-a4cc-b6723a684d1a" continuedAt="i024190684098458dbd2ca9a47c6554ce" escape="true"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the hierarchy levels for our postretirement benefit plan investments as of December 31 as described in </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="#i51762c1e0d7f47aeb6d24f3a0d19ea64_124">Note 1</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> to the Consolidated Financial Statements:</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%">&#160;</span><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:1.410%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:47.069%"></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:10.027%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.678%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.678%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.588%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.678%"></td><td style="width:0.1%"></td><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:9.441%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.678%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.678%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.766%"></td><td style="width:0.1%"></td></tr><tr><td colspan="6" style="border-bottom:1pt solid #000000;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;<br/></span><span style="font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><br/></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;<br/>&#160;<br/>(in thousands)</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:9pt;font-weight:700;line-height:100%">December 31, 2022</span></td><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:9pt;font-weight:700;line-height:100%">Quoted</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Prices in Active</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Markets for</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Identical Assets</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 1)</span></div></td><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:9pt;font-weight:700;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Other</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Observable</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Inputs</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 2)</span></div></td><td colspan="6" 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:9pt;font-weight:700;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unobservable</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Inputs</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 3)</span></div></td></tr><tr><td colspan="6" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Mutual Funds:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</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="background-color:#ffffff;padding:0 1pt"></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:9pt;font-weight:400;line-height:100%">Mid Cap</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: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="usd" contextRef="i717c4ae25fa44cca9308d5f5da3e076c_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzMtMy0xLTEtNjM4ODc_7591b82b-f7fc-45bd-a842-d39ca64df96c">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="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="usd" contextRef="icdeff85d9a4e4460a5e04ee26e4619d9_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzMtNi0xLTEtNjM4ODc_5ddcf21d-a98a-4f06-81d8-07109b3a9dd1">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="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="usd" contextRef="i7bcfdde1d2ab476ca1face97be403c08_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzMtOS0xLTEtNjM4ODc_b2c4d58e-4d2b-4b28-9fbe-a6d7fcf9527d">&#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 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="usd" contextRef="i2e2a67cc61a1453b91a2e7b385ffc756_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzMtMTItMS0xLTYzODg3_ce00557d-07d2-468f-8b38-4e82bb6028a5">&#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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">International</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7e5d559dc3fb470b8ce236f1e3326f6e_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzUtMy0xLTEtNjM4ODc_7fa80617-30aa-4999-9449-e4549558c0ac">743</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i17f2ef5d2bc0439aad7b784c1bd8f92b_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzUtNi0xLTEtNjM4ODc_c0c4c742-cf2c-4f2e-9619-3bc52d97ac37">743</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4dc44a40978b47deb5bf75f47c6879f6_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzUtOS0xLTEtNjM4ODc_b7a61112-8afb-4b04-be63-021dfa9d5dce">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ib597f35825274befb83d1eae8312e811_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzUtMTItMS0xLTYzODg3_dec980ed-46c5-4a4c-9c8e-4ab3e716befd">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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;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><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="6" style="background-color:#def3c0;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%">Common/Collective Trusts:</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Wells Fargo Liability Driven Solution CIT I</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i971843612b4444378d4578c27098e323_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzgtMy0xLTEtNjM4ODc_d31fd366-71d9-4b33-8eef-c8b4803aece5">7,815</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="2" style="background-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="i0f139e029a4a40b494b1166a43cef3ee_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzgtNi0xLTEtNjM4ODc_e5ab692c-ee03-47b8-b1fb-6aa08dbde83f">&#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="2" style="background-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="i8fb804c5d600424d99eb72be0c8a5b59_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzgtOS0xLTEtNjM4ODc_a321ad1c-c22b-4d0c-b62f-4f1aea7a7e4f">7,815</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="2" style="background-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="ifcdac7dd37c74ab5889b9f9d01217713_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzgtMTItMS0xLTYzODg3_c4a6d8b2-0b56-49ac-9777-b3659b78690e">&#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:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo Liability Driven Solution CIT II</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="iec1e7c4f52704e7da1f7c6cf4c4d7d62_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzktMy0xLTEtNjM4ODc_7a2cb482-550f-41d4-b2a2-c1f8cc264771">3,550</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ic29f1632958d477b8f1e10e684ff8483_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzktNi0xLTEtNjM4ODc_017500f8-8ac9-460a-a0e8-edff469635b3">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i946e625a959742208f8405d66251235f_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzktOS0xLTEtNjM4ODc_975b0eae-079a-420d-8bb5-c096d14394ed">3,550</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i09714fa45c9744278086938bab8108ae_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzktMTItMS0xLTYzODg3_ce65449e-e78c-4e6c-96db-a02588dd4a6f">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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: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%">Wells Fargo BlackRock International Equity</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i49454c83e1dd4a15bd286665b6172f09_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEwLTMtMS0xLTYzODg3_c1b22c9f-a33b-4c16-a5ba-a7df4f866cc7">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="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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="i6deb7f4f37f24982a39c08cf0bbe04ec_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEwLTYtMS0xLTYzODg3_bb29c81b-ba28-4cf7-ae59-23b4749deb23">&#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="2" style="background-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="if70c161cc4ad4e6abc26a4e751891ee6_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEwLTktMS0xLTYzODg3_3b5a1198-7761-4061-91db-6a36d1efe25b">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="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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="i3c88509b92544ba08854dde611a0a0f1_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEwLTEyLTEtMS02Mzg4Nw_b97190f5-40d0-41d0-9206-d39ab001cdcd">&#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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo/Causeway International Value</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ia2aee32b51e346ddab38ffaa0211827e_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEyLTMtMS0xLTYzODg3_989e036c-be56-4709-b6d0-911e03516748">464</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="idcc624feeeef475db835d65f85ea3c8b_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEyLTYtMS0xLTYzODg3_3aa52424-d313-489f-85a9-b751b78a1f7e">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i76627f49e9d6466396949562e5951519_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEyLTktMS0xLTYzODg3_33ec3ada-1ace-4f7b-891b-9cb0d32790b3">464</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ia0d76ce3ece041f79491d2d5cbafcd64_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEyLTEyLTEtMS02Mzg4Nw_3411697d-dad8-4f86-83f9-737963d39861">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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: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%">Wells Fargo BlackRock Large Cap Growth Index Fund</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia0356ae226af468a976230d65234e8d4_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEzLTMtMS0xLTYzODg3_f20ae4ed-8fac-4d8e-935b-e507bbd97f75">724</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="2" style="background-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="i9e5e7128fefd4808a7a01b152dbde9a4_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEzLTYtMS0xLTYzODg3_f7672d72-ecb0-42dd-b123-c2e6cd66387a">&#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="2" style="background-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="i5a70c21a1fbc4d4b9cd4e9d9595f7adf_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEzLTktMS0xLTYzODg3_a9ffbbee-3cb3-4f83-8005-738eb8d7fe8d">724</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="2" style="background-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="i8cce23c346084618907320d801b9e400_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEzLTEyLTEtMS02Mzg4Nw_35863dfa-83b6-4d75-82b3-7eeb32e91d86">&#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:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo BlackRock Large Cap Value Index Fund</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i43d1dbb904164762bfde5595aa063532_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE0LTMtMS0xLTYzODg3_42592d32-92d8-406d-972f-7baf5293c05f">744</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="id7422f04eae44054bfbce6ca8038d09f_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE0LTYtMS0xLTYzODg3_4c85e4b8-90e3-4e7c-b8c2-f9b038ed5e7a">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ic7d5c518d9594876af64ab3126511b0a_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE0LTktMS0xLTYzODg3_01da8ab7-0ff7-4ea3-a956-10275bbc16a9">744</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i356b27b1b49b42638d998edc758500ca_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE0LTEyLTEtMS02Mzg4Nw_813ea613-03bf-49b9-8ed1-d6ab5a46a6f5">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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: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%">Wells Fargo Multi-Manager Small Cap</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id51a28a4c1164b42bc43a4db197c43fe_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE1LTMtMS0xLTYzODg3_70e617af-da1a-4790-9ada-ab25819f89cd">785</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="2" style="background-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="i11f335c35bd048ad95f49bf90cd777f5_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE1LTYtMS0xLTYzODg3_39f0f97f-f392-4fc3-aa92-f9670bb37c08">&#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="2" style="background-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="ibbe83b3a4b1a40cb964629fe1d4389b9_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE1LTktMS0xLTYzODg3_c1af7369-27ed-4e8a-b4b0-ed44367461d5">785</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="2" style="background-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="i7413e9e2f39a40669d931c15c35251e5_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE1LTEyLTEtMS02Mzg4Nw_0c8a6a74-5d6f-453a-8915-3211b7cc3782">&#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:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo BlackRock Russell 2000 Index Fund</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ie0fca9ec3d444fb9b6e66ea2a9054de3_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE2LTMtMS0xLTYzODg3_f39eacbc-a538-4340-a217-779f538b022b">261</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i9432d45a9e9e4191b54709416e87108b_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE2LTYtMS0xLTYzODg3_6b8cda50-7bd8-404e-a7b2-f4b901c592aa">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="iafff413bcb2240cb8cd16b84d0876287_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE2LTktMS0xLTYzODg3_014e193f-e8a4-472c-895b-06f1a587fecb">261</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i5e101051344e4b1c808528e1db5e08fb_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE2LTEyLTEtMS02Mzg4Nw_2cfbd88c-a3da-48b9-ae18-5c5bceeb97a9">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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: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%">Wells Fargo BlackRock S&amp;P Mid Cap Index Fund</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0adc6834436f4371b3cdd5696abaa8cd_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE3LTMtMS0xLTYzODg3_d677de46-023d-4fc0-b0ab-16c681cebdf6">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 colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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="i5ffb7546a8494d55939a3a4a32690ccf_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE3LTYtMS0xLTYzODg3_36489096-694f-4279-b0b4-cfd76ded22e4">&#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="2" style="background-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="ic2becb6e8fc948c1b31183516406a459_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE3LTktMS0xLTYzODg3_d000c469-4f79-4b76-82e8-49c8b991c836">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 colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-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="i123930823cd8488e838f40bc3f3e1de7_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE3LTEyLTEtMS02Mzg4Nw_83afaaed-29d8-4bb2-a442-dec4f7499766">&#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:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo/MFS Value CIT F</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i4cb19762171d45a0ad88bea28dd77754_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE4LTMtMS0xLTYzODg3_976a04e2-a0f5-4d8e-80b9-a056840c9369">359</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i6d4f08d5bd87435e965b581fc8ddf576_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE4LTYtMS0xLTYzODg3_6ae86bdd-8fdb-4b81-ba4d-fd15342cd841">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i1ea986161ff549f4becf2b6e3b344053_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE4LTktMS0xLTYzODg3_17c63ecb-1fa9-49ed-a851-ff1e8a3038b2">359</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i45cd8b1f870e40358934e74c5d538a77_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE4LTEyLTEtMS02Mzg4Nw_87096c34-dddb-4969-9009-d9dab488e990">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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: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%">Wells Fargo/T. Rowe Price Large-Cap Growth Managed CIT</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icb70ed98ac1149039a9bd3f56114b3c7_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE5LTMtMS0xLTYzODg3_cecfb08c-bbac-4e06-98bc-6df7c0fb26d9">359</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="2" style="background-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="ibe717bc583594521a2ec81bd967b0e7c_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE5LTYtMS0xLTYzODg3_7aea10c6-e9de-4f66-bf21-fd32cad74d76">&#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="2" style="background-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="i7f157b168b604ab888264209d171f418_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE5LTktMS0xLTYzODg3_e2dc5996-fcfb-42bb-8c4c-b5c0e397c0f7">359</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="2" style="background-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="ic50e7308c6c642d2b2906d70f4c41031_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE5LTEyLTEtMS02Mzg4Nw_c2be5a0a-8dc3-4afc-af57-3554dd42da9b">&#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:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo/T. Rowe Price Equity Income Managed CIT</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i6432e734c9bb4c748ed8b984af5c19b3_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIwLTMtMS0xLTYzODg3_4229b47f-feea-4410-95dc-aa0f593ffd95">356</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7eab14931758499c86fc981d8534c0d2_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIwLTYtMS0xLTYzODg3_a6436cba-bb28-49e0-a355-05aaea40ce78">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i0efb16e6acb94bcc822d3f6f17ca38cc_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIwLTktMS0xLTYzODg3_c29ae94f-2e5d-49bf-8b68-212a7be830ea">356</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i35e0ecc32ef34d9fac9974d96205aab2_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIwLTEyLTEtMS02Mzg4Nw_f58b7f5b-3c98-460c-81df-29c1963cca4c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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: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%">Wells Fargo Voya Large Cap Growth CIT F</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i42e85a08729b4b9e9936579f4f8a0368_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIxLTMtMS0xLTYzODg3_626d62b8-9805-49f4-b652-333898f8ec0a">357</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="2" style="background-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="i22991817b589465c988eb404d93742d9_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIxLTYtMS0xLTYzODg3_615cb97b-28ba-4f07-9362-aceb20e6818d">&#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="2" style="background-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="i5d8938ffd2a442588aa9e05718c7a497_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIxLTktMS0xLTYzODg3_eb5e7bef-866e-4b93-9233-2f285170279f">357</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="2" style="background-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="i92b85df410eb4e1fbfe26dec8b1bbb80_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIxLTEyLTEtMS02Mzg4Nw_13938dee-e82c-4c01-8ad2-98a34f1b15d2">&#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 style="height:15pt"><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td></tr><tr><td colspan="6" style="background-color:#ffffff;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%">Cash &amp; Short-term Investments</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i624fe9893bb340f7b9942ac31a247138_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIzLTMtMS0xLTYzODg3_3d55d2aa-4014-4449-9353-75b5d32b08d9">432</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="2" style="background-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="i664cd5f98f364c5baf9f5761fc560d93_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIzLTYtMS0xLTYzODg3_07b67aec-f309-4225-95d4-4b40a56dba9b">432</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="2" style="background-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="ib4f9459255a14b9fbb422a8f1f9cbb4e_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIzLTktMS0xLTYzODg3_0e68715b-39a5-415a-950d-3ca1abc78b1b">&#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="2" style="background-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="ia858cb8acd9842f985f6c945ba0aadf2_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIzLTEyLTEtMS02Mzg4Nw_9a12d9fa-b4f0-487e-b72e-b3195dca3fb0">&#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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzI0LTMtMS0xLTYzODg3_b86f3250-b876-4e66-a6c9-18043e9d296b">18,269</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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="ifa59e56462b747ddaf8ef3be4a751883_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzI0LTYtMS0xLTYzODg3_e935db44-3f10-4acf-b848-715df1188ce1">1,687</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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="ia31027b4f0e0473889357f269d8059f6_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzI0LTktMS0xLTYzODg3_bb672f69-9e1f-4d9f-90c7-5bdc30503d69">16,582</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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="i65fb64b53ac347dfbefe473e635b88d1_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzI0LTEyLTEtMS02Mzg4Nw_242dc5fc-2b61-4f0c-9dff-e209ecdd60f5">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:'Times New Roman',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><br/></span></div></div><ix:continuation id="if24e6cdc093b4ceb8e3ba256f0480a3a" continuedAt="i2f533c884c304b29af5e01e8d47d7789"><div><ix:continuation id="i024190684098458dbd2ca9a47c6554ce"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><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:46.853%"></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.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: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.572%"></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: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.987%"></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: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.601%"></td><td style="width:0.1%"></td></tr><tr><td colspan="6" style="border-bottom:1pt solid #000000;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;<br/>&#160;<br/>&#160;<br/>&#160;<br/>(in thousands)</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:9pt;font-weight:700;line-height:100%">December 31, 2021</span></td><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:9pt;font-weight:700;line-height:100%">Quoted</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Prices in Active</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Markets for</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Identical Assets</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 1)</span></div></td><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:9pt;font-weight:700;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Other</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Observable</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Inputs</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 2)</span></div></td><td colspan="6" 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:9pt;font-weight:700;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unobservable</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Inputs</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 3)</span></div></td></tr><tr><td colspan="6" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Mutual Funds:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</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="background-color:#ffffff;padding:0 1pt"></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:9pt;font-weight:400;line-height:100%">Mid Cap</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: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="usd" contextRef="i52a8204da7b94186bedcf26a1c8e2cce_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzMtMy0xLTEtNjM4ODc_35c34791-44a2-489b-bf33-2d105e951ffc">637</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 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="usd" contextRef="i9f9353766d1f44edb266fab4456f5371_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzMtNi0xLTEtNjM4ODc_e9c99921-6c98-4f89-8b5c-63969e329603">637</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 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="usd" contextRef="i89d34b46d2424ceeb6120441cfc54cc2_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzMtOS0xLTEtNjM4ODc_ee45acbf-4693-4aed-9f33-ee3a87827994">&#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 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="usd" contextRef="ifb0af5063dc548b0a8b1590b99b28194_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzMtMTItMS0xLTYzODg3_58f56557-d62c-4ec8-a141-2f867efc0e98">&#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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">International</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="iaffd3941938a40d996cd8fd72f0edefd_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzUtMy0xLTEtNjM4ODc_bff4e18f-35e6-4d60-b5fd-8d9bac538a85">940</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i44c9c02c4b1e480bb430af91846ceda4_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzUtNi0xLTEtNjM4ODc_cd09d2ed-b0c1-4c80-b6fd-d3734e6cbfda">940</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ib2c563f6493944358bc2a1953334b52b_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzUtOS0xLTEtNjM4ODc_c3f5163b-ffb5-455f-a7e1-0183d3bf147f">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i12da2b7deb3547b88815a6f6bfb98513_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzUtMTItMS0xLTYzODg3_6bd21bdb-5c5a-468b-a46e-4ed92fb8c332">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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;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><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="6" style="background-color:#def3c0;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%">Common/Collective Trusts:</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Wells Fargo Liability Driven Solution CIT I</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia722ba49d783476685ea143590cb6c65_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzgtMy0xLTEtNjM4ODc_8bd08165-d39b-4d66-bb7f-3cc059c2e66a">7,782</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="2" style="background-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="idf3ce4cf4e564e04828187933dee46a7_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzgtNi0xLTEtNjM4ODc_4a05ea21-db8e-4e62-b185-a5aadeb75d4c">&#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="2" style="background-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="i4da8e9917e44416b9288ab1d168417ed_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzgtOS0xLTEtNjM4ODc_59290503-66d6-4502-9bed-db5b258591a2">7,782</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="2" style="background-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="i71958a9a83f947ea9e8ce06c90dc71ae_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzgtMTItMS0xLTYzODg3_59620ab3-313f-4962-876e-2c5efc2b3b53">&#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:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo Liability Driven Solution CIT II</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i55b7d5c6c4794483b8bc04a672aa9794_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzktMy0xLTEtODEzMDA_af1658d0-a722-49e7-b528-eb75e959affe">7,026</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"><ix:nonFraction unitRef="usd" contextRef="ib5a10484730344d196dbac086113cef3_I20211231" xsi:nil="true" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzktNi0xLTEtODEzMDA_b6673ffc-1183-418c-a158-25d592f5cf52"></ix:nonFraction></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i7ba63e2a3f15410f98611106dfa85749_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzktOS0xLTEtODEwMzA_5b72333b-1c71-45ba-ba8b-902ef300d840">7,026</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"><ix:nonFraction unitRef="usd" contextRef="id41367d6d23c4aed857b87c87a87e966_I20211231" xsi:nil="true" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzktMTItMS0xLTgxMzAw_9779cc1e-b279-4510-9537-259843a207f0"></ix:nonFraction></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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Wells Fargo BlackRock International Equity</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibf0eaaa469364e438e4c2c90480cfafd_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzktMy0xLTEtNjM4ODc_87d3d1a6-539e-4081-9617-94a3eeb74e45">616</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="2" style="background-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="icd628f307f6c4f09b6dc7dadae3a7b76_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzktNi0xLTEtNjM4ODc_65243a41-e3f6-4ffe-a49c-b5719af16012">&#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="2" style="background-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="i92640efca9474f738386c749813ce4e7_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzktOS0xLTEtNjM4ODc_05baaae0-3751-41a8-ac4e-2f2ad0693ee5">616</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="2" style="background-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="i985f41572bd8411fbae9a6c39ce09710_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzktMTItMS0xLTYzODg3_3073400e-364c-400c-bfa9-493d011e7bf7">&#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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo/Causeway International Value</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i2b1afabb7d6043c7acac69a09be8202d_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzExLTMtMS0xLTYzODg3_bd5d5073-1479-4361-92ca-85a4284a4154">586</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ief613a9797ba499a90f7c0db92f2ce68_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzExLTYtMS0xLTYzODg3_2766dab4-b608-4caf-93b7-507cce69e832">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ic5c27146979e4ef9be50f4eba2af5be5_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzExLTktMS0xLTYzODg3_74949a5f-284e-4ce0-82aa-9582bd22bb4c">586</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i474d23e8a81945d9886590fb204080c0_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzExLTEyLTEtMS02Mzg4Nw_5dfcf087-60c1-4f37-92ce-ff07013d5ebf">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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: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%">Wells Fargo BlackRock Large Cap Growth Index Fund</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i11537fc0dffb40a18449327b5ef7f16e_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzEyLTMtMS0xLTYzODg3_98458481-e700-4b7f-b0c1-ae0c38a8b99e">950</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="2" style="background-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="i8b3f2b9fb9354a1caf00f74563334cc6_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzEyLTYtMS0xLTYzODg3_1ce2718c-f7fe-4b16-9ecc-5b9ff5bac330">&#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="2" style="background-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="i1b0f1051cbe14b27a274bcf0f4ea6d22_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzEyLTktMS0xLTYzODg3_2a9a105c-c077-4bf4-8ed9-00c4c7f0a555">950</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="2" style="background-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="i84352f8927914e57ad97592295603b0d_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzEyLTEyLTEtMS02Mzg4Nw_d11ba7c7-56f9-4767-9199-a585da14bf7c">&#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:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo BlackRock Large Cap Value Index Fund</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i01bc55dc32dd4ede8728600610903cf8_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzEzLTMtMS0xLTYzODg3_a41b9316-c523-44c7-b7c3-69df8e23ce20">968</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i57e286ef02af480d8743e63aa262595c_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzEzLTYtMS0xLTYzODg3_ff2de669-35e9-4d53-8412-0d64a3754e48">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="iac060d40a1124df79664d97528f314d4_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzEzLTktMS0xLTYzODg3_af234ed8-28e3-40dd-9b3a-d3fd764cdc6c">968</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i1e5e14dac53045a8957d2a963cceef80_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzEzLTEyLTEtMS02Mzg4Nw_e5a090ef-621c-49ee-ace7-0942c4014cc4">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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: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%">Wells Fargo Multi-Manager Small Cap</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaa204fa8c13840f9ac86e795ecf9bffb_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE0LTMtMS0xLTYzODg3_3ba28ccf-2bbb-4546-b8d8-b747bca908e7">1,015</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="2" style="background-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="ie57ef8f03f86451b90f42dcfd1aaa2d3_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE0LTYtMS0xLTYzODg3_5965d1bd-7254-41ba-9617-44ffb00baaf9">&#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="2" style="background-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="i36affe6e249c476598d4a73d04c0c114_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE0LTktMS0xLTYzODg3_ef6b9a22-ab1b-45cb-b436-685970c5edd0">1,015</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="2" style="background-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="i9618475f30bf45e0970dcc5782b044ed_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE0LTEyLTEtMS02Mzg4Nw_f96f208f-1100-43f1-a7ce-1241276bcc17">&#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:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo BlackRock Russell 2000 Index Fund</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ieb7d8adee16741d883e98a92493e6a91_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE1LTMtMS0xLTYzODg3_d3106d36-2d16-4851-a1c2-bc699621672c">332</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i0d87e1e3a66a4e32a364fcf2e77389b6_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE1LTYtMS0xLTYzODg3_2c13866e-08a3-4c03-b150-3b4b2b957547">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i30cdc3de298b42528f34e651ae2386d1_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE1LTktMS0xLTYzODg3_d00d3269-5f1a-485f-92d6-4f4afcb6cd17">332</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i61f958873ed04b5aa29b3ffa6e371cde_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE1LTEyLTEtMS02Mzg4Nw_18874b6a-d7c6-41dd-95c5-eae0f110feb1">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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: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%">Wells Fargo BlackRock S&amp;P Mid Cap Index Fund</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8abbc51f968d43709cebc0fe5e11c77d_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE2LTMtMS0xLTYzODg3_cb172fef-e8f7-465f-847e-517af6d214ae">419</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="2" style="background-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="iabd7bcf621304c96b18970895eca7674_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE2LTYtMS0xLTYzODg3_2d7314fb-4e2b-409e-a1e2-a920a90f7536">&#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="2" style="background-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="ib51767f59e124d79b2405724fe6182c0_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE2LTktMS0xLTYzODg3_6db8843b-509a-473e-8fde-f7ac8812d270">419</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="2" style="background-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="i4540773b6bdc450ab7670c353e71bd24_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE2LTEyLTEtMS02Mzg4Nw_15c43b66-d1d0-43a5-9753-19c328993fb8">&#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:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo/MFS Value CIT F</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ie89ca23203234a5383be35c58800b3c9_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE3LTMtMS0xLTYzODg3_2ef7f57b-7c34-4381-8e35-bc98b10499fd">469</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ie02c44b94ad947cc9e3caaf03e8cd79d_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE3LTYtMS0xLTYzODg3_3c984a1e-bd2d-4a30-8454-000acf501519">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i92b124c33ade4aa085b770b10ae6b7d4_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE3LTktMS0xLTYzODg3_0ee1c5fd-2a09-466c-9230-7fb1e8abc361">469</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ia3290477588b42ac8d96d68467da2638_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE3LTEyLTEtMS02Mzg4Nw_3d31a5c8-9329-4d7f-bb5d-9e0551546f3f">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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: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%">Wells Fargo/T. Rowe Price Large-Cap Growth Managed CIT</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0973b74189624337a8282ede68198c13_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE4LTMtMS0xLTYzODg3_d120e8ac-c07b-41c3-8deb-1ca9e27fc64b">465</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="2" style="background-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="id37e990b5b4442f5990f033d0abda372_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE4LTYtMS0xLTYzODg3_703d7d87-1c05-4322-acaa-289f99ce4d9b">&#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="2" style="background-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="ia003aefa97644225b609cf69cffcb73e_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE4LTktMS0xLTYzODg3_2b445def-065e-4d36-97b0-87643a26d16d">465</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="2" style="background-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="i99e3c828d28042909e8f0610df7209ce_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE4LTEyLTEtMS02Mzg4Nw_230c7e2d-7eda-4449-8156-f34011be966d">&#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:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo/T. Rowe Price Equity Income Managed CIT</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i1e06937bd5cf441f92815ced806d7b19_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE5LTMtMS0xLTYzODg3_d34c7274-f03c-494f-bd2a-a1498250c808">487</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="if30a6b992d2b436e9abf74a084382b62_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE5LTYtMS0xLTYzODg3_b34d2740-b5fc-4511-bc07-4e5160ece760">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i489199d7264b48f4a9304b71e2d9194e_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE5LTktMS0xLTYzODg3_804f75a3-2d8f-44e8-a93f-7bf2203b865d">487</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i5ae7dcde876c4dd7b148277937dbbe41_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE5LTEyLTEtMS02Mzg4Nw_aaf05d5f-317b-4c71-9ba5-e4fcf4eaa3ac">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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: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%">Wells Fargo Voya Large Cap Growth CIT F</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i69a53ea75c044ed0981595e1db730fac_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIwLTMtMS0xLTYzODg3_2fba1c9f-bac4-4e52-b1b3-dbf2089b5806">482</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="2" style="background-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="i80aedcf42fa8458eab165a17fa35837f_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIwLTYtMS0xLTYzODg3_e9ede7ff-7914-42b3-bc3e-94df0f07f58d">&#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="2" style="background-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="i8bee2e3fa22a4c5f946447611476c208_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIwLTktMS0xLTYzODg3_343e879a-9a12-40ac-bda9-b8da2441274d">482</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="2" style="background-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="iedcddcb5f3d245ef9c3454670c5c7546_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIwLTEyLTEtMS02Mzg4Nw_240db107-2ad3-459c-b73e-b84df23aef9c">&#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 style="height:15pt"><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td></tr><tr><td colspan="6" style="background-color:#ffffff;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%">Cash &amp; Short-term Investments</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifdf749fb72bd4479853fd03b81f5452e_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIyLTMtMS0xLTYzODg3_eb1571e8-2f01-451c-adc6-f7dc56442488">497</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="2" style="background-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="if1b4303290284d47b16fd65e0e9c4d11_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIyLTYtMS0xLTYzODg3_f8d9ed9e-9e7f-4d94-a069-bc2ae608d602">497</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="2" style="background-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="ieb27dc5461b54c31821de5f7e266e16a_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIyLTktMS0xLTYzODg3_f7e27ae4-dcf4-4636-8751-6d020524894a">&#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="2" style="background-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="i5765b80e33a24b9b942a9a75df443860_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIyLTEyLTEtMS02Mzg4Nw_9fbc2c41-7426-4c76-80ec-ff29d67e4afd">&#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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIzLTMtMS0xLTYzODg3_11cfcf0a-3908-4a5e-9cdf-171efd7eb7bf">23,671</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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="iafbec1421c62426cb0104c9522fa37c0_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIzLTYtMS0xLTYzODg3_cd6bf7c8-6632-4625-ab49-8d518a9986a7">2,074</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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="id4db507670fd4d0681e823b25f1b4c2b_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIzLTktMS0xLTYzODg3_bb2b31ff-084b-40b3-938c-3203b7e5f2a9">21,597</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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="ic0789b2d2b3a4bafa30f47ca67d0e176_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIzLTEyLTEtMS02Mzg4Nw_6efaffd3-a625-4219-afe3-ef3e9856ee30">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></ix:continuation></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our interests in the common collective trust investments are managed by one custodian. Consistent with our investment policy, the custodian has invested the assets across a widely diversified portfolio of U.S. and international equity and fixed income securities. Fair values of each security within the collective trust as of December&#160;31, 2022 were obtained from the custodian and are based on quoted market prices of individual investments; however, since the fund itself does not have a quoted market price, these assets are considered    Level 2.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The common collective funds noted in the above table have estimated fair value using the net asset value per share of investments. Investments can be redeemed immediately at the current net asset value per share based on the fair value of the underlying assets. Redemption frequency is daily. The categories contain investments in equity securities of smaller growing companies, medium-sized U.S. companies, large value-oriented and growth-oriented companies, and foreign companies traded on international markets.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</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:'Times New Roman',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><br/></span></div></div><ix:continuation id="i2f533c884c304b29af5e01e8d47d7789" continuedAt="ibb6f63474fd24c30a068350927fe8a98"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Expected benefit payments are estimated using the same assumptions used in determining our benefit obligation as of December&#160;31, 2022. <ix:nonNumeric contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231" name="us-gaap:ScheduleOfExpectedBenefitPaymentsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDMw_9cddf655-a00f-4799-afd4-d5cf844f811b" continuedAt="i152f8e2efdfd4327b72974fa01fe6d42" escape="true">The following table illustrates the estimated pension benefit payments that are projected to be paid:</ix:nonNumeric></span></div><div style="text-align:center"><ix:continuation id="i152f8e2efdfd4327b72974fa01fe6d42"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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:83.402%"></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 style="width:0.1%"></td><td style="width:2.577%"></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:2.726%"></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="12" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Projected Future Benefit Payments</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></div></td><td colspan="3" style="display:none"></td><td colspan="9" style="border-top:1pt solid #000;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:9pt;font-weight:700;line-height:100%">Employees&#8217;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Retirement Plan</span></div></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2023</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="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplYzFiN2U4OWY4YzE0MGY1ODQyODFhYjAxODhkNDM2OS90YWJsZXJhbmdlOmVjMWI3ZTg5ZjhjMTQwZjU4NDI4MWFiMDE4OGQ0MzY5XzItNS0xLTEtNjM4ODc_28f01a2c-bbec-4a1a-9f12-56d980809d32">1,275</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;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;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</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="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplYzFiN2U4OWY4YzE0MGY1ODQyODFhYjAxODhkNDM2OS90YWJsZXJhbmdlOmVjMWI3ZTg5ZjhjMTQwZjU4NDI4MWFiMDE4OGQ0MzY5XzMtNS0xLTEtNjM4ODc_57f537a6-68f8-4ca9-9a33-89513070d7ad">1,304</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</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="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplYzFiN2U4OWY4YzE0MGY1ODQyODFhYjAxODhkNDM2OS90YWJsZXJhbmdlOmVjMWI3ZTg5ZjhjMTQwZjU4NDI4MWFiMDE4OGQ0MzY5XzQtNS0xLTEtNjM4ODc_532bf718-d623-4d39-a3aa-0e049939e4c8">1,315</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;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;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2026</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="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplYzFiN2U4OWY4YzE0MGY1ODQyODFhYjAxODhkNDM2OS90YWJsZXJhbmdlOmVjMWI3ZTg5ZjhjMTQwZjU4NDI4MWFiMDE4OGQ0MzY5XzUtNS0xLTEtNjM4ODc_9fa8b9d1-a16c-495b-9691-395f4abe2f8d">1,312</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2027</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="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplYzFiN2U4OWY4YzE0MGY1ODQyODFhYjAxODhkNDM2OS90YWJsZXJhbmdlOmVjMWI3ZTg5ZjhjMTQwZjU4NDI4MWFiMDE4OGQ0MzY5XzYtNS0xLTEtNjM4ODc_9f747f97-c72e-41db-a5a5-ecd3c947d86a">1,306</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;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;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Years 2028 through 2032</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="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplYzFiN2U4OWY4YzE0MGY1ODQyODFhYjAxODhkNDM2OS90YWJsZXJhbmdlOmVjMWI3ZTg5ZjhjMTQwZjU4NDI4MWFiMDE4OGQ0MzY5XzctNS0xLTEtNjM4ODc_c695dcc4-a2b4-456f-9314-903b0791c57a">6,209</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></ix:continuation></div><div style="text-align:center"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Supplemental Retirement Plan</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Board of Directors of the Company adopted the Alamo Group Inc. Supplemental Executive Retirement Plan (the &#8220;SERP&#8221;), effective as of January 3, 2011.&#160;The SERP will benefit certain key management or other highly compensated employees of the Company and/or certain subsidiaries who are selected by the Compensation Committee and approved by the Board to participate.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The SERP is intended to provide a benefit from the Company upon retirement, death or disability, or a change in control of the Company.&#160;Accordingly, the SERP obligates the Company to pay to a participant a Retirement Benefit (as defined in the SERP) upon the occurrence of certain payment events to the extent a participant has a vested right thereto.&#160;A participant&#8217;s right to his or her Retirement Benefit becomes vested in the Company&#8217;s contributions upon <ix:nonNumeric contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231" name="alg:DeferredCompensationArrangementRequisiteServicePeriod" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzcxMDE_02e77807-feda-4bed-a812-282f1e25eb27">10</ix:nonNumeric> years of Credited Service (as defined in the SERP) or a change in control of the Company.&#160; The Retirement Benefit is based on <ix:nonFraction unitRef="number" contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231" decimals="INF" name="alg:PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzcyMzA_a7840dd8-e5f8-49f8-a0c5-ab654b0b3816">20</ix:nonFraction>% of the final <ix:nonNumeric contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231" name="alg:DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDMx_5d9f401c-c007-4e92-a450-15bf7a31837a">three-year</ix:nonNumeric> average salary of each participant on or after his or her normal retirement age (<ix:nonNumeric contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231" name="alg:DeferredCompensationArrangementWithIndividualRetirementAge" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzczMzU_5f495b30-9080-4669-ab6d-4117a335a000">65</ix:nonNumeric> years of age).&#160; In the event of the participant&#8217;s death or a change in control, the participant&#8217;s vested retirement benefit will be paid in a lump sum to the participant or his or her estate, as applicable, within <ix:nonNumeric contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231" name="alg:DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl" format="ixt-sec:durday" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1Xzc1NTI_e01d1808-78a4-4f99-9248-10cbaa0e1071">90</ix:nonNumeric> days after the participant&#8217;s death or a change in control, as applicable. In the event that the participant is entitled to a benefit from the SERP due to disability, retirement or other termination of employment, the benefit will be paid in monthly installments over a period of <ix:nonNumeric contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231" name="alg:DeferredCompensationArrangementMaximumContractualTerm" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1Xzc4MzQ_6eb692ca-a845-42a7-aa62-6c7e7ecf0670">fifteen years</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%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company records amounts relating to the SERP based on calculations that incorporate various actuarial and other assumptions, including discount rates, rate of compensation increases, retirement dates and life expectancy.&#160;The net periodic costs are recognized as employees render the services necessary to earn the SERP benefits.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In May of 2015, the Board amended the SERP to allow the Board to modify the retirement benefit percentage either higher or lower than 20%. In May of 2016, the Board added additional highly compensated employees to the plan. As of December&#160;31, 2022, the current retirement benefit (as defined in the plan) for the participants ranges from <ix:nonFraction unitRef="number" contextRef="i4790b17eb967429486396c862e87d4af_D20220101-20221231" decimals="INF" name="alg:DefinedBenefitPlanRetirementBenefitPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1Xzg0OTc_fcd49d5b-bae3-48db-b565-ccffa575c446">10</ix:nonFraction>% to <ix:nonFraction unitRef="number" contextRef="i98f96f8dc89b435db15fd8d85c9d19b7_D20220101-20221231" decimals="INF" name="alg:DefinedBenefitPlanRetirementBenefitPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1Xzg1MDM_4d71b9a8-b336-49ff-b5a0-787237544cf2">20</ix:nonFraction>%.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</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:'Times New Roman',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><br/></span></div></div><ix:continuation id="ibb6f63474fd24c30a068350927fe8a98" continuedAt="i083b643a12cd4eea82da6fd7730bf09d"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDQz_2ce76b8e-6303-446f-b87a-5c21cc2ce2c2" escape="true"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The change in the Projected Benefit Obligation (PBO) as of December&#160;31, 2022 and 2021, is shown below:</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span><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.128%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.724%"></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:1.0%"></td><td style="width:2.993%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.329%"></td><td style="width:0.1%"></td></tr><tr><td colspan="15" style="border-bottom: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:100%">Reconciliation of Benefit Obligation</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="9" 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:9pt;font-weight:700;line-height:100%">Year Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</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:middle"><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="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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Benefit obligation at January 1,</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i61f12f9ea51146af82634ab866ad929b_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzMtMi0xLTEtNjM4ODc_2c0ba7e0-f233-467b-9d97-e1a77a9eba04">11,326</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6706afd005d94786b0e5ab016edb25ca_I20201231" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzMtNC0xLTEtNjM4ODc_8e27de7c-3773-40a5-adda-22b723d306c0">10,160</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Service cost</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanServiceCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzQtMi0xLTEtNjM4ODc_89a87355-1c6d-4979-b076-694054995cf9">284</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanServiceCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzQtNC0xLTEtNjM4ODc_1417418f-a881-4ba4-98d2-fd931ec67ac5">369</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest cost</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanInterestCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzUtMi0xLTEtNjM4ODc_934a7ea1-5011-40c9-9c09-ccd0cbc19e2d">278</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanInterestCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzUtNC0xLTEtNjM4ODc_3109369f-8dd0-4492-99a5-faadf4f066db">205</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Liability actuarial loss (gain)</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanActuarialGainLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzYtMi0xLTEtNjM4ODc_ded059b7-8a9f-4dda-8ac5-36c35b2ce557">2,023</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:DefinedBenefitPlanActuarialGainLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzYtNC0xLTEtNjM4ODc_7f209b4a-a5d8-4f51-90d2-b3fbd84e4788">759</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Benefits paid</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzctMi0xLTEtNjM4ODc_6a62d41d-e579-44c1-91bc-10ff95205a32">313</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzctNC0xLTEtNjM4ODc_0ed95aa1-6316-4eee-a9b9-f3a7bbcba53e">167</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Benefit obligation at December 31,</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i514496c272c84c0391f1b5b1c3453db4_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzEwLTItMS0xLTYzODg3_07feb1b5-ca19-43f9-93a3-47d73083e533">9,552</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i61f12f9ea51146af82634ab866ad929b_I20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzEwLTQtMS0xLTYzODg3_9284b3bb-5cc3-4584-9d07-1d12d2564fa8">11,326</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr></table></div></ix:nonNumeric><div style="text-indent:18pt"><span><br/></span></div><ix:nonNumeric contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231" name="us-gaap:ScheduleOfNetBenefitCostsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDM0_15175dca-0149-4d7d-bc56-77a5e0958177" escape="true"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of net periodic pension expense were as follows:</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%">&#160;</span><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:67.274%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.556%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.077%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.267%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.226%"></td><td style="width:0.1%"></td></tr><tr><td colspan="15" style="border-bottom: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:100%">Components of Net Periodic Benefit Cost</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="9" 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:9pt;font-weight:700;line-height:100%">Year Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</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:middle"><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="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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Service cost</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanServiceCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3MDg5YzkxYzNjNDA0ZGFjOTQwOTY3NGVkZjY5Y2I4Zi90YWJsZXJhbmdlOjcwODljOTFjM2M0MDRkYWM5NDA5Njc0ZWRmNjljYjhmXzMtMi0xLTEtNjM4ODc_c9fc8c41-9947-425b-92c3-6c6762718e51">284</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanServiceCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3MDg5YzkxYzNjNDA0ZGFjOTQwOTY3NGVkZjY5Y2I4Zi90YWJsZXJhbmdlOjcwODljOTFjM2M0MDRkYWM5NDA5Njc0ZWRmNjljYjhmXzMtNC0xLTEtNjM4ODc_27246b83-2994-4685-ba2b-b22edf6d38bb">369</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest cost</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanInterestCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3MDg5YzkxYzNjNDA0ZGFjOTQwOTY3NGVkZjY5Y2I4Zi90YWJsZXJhbmdlOjcwODljOTFjM2M0MDRkYWM5NDA5Njc0ZWRmNjljYjhmXzQtMi0xLTEtNjM4ODc_85b7a0aa-ff55-448c-8280-aa35955d273d">278</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanInterestCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3MDg5YzkxYzNjNDA0ZGFjOTQwOTY3NGVkZjY5Y2I4Zi90YWJsZXJhbmdlOjcwODljOTFjM2M0MDRkYWM5NDA5Njc0ZWRmNjljYjhmXzQtNC0xLTEtNjM4ODc_4256c8de-2a6c-4055-9d65-f1fe497e6aa0">205</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Amortization of prior service cost</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3MDg5YzkxYzNjNDA0ZGFjOTQwOTY3NGVkZjY5Y2I4Zi90YWJsZXJhbmdlOjcwODljOTFjM2M0MDRkYWM5NDA5Njc0ZWRmNjljYjhmXzUtMi0xLTEtNjM4ODc_435839c6-0e45-4772-9e66-2579a8a3b451">420</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3MDg5YzkxYzNjNDA0ZGFjOTQwOTY3NGVkZjY5Y2I4Zi90YWJsZXJhbmdlOjcwODljOTFjM2M0MDRkYWM5NDA5Njc0ZWRmNjljYjhmXzUtNC0xLTEtNjM4ODc_6739cf7e-e703-4547-9655-de760a9741b4">413</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Amortization of net (gain)/loss</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3MDg5YzkxYzNjNDA0ZGFjOTQwOTY3NGVkZjY5Y2I4Zi90YWJsZXJhbmdlOjcwODljOTFjM2M0MDRkYWM5NDA5Njc0ZWRmNjljYjhmXzYtMi0xLTEtNjM4ODc_570b967f-8841-4c40-8d89-8edbc696e97e">440</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3MDg5YzkxYzNjNDA0ZGFjOTQwOTY3NGVkZjY5Y2I4Zi90YWJsZXJhbmdlOjcwODljOTFjM2M0MDRkYWM5NDA5Njc0ZWRmNjljYjhmXzYtNC0xLTEtNjM4ODc_58fe37a6-dd68-4b3d-b340-67e181be14a3">318</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net periodic benefit cost</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3MDg5YzkxYzNjNDA0ZGFjOTQwOTY3NGVkZjY5Y2I4Zi90YWJsZXJhbmdlOjcwODljOTFjM2M0MDRkYWM5NDA5Njc0ZWRmNjljYjhmXzgtMi0xLTEtNjM4ODc_a64ea3e7-1e13-46d9-8243-1d6cfdde5676">1,422</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231" decimals="-3" name="us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3MDg5YzkxYzNjNDA0ZGFjOTQwOTY3NGVkZjY5Y2I4Zi90YWJsZXJhbmdlOjcwODljOTFjM2M0MDRkYWM5NDA5Njc0ZWRmNjljYjhmXzgtNC0xLTEtNjM4ODc_ca29bcb5-3caf-4ef1-9d08-12333c2703ee">1,305</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr></table></div></ix:nonNumeric><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company estimates that $<ix:nonFraction unitRef="usd" contextRef="i61d597b1e8ab48369c02c0e140ce9ea0_D20230101-20231231" decimals="-5" name="us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1Xzg2OTc_2206be51-c812-43db-ace4-e975b95dc1eb">0.4</ix:nonFraction> million of unrecognized actuarial expense will be amortized from Accumulated other comprehensive income into net periodic benefit costs during 2023.</span></div><div style="text-indent:18pt"><span><br/></span></div><ix:nonNumeric contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231" name="us-gaap:ScheduleOfAssumptionsUsedTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDQ1_709d2021-095a-4fd2-b569-b88872d50021" escape="true"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In determining the projected benefit obligation and the net pension cost, we used the following significant weighted-average assumptions:</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Assumptions used to determine benefit obligations at December 31:</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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.976%"></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.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.498%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="12" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Rates to Determine Benefit Obligation</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</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:middle"><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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Discount rate</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i514496c272c84c0391f1b5b1c3453db4_I20221231" decimals="4" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo1OTAyN2Y4YjE2NTU0MDMxODFiNTQwZDA5MDAxNjQ4NC90YWJsZXJhbmdlOjU5MDI3ZjhiMTY1NTQwMzE4MWI1NDBkMDkwMDE2NDg0XzItMi0xLTEtNjM4ODc_a6631aa0-4070-438f-acc0-e5d9ee4f4a53">5.05</ix:nonFraction>%</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i61f12f9ea51146af82634ab866ad929b_I20211231" decimals="4" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo1OTAyN2Y4YjE2NTU0MDMxODFiNTQwZDA5MDAxNjQ4NC90YWJsZXJhbmdlOjU5MDI3ZjhiMTY1NTQwMzE4MWI1NDBkMDkwMDE2NDg0XzItMy0xLTEtNjM4ODc_7101052f-8848-4677-b41d-b962b9483a07">2.50</ix:nonFraction>%</span></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Composite rate of compensation increase</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i514496c272c84c0391f1b5b1c3453db4_I20221231" decimals="4" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo1OTAyN2Y4YjE2NTU0MDMxODFiNTQwZDA5MDAxNjQ4NC90YWJsZXJhbmdlOjU5MDI3ZjhiMTY1NTQwMzE4MWI1NDBkMDkwMDE2NDg0XzMtMi0xLTEtNjM4ODc_c8371397-dddf-40c8-9f25-f5cef50202ca">3.00</ix:nonFraction>%</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i61f12f9ea51146af82634ab866ad929b_I20211231" decimals="4" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo1OTAyN2Y4YjE2NTU0MDMxODFiNTQwZDA5MDAxNjQ4NC90YWJsZXJhbmdlOjU5MDI3ZjhiMTY1NTQwMzE4MWI1NDBkMDkwMDE2NDg0XzMtMy0xLTEtNjM4ODc_e76caa0b-a6d2-4748-b7e5-b20df0b96be1">3.00</ix:nonFraction>%</span></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Assumptions used to determine net periodic benefit cost for the years ended December 31:</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%">&#160;</span><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:70.894%"></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:12.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.537%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="12" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Rates to Determine Net Periodic Benefit Cost</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</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:middle"><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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Discount rate</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231" decimals="INF" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTowMjlkMWQ1MGZkNDE0ZjYyOTkwYTBkOTVlMGQwY2EyYS90YWJsZXJhbmdlOjAyOWQxZDUwZmQ0MTRmNjI5OTBhMGQ5NWUwZDBjYTJhXzItMi0xLTEtNjM4ODc_09ecabce-0385-498e-8f15-fa16f6d0c1e1">2.50</ix:nonFraction>%</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231" decimals="INF" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTowMjlkMWQ1MGZkNDE0ZjYyOTkwYTBkOTVlMGQwY2EyYS90YWJsZXJhbmdlOjAyOWQxZDUwZmQ0MTRmNjI5OTBhMGQ5NWUwZDBjYTJhXzItMy0xLTEtNjM4ODc_c13f14e8-f3a9-4f7b-8a55-0fde81f0baf6">2.05</ix:nonFraction>%</span></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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Composite rate of compensation increase</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231" decimals="4" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTowMjlkMWQ1MGZkNDE0ZjYyOTkwYTBkOTVlMGQwY2EyYS90YWJsZXJhbmdlOjAyOWQxZDUwZmQ0MTRmNjI5OTBhMGQ5NWUwZDBjYTJhXzMtMi0xLTEtNjM4ODc_f7c4ed08-bd2e-4695-b042-37ec0863c10e">3.00</ix:nonFraction>%</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231" decimals="4" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTowMjlkMWQ1MGZkNDE0ZjYyOTkwYTBkOTVlMGQwY2EyYS90YWJsZXJhbmdlOjAyOWQxZDUwZmQ0MTRmNjI5OTBhMGQ5NWUwZDBjYTJhXzMtMy0xLTEtNjM4ODc_c1140905-48e0-409a-a141-d3564ff80fa6">3.00</ix:nonFraction>%</span></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Long-term rate of return on plan assets</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">N/A</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">N/A</span></td><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="text-align:center"><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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">75</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="i083b643a12cd4eea82da6fd7730bf09d"><ix:nonNumeric contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231" name="us-gaap:ScheduleOfExpectedBenefitPaymentsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDQ2_0f520654-2a31-4010-87c9-23af0a2f6836" escape="true"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Future estimated benefits expected to be paid from the plan over the next ten years as follows:</span></div><div style="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:84.280%"></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:1.0%"></td><td style="width:1.971%"></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></tr><tr><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%">Projected Future Benefit Payments</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">SERP</span></td><td colspan="3" style="border-top:1pt solid #000;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></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2023</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i514496c272c84c0391f1b5b1c3453db4_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTowOTQ2NjMyYWNlODI0YTBkOTk4MDY4YzliOGFhNTIzMS90YWJsZXJhbmdlOjA5NDY2MzJhY2U4MjRhMGQ5OTgwNjhjOWI4YWE1MjMxXzItMS0xLTEtNjM4ODc_a016e7fe-cb28-4ce1-865c-e617cffcfe99">490</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i514496c272c84c0391f1b5b1c3453db4_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTowOTQ2NjMyYWNlODI0YTBkOTk4MDY4YzliOGFhNTIzMS90YWJsZXJhbmdlOjA5NDY2MzJhY2U4MjRhMGQ5OTgwNjhjOWI4YWE1MjMxXzMtMS0xLTEtNjM4ODc_891405ab-1f31-4c54-aeee-ca18b70fd52d">546</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i514496c272c84c0391f1b5b1c3453db4_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTowOTQ2NjMyYWNlODI0YTBkOTk4MDY4YzliOGFhNTIzMS90YWJsZXJhbmdlOjA5NDY2MzJhY2U4MjRhMGQ5OTgwNjhjOWI4YWE1MjMxXzQtMS0xLTEtNjM4ODc_8282fe19-7cd6-4517-a152-91c1efd2c5df">639</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i514496c272c84c0391f1b5b1c3453db4_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTowOTQ2NjMyYWNlODI0YTBkOTk4MDY4YzliOGFhNTIzMS90YWJsZXJhbmdlOjA5NDY2MzJhY2U4MjRhMGQ5OTgwNjhjOWI4YWE1MjMxXzUtMS0xLTEtNjM4ODc_7e03235e-8828-41a7-a832-cc262baabcb2">866</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i514496c272c84c0391f1b5b1c3453db4_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTowOTQ2NjMyYWNlODI0YTBkOTk4MDY4YzliOGFhNTIzMS90YWJsZXJhbmdlOjA5NDY2MzJhY2U4MjRhMGQ5OTgwNjhjOWI4YWE1MjMxXzYtMS0xLTEtNjM4ODc_78999a80-5b37-446c-b699-4c205eb0edb6">868</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;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></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Years 2028 through 2032</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i514496c272c84c0391f1b5b1c3453db4_I20221231" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTowOTQ2NjMyYWNlODI0YTBkOTk4MDY4YzliOGFhNTIzMS90YWJsZXJhbmdlOjA5NDY2MzJhY2U4MjRhMGQ5OTgwNjhjOWI4YWE1MjMxXzctMS0xLTEtNjM4ODc_de38a60c-d0b6-43d2-a8a6-cce82f356b72">4,321</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;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></tr></table></div></ix:nonNumeric><div style="text-align:center"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Defined Contribution Plans</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company has <ix:nonFraction unitRef="plan" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="INF" name="alg:DefinedContributionPlanNumberOfPlans" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzkyOTE_7b766a33-3a48-450c-83b3-28684bdd522f">two</ix:nonFraction> defined contribution plans, The </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Gradall</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Salaried Employees&#8217; Savings and Investment Plan (&#8220;Salary Plan&#8221;) and The International Association of Machinist and Aerospace Workers Retirement Plan (&#8220;IAM Plan&#8221;). The Company contributed $<ix:nonFraction unitRef="usd" contextRef="ife90561e40e7493dbe5313f9928b8529_D20220101-20221231" decimals="-5" name="us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1Xzk1MjE_d015d9d6-7e5b-40ef-a2d5-1ba72e7ee025">0.5</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="iec9c1a66984b4509b11f082bf68d54c7_D20210101-20211231" decimals="-5" name="us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1Xzk1MjU_6fdad626-e3cc-4806-84d7-0571f12c057f">0.5</ix:nonFraction> million, and $<ix:nonFraction unitRef="usd" contextRef="ia275391be9294e35bd152017c5b234d7_D20200101-20201231" decimals="-5" name="us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1Xzk1MzM_f0cc8133-26ee-4700-a347-36d45789e761">0.4</ix:nonFraction> million to the IAM Plan for the plan years ended December&#160;31, 2022, 2021 and 2020, respectively. The Company converted the Salary Plan into its 401(k) retirement and savings plan and put the Hourly Plan into a separate 401(k) retirement and savings plan.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company provides a defined contribution 401(k) retirement and savings plan for eligible U.S. employees. Company matching contributions are based on a percentage of employee contributions. Company contributions to the plan during 2022, 2021 and 2020 were $<ix:nonFraction unitRef="usd" contextRef="i196c2863265548e695dd64a326f541a3_D20220101-20221231" decimals="-5" name="us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwMDE5_fc4f68ea-366a-4d87-8435-99e6eb116061">4.2</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="i922b59df66db420486a5036b9009eda9_D20210101-20211231" decimals="-5" name="us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwMDIz_8566d849-ad0e-432c-a613-9bade6f382fd">3.9</ix:nonFraction> million, and $<ix:nonFraction unitRef="usd" contextRef="iec05639d7c2a4aa8833a1eda02bb8312_D20200101-20201231" decimals="-5" name="us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwMDMx_c7a4d140-33d9-46cb-8bab-34714eefc0e4">3.5</ix:nonFraction> million, respectively.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> <ix:nonFraction unitRef="subsidiary" contextRef="ic670f3b25ae5483f8f49ea627f090dfa_D20220101-20221231" decimals="INF" name="alg:DefinedContributionPlanNumberOfSubsidiaries" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwMDUy_91ec3fdc-aaf9-458c-a5f3-b97ddf95a6be">Three</ix:nonFraction> of the Company&#8217;s international subsidiaries also participate in a defined contribution and savings plan covering eligible employees. The Company&#8217;s international subsidiaries contribute between <ix:nonFraction unitRef="number" contextRef="i49af53d543f043af9e73b3649ab995cc_D20220101-20221231" decimals="INF" name="us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwMjQ4_b6162982-2501-4530-954c-7215afaec20b">0</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="i71e423a8bdf44280bac5df20c2d8f3f7_D20220101-20221231" decimals="INF" name="us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwMjU1_79bfe1d2-cc2d-4c48-b7fb-5fb451d93218">10</ix:nonFraction>% of the participant&#8217;s salary up to a specific limit. Total contributions made to the above plans were $<ix:nonFraction unitRef="usd" contextRef="ic670f3b25ae5483f8f49ea627f090dfa_D20220101-20221231" decimals="-5" name="us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwMzU5_59d2644f-ce8d-408a-9c7c-3a194ac0dc13">0.9</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="iccc219e591e44500b8fdb5232de4b667_D20210101-20211231" decimals="-5" name="us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwMzYz_d5265f3d-7d8b-4f97-89ae-01786bd90733">0.9</ix:nonFraction> million, and $<ix:nonFraction unitRef="usd" contextRef="iadb2db423fc143568086d3b6a3b94ea4_D20200101-20201231" decimals="-5" name="us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwMzcx_b23999c9-6a9d-45a6-988c-b8ec71146a5d">0.9</ix:nonFraction> million for the years ended December&#160;31, 2022, 2021 and 2020, respectively.</span></div></ix:continuation><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_178"></div><div style="margin-top:8pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">18.&#160;<ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:SegmentReportingDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90ZXh0cmVnaW9uOjIxYjBjOTdhZDljYzQ4ZmY5YmU5MmFlZWIwMTAzNTgyXzIwMTQ_d9280372-a1e6-44cc-a96c-3acc544fe80e" continuedAt="icc196b73f688456cbce0087c23c0142c" escape="true">REVENUE AND SEGMENT REPORTING</ix:nonNumeric></span></div><ix:continuation id="icc196b73f688456cbce0087c23c0142c" continuedAt="i73c87362efa3418cba51d649fde6050e"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Disaggregation of revenue is presented in the tables below by product type. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:DisaggregationOfRevenueTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90ZXh0cmVnaW9uOjIxYjBjOTdhZDljYzQ4ZmY5YmU5MmFlZWIwMTAzNTgyXzIwMTc_824ea8e9-6998-4ab4-93ed-88815ba888be" continuedAt="idaeb5d4dbb234ee1bd34301d29fddae2" escape="true">Management has determined that this level of disaggregation would be beneficial to users of the financial statements.</ix:nonNumeric></span></div><div><ix:continuation id="idaeb5d4dbb234ee1bd34301d29fddae2"><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.356%"></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:1.992%"></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:1.992%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.622%"></td><td style="width:0.1%"></td></tr><tr><td colspan="18" style="border-bottom: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:100%">Revenue by Product Type</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="15" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</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%">2020</span></td></tr><tr><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:9pt;font-weight:400;line-height:100%">Net Sales</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:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;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:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Wholegoods</span></td><td style="background-color:#def3c0;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:#def3c0;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="i273bea94087a4a249fb082e3b2436a8c_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzQtMS0xLTEtNjM4ODc_a619bd19-c23b-49a4-87ac-cc5093b06a13">1,185,885</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="i152b3b0f333e4a34974ca0723f6f9128_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzQtMy0xLTEtNjM4ODc_188f49bf-789c-48c8-b806-8e492088758c">1,024,158</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="i332689bfdab040e981db033ee4b0e436_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzQtNS0xLTEtNjM4ODc_51c92145-fdf1-4d13-af63-dca739b36c2b">885,254</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Parts</span></td><td colspan="2" style="background-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="i72a1ba6068504c79a2fd7f8558bca6f2_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzUtMS0xLTEtNjM4ODc_ae410e1f-8fe7-4a4e-929c-d36eb779d7e0">280,261</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="i16ebbf0c79d74751ab10b853e6c9688a_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzUtMy0xLTEtNjM4ODc_cabc6223-4b57-408c-9a6c-f4fa750cbd06">262,432</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="id0ac0cc4253a48669df79c10c0160e35_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzUtNS0xLTEtNjM4ODc_5b3d4cd6-a769-4fea-b084-c1d50bda2b8d">247,126</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:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other *</span></td><td colspan="2" style="background-color:#def3c0;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="i08aa06cdfd1b4f03b5aba2ec7f94c6be_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzYtMS0xLTEtNjM4ODc_8bbb5bb2-3f3f-471a-b27f-a7b0d626f758">47,470</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i0a8c7e5368d6478b995b9e33da457c37_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzYtMy0xLTEtNjM4ODc_bf8d9713-4f85-46c3-9b74-da5d1ace1e5d">47,633</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ifcdfad41cf02439ca81c141d332993bb_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzYtNS0xLTEtNjM4ODc_f37da785-214a-4e71-b09b-ad3f673b6afc">31,086</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Consolidated</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt 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:2pt solid #000000;border-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="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzctMS0xLTEtNjM4ODc_14e6f484-148f-40d2-be32-f129d16ef4bf">1,513,616</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #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;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt 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:2pt solid #000000;border-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="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzctMy0xLTEtNjM4ODc_9ab6f770-b4a0-4fcf-8325-7ff8f5023f17">1,334,223</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #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;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt 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:2pt solid #000000;border-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="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzctNS0xLTEtNjM4ODc_f4fcde5e-06ce-45ae-bde4-865fa63ca0de">1,163,466</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table><span style="color:#000000;font-family:'Arial',sans-serif;font-size:7pt;font-weight:400;line-height:120%"> &#160;&#160;&#160;&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">*Other includes rental sales, extended warranty sales and service sales as it is considered immaterial.</span></ix:continuation></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s sales are principally within the United States, United Kingdom, France, Canada and Australia. The Company sells its products primarily through a network of independent dealers and distributors to governmental end-users, related independent contractors, as well as to the agricultural and commercial turf markets. Effective for the fourth quarter of 2021, the Company began reporting its operating results on the basis of the following segments, Vegetation Management Division and Industrial Equipment Division. Prior to the fourth quarter of 2021, the Company had been reporting its operating results on the basis of <ix:nonFraction unitRef="segment" contextRef="ibd895d48ac38440e907abfa04402881f_D20221001-20221231" decimals="INF" name="us-gaap:NumberOfReportableSegments" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90ZXh0cmVnaW9uOjIxYjBjOTdhZDljYzQ4ZmY5YmU5MmFlZWIwMTAzNTgyXzE2NDkyNjc0NDU2MjY_b0ee14df-bf01-4dbd-9afb-9a743f26c825">two</ix:nonFraction> segments which were the Industrial Division and Agricultural Division. The Vegetation Management Division includes all of the operations of the former Agricultural Division plus the mowing and forestry/tree care operations that were previously part of the former Industrial Division. The Industrial Equipment Division includes the Company&#8217;s vocational truck business and other industrial operations such as excavators, vacuum trucks, street sweepers, and snow removal equipment. </span></div></ix:continuation><div style="text-indent:18pt"><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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">76</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="i73c87362efa3418cba51d649fde6050e"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has included a summary of the financial information by reporting segment. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90ZXh0cmVnaW9uOjIxYjBjOTdhZDljYzQ4ZmY5YmU5MmFlZWIwMTAzNTgyXzIwMTM_f8555cdd-ea4f-42d0-a11b-22dea64ddbf7" continuedAt="ifd8742ccdf144dae85963d973b8d9077" escape="true">The following table presents the revenue and income from operations by reporting segment for the years ended December&#160;31, 2022, 2021, and 2020:</ix:nonNumeric></span></div><ix:continuation id="ifd8742ccdf144dae85963d973b8d9077"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span><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:52.116%"></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:1.0%"></td><td style="width:2.554%"></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:1.0%"></td><td style="width:2.993%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.207%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</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%">2020</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net Revenue</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Vegetation Management</span></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0ff65971f8a344f3afdf75aa25d869f1_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzQtMS0xLTEtNjM4ODc_f0d6b8de-132b-4f4d-aaae-91374a7e4d88">937,065</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if77ec05e8b684280b18475c39a8bf482_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzQtMy0xLTEtNjM4ODc_ce03696c-09e7-4d24-b459-273761bc59b1">812,676</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i513fb2f7accf49ecacbc7116eafbe588_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzQtNS0xLTEtNjM4ODc_b08e91cb-e74f-4e27-92e5-00ceb6b10a7e">654,630</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Industrial Equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibaa2c0aa8b8145e0846cbc65655c330c_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzUtMS0xLTEtNjM4ODc_07de9278-0004-4705-882d-0a9c5fd66a28">576,551</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3182e3589e3647f599dbed14ec3a5afe_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzUtMy0xLTEtNjM4ODc_83ff8470-442d-4867-a443-6da31bf73193">521,547</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i36cdf5e00a0245ce92a15de38f5924f4_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzUtNS0xLTEtNjM4ODc_0e45c70d-db1b-424c-b05b-28ab3b066513">508,836</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Consolidated</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzctMS0xLTEtNjM4ODc_2cf3010a-d87e-4c20-84ad-f421d2bb0222">1,513,616</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzctMy0xLTEtNjM4ODc_08618e1d-3a18-492c-a645-b786fcdb02cb">1,334,223</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzctNS0xLTEtNjM4ODc_a06dd323-a1c6-4cbe-86ef-e78f7f7a2058">1,163,466</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Income from Operations</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Vegetation Management</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0ff65971f8a344f3afdf75aa25d869f1_D20220101-20221231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzEwLTEtMS0xLTYzODg3_2d073859-a2c5-4ec1-8b0f-a7a70c1b9893">108,508</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if77ec05e8b684280b18475c39a8bf482_D20210101-20211231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzEwLTMtMS0xLTYzODg3_a05b436f-3c3f-4277-88a3-55ab77c9df96">78,917</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i513fb2f7accf49ecacbc7116eafbe588_D20200101-20201231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzEwLTUtMS0xLTYzODg3_878f5989-4e22-41de-983f-06e01d9fc086">46,651</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Industrial Equipment</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibaa2c0aa8b8145e0846cbc65655c330c_D20220101-20221231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzExLTEtMS0xLTYzODg3_337080a0-d0aa-4b3d-97a0-8ec98a803f3d">40,084</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3182e3589e3647f599dbed14ec3a5afe_D20210101-20211231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzExLTMtMS0xLTYzODg3_29944614-ec1e-4fd7-a40c-dc9b38fb41f1">38,021</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i36cdf5e00a0245ce92a15de38f5924f4_D20200101-20201231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzExLTUtMS0xLTYzODg3_f9baf4ad-cc5e-47a8-9ddc-159101debd14">48,134</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Consolidated</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzEzLTEtMS0xLTYzODg3_1594d3b4-97fd-4b69-862a-060fbe836356">148,592</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzEzLTMtMS0xLTYzODg3_d78a2035-8cb4-42c7-a66e-69e3a4882e56">116,938</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzEzLTUtMS0xLTYzODg3_ee1f393f-544e-46cd-bc16-fc566ef37bc6">94,785</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr></table></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the goodwill and total identifiable assets by reporting segment for the years ended December&#160;31, 2022 and 2021:</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span><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:64.689%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.104%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.701%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.106%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="display:none"></td></tr><tr><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:700;line-height:100%">December 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:9pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="12" 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:9pt;font-weight:700;line-height:100%">Goodwill</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Vegetation Management</span></td><td style="background-color:#def3c0;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:#def3c0;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="i803060fc3e714dea8c404e56b28916c4_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzQtMS0xLTEtNjM4ODc_8ddc8539-e7fa-48b1-b211-f43464dad552">127,562</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:#def3c0;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="ifabd95c5636e4ae29d276ed3df2f04aa_I20211231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzQtMy0xLTEtNjM4ODc_7fdc61f7-d035-4720-a507-b399cbe86424">132,963</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Industrial 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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3d862a4e890749ffb9f5627adbe5ad23_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzUtMS0xLTEtNjM4ODc_da5285f1-dc93-41de-9f34-e310b69711d3">68,296</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="ib5cd129a56a24fffb8578ab324d3ad87_I20211231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzUtMy0xLTEtNjM4ODc_7cf41ff0-a3e8-46f3-8672-295c496830b9">69,443</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:#def3c0;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:9pt;font-weight:400;line-height:100%">Consolidated</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzctMS0xLTEtNjM4ODc_58663e7e-2bc5-4c46-b1b0-6ffaf6a2d054">195,858</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzctMy0xLTEtNjM4ODc_e55bf224-3005-4c1c-8e65-de52e48db869">202,406</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="12" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Identifiable Assets </span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Vegetation Management</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: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="usd" contextRef="i803060fc3e714dea8c404e56b28916c4_I20221231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzEwLTEtMS0xLTYzODg3_424b589a-fc01-4c0d-9151-96a8a661a6c8">866,974</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="usd" contextRef="ifabd95c5636e4ae29d276ed3df2f04aa_I20211231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzEwLTMtMS0xLTYzODg3_22630d32-336c-40e3-8311-b4612b8392bd">789,838</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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Industrial Equipment</span></td><td colspan="2" style="background-color:#def3c0;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="i3d862a4e890749ffb9f5627adbe5ad23_I20221231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzExLTEtMS0xLTYzODg3_75f6121a-49ab-4dbf-a960-3e8d274e1c99">441,534</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="ib5cd129a56a24fffb8578ab324d3ad87_I20211231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzExLTMtMS0xLTYzODg3_b5be9193-5a92-44fd-9fa6-d09ff606f896">415,904</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;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;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Consolidated</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzEzLTEtMS0xLTYzODg3_3e0d9e79-cfea-48a9-8fc9-e9e5e2f494d1">1,308,508</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #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;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzEzLTMtMS0xLTYzODg3_47c69b21-29ef-47ee-99ce-45324cba1acd">1,205,742</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:continuation></ix:continuation><div style="text-align:center"><span><br/></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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">77</span></div></div></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_181"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></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%">19.&#160; <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ComprehensiveIncomeNoteTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90ZXh0cmVnaW9uOmNhMGViNmM1NWRmMTRkYWI4NzI3M2FjYWM4MmVlMjM5XzE0Mw_7f90c8c9-375f-4a0f-ad15-5db1f9e3b912" continuedAt="i7d34efd695334f4e8b37ae605c5af30d" escape="true">ACCUMULATED OTHER COMPREHENSIVE LOSS</ix:nonNumeric></span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><ix:continuation id="i7d34efd695334f4e8b37ae605c5af30d"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90ZXh0cmVnaW9uOmNhMGViNmM1NWRmMTRkYWI4NzI3M2FjYWM4MmVlMjM5XzE0NA_ca05b9ec-5a7d-4a3e-af6b-a611170e181b" escape="true"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Changes in accumulated other comprehensive loss by component, net of tax, were as follows:</span></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:20.391%"></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:1.0%"></td><td style="width:7.525%"></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:1.0%"></td><td style="width:8.402%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.700%"></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:1.0%"></td><td style="width:7.525%"></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:1.0%"></td><td style="width:8.409%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="27" style="border-bottom: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:100%">Twelve Months Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="12" 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:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="12" 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:100%">2021</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%">(in thousands)</span></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:9pt;font-weight:700;line-height:100%">Foreign Currency Translation Adjustment</span></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:9pt;font-weight:700;line-height:100%">Defined Benefit Plans Items</span></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:9pt;font-weight:700;line-height:100%">Gains (Losses) on Cash Flow Hedges</span></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:9pt;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 #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:100%">Foreign Currency Translation Adjustment</span></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:9pt;font-weight:700;line-height:100%">Defined Benefit Plans Items</span></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:9pt;font-weight:700;line-height:100%">Gains (Losses) on Cash Flow Hedges</span></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:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Balance as of beginning of period</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i868c73b3d06b44ec92617f0666dc7ce7_I20211231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzMtMS0xLTEtNjM4ODc_fbde8587-5d10-4776-95f2-ebf5abb42974">42,397</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6e8112f8e8a34e919c3bd3d5a628619d_I20211231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzMtMi0xLTEtNjM4ODc_4f1328b4-0158-4b5a-8d4e-ac7b1b948f1e">5,017</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ie3923a67e5f64f98a807cc1d853fc5e2_I20211231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzMtMy0xLTEtNjM4ODc_e05ba470-b1f3-417b-a3f4-46d5bcf71000">1,576</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i3114f6dde5534997ba147bf29b5ba918_I20211231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzMtNC0xLTEtNjM4ODc_c2d1a9db-4274-4e14-809d-40dfe657aa07">48,990</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ibfae7c87e3cf4e8da5fff61923d7a933_I20201231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzMtNi0xLTEtNjM4ODc_32112df0-d1be-44b8-ae9b-b524e6f68203">26,597</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i5c14023a880f45928fd39bb00503a4eb_I20201231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzMtNy0xLTEtNjM4ODc_66e2fc99-ac1c-451c-8aea-19940409e80d">6,855</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="icee1ab5ee6e94435a209bd27d6fe82fa_I20201231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzMtOC0xLTEtNjM4ODc_59f01c8b-b0ae-4da6-954f-bdf3b127d6bd">6,874</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i8d341c55254649f983daa2187dbb3c28_I20201231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzMtOS0xLTEtNjM4ODc_9e2dd106-772e-4632-903a-ef53c4441854">40,326</ix:nonFraction>)</span></td><td style="background-color:#def3c0;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;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:9pt;font-weight:400;line-height:100%">Other comprehensive  income (loss) before reclassifications</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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i16b0080a3731492cbc6a4d1595ee7cfc_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzQtMS0xLTEtNjM4ODc_325306ce-2732-4951-a97d-203972053374">23,032</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="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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i597d4799d22b481eadba8771012e4440_D20220101-20221231" decimals="-3" name="us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzQtMi0xLTEtNjM4ODc_e45173d0-4e30-49fe-ad01-e0bd73270d96">&#8212;</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="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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i705d2dd97b5e442a82aac45bb61c9788_D20220101-20221231" decimals="-3" name="us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzQtMy0xLTEtNjM4ODc_2eb2a2ca-7764-4c99-937c-a5eb4e6e117e">1,512</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="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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i3e48d85ced0f4198be5b279ed3c2cf71_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzQtNC0xLTEtNjM4ODc_f3a7fa02-6d43-4d78-ab3d-e287ac5458be">21,520</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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i74896465ad134617a3231a0dfd645b1b_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzQtNi0xLTEtNjM4ODc_a27bc52b-70ac-4450-9519-f033644f4061">15,800</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="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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if09a329cb8e041c8a3f68e4b233cb55b_D20210101-20211231" decimals="-3" name="us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzQtNy0xLTEtNjM4ODc_4a702e54-f727-4241-8742-2d1652317440">&#8212;</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="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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i57ec737b772646548585c2aeb7dac3ff_D20210101-20211231" decimals="-3" name="us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzQtOC0xLTEtNjM4ODc_8d52bd83-8676-4e0f-a2df-e8b1942a5857">7,984</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="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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i94acb5b8cf414532a2b46fc4de433694_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzQtOS0xLTEtNjM4ODc_a0a10723-e968-4375-a3ab-7b042c4f1743">7,816</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:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Amounts reclassified from accumulated other comprehensive loss</span></td><td colspan="2" style="background-color:#def3c0;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="i16b0080a3731492cbc6a4d1595ee7cfc_D20220101-20221231" decimals="-3" name="us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzUtMS0xLTEtNjM4ODc_3f4a8493-2045-46d8-8adb-d1fbd34c4019">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#def3c0;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="i597d4799d22b481eadba8771012e4440_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzUtMi0xLTEtNjM4ODc_34dd29c1-64b1-4a66-a53f-32ec4a9801cb">1,707</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#def3c0;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="i705d2dd97b5e442a82aac45bb61c9788_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzUtMy0xLTEtNjM4ODc_75bd1420-2730-4209-aad0-14a8eef62ee1">535</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#def3c0;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="i3e48d85ced0f4198be5b279ed3c2cf71_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzUtNC0xLTEtNjM4ODc_a8db7970-4899-453c-82f2-fd26528c4add">2,242</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;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="i74896465ad134617a3231a0dfd645b1b_D20210101-20211231" decimals="-3" name="us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzUtNi0xLTEtNjM4ODc_c5f127ee-063a-4840-9106-d972d9f4c875">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#def3c0;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="if09a329cb8e041c8a3f68e4b233cb55b_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzUtNy0xLTEtNjM4ODc_208209ac-49f3-4b9f-9593-49b320e03bf5">1,838</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#def3c0;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="i57ec737b772646548585c2aeb7dac3ff_D20210101-20211231" decimals="-3" name="us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzUtOC0xLTEtNjM4ODc_c7d50160-a877-4dc7-8869-ddcbcea2cc98">2,686</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#def3c0;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="i94acb5b8cf414532a2b46fc4de433694_D20210101-20211231" decimals="-3" name="us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzUtOS0xLTEtNjM4ODc_f41c5c15-955b-433b-afcd-088b847c628c">848</ix:nonFraction>)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other comprehensive   income (loss)</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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i16b0080a3731492cbc6a4d1595ee7cfc_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzYtMS0xLTEtNjM4ODc_a6739dae-9b2e-423b-91fd-7671250f3c8a">23,032</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="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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i597d4799d22b481eadba8771012e4440_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzYtMi0xLTEtNjM4ODc_fe3186d7-2d8e-47ef-9e9f-61574bb8b284">1,707</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="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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i705d2dd97b5e442a82aac45bb61c9788_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzYtMy0xLTEtNjM4ODc_c0751cdb-124d-42dc-a025-c4e7429e2857">2,047</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="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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i3e48d85ced0f4198be5b279ed3c2cf71_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzYtNC0xLTEtNjM4ODc_01c41bf3-40d0-44a8-8ab8-8c90145e6240">19,278</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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i74896465ad134617a3231a0dfd645b1b_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzYtNi0xLTEtNjM4ODc_a5ec6276-699a-4dcb-a4a8-e69b26a7bac4">15,800</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="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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if09a329cb8e041c8a3f68e4b233cb55b_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzYtNy0xLTEtNjM4ODc_2367164f-b08e-4905-90c7-762adf59f819">1,838</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="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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i57ec737b772646548585c2aeb7dac3ff_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzYtOC0xLTEtNjM4ODc_5190f1df-97bd-41de-9220-d2021f8d0221">5,298</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="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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i94acb5b8cf414532a2b46fc4de433694_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzYtOS0xLTEtNjM4ODc_54596ebb-38ab-43a9-a26d-dd76a2969f85">8,664</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:#def3c0;border-bottom:2pt solid #000;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:9pt;font-weight:400;line-height:100%">Balance as of end of period</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ibe07099a56ec451ea3c3df07c8ba0637_I20221231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzctMS0xLTEtNjM4ODc_c173503f-fe55-406a-a7a5-586c117119a1">65,429</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i00b76891fb64454ba15460dfe356b096_I20221231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzctMi0xLTEtNjM4ODc_c5ad3c25-1fca-45a6-a5e2-ee1373e106c8">3,310</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2dcafeb637cf429d913083467d301fac_I20221231" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzctMy0xLTEtNjM4ODc_f2ea3839-9c90-4d83-9cec-4eab1485f116">471</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib613492db2fd4fb0b699d97c44b617be_I20221231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzctNC0xLTEtNjM4ODc_d9925513-0538-4805-b83f-777d4d309416">68,268</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i868c73b3d06b44ec92617f0666dc7ce7_I20211231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzctNi0xLTEtNjM4ODc_fec20b8a-fe8a-4998-a27b-d4cc3f7e9573">42,397</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6e8112f8e8a34e919c3bd3d5a628619d_I20211231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzctNy0xLTEtNjM4ODc_93dcf73d-81cc-4dce-801e-12bef6769357">5,017</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ie3923a67e5f64f98a807cc1d853fc5e2_I20211231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzctOC0xLTEtNjM4ODc_507d9390-2ff2-45e1-ae19-15ea7502a08e">1,576</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i3114f6dde5534997ba147bf29b5ba918_I20211231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzctOS0xLTEtNjM4ODc_51752c9b-ab6a-415c-a594-bf403630d37e">48,990</ix:nonFraction>)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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></tr></table></div></ix:nonNumeric></ix:continuation><div><span><br/></span></div><div><span><br/></span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_184"></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">20. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="alg:InternationalOperationsAndGeographicInformationTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90ZXh0cmVnaW9uOmI2MWQ0NzZhODE4NjQyYzk5ZjMzODliMDZiZmU3MWRjXzQxNA_4bc110f9-3b16-4e20-b6f5-496e84c99d26" continuedAt="i877e8bca639440198b3ff7cba7aeef48" escape="true">INTERNATIONAL OPERATIONS AND GEOGRAPHIC INFORMATION</ix:nonNumeric></span></div><ix:continuation id="i877e8bca639440198b3ff7cba7aeef48" continuedAt="i23057b4497684b7d8c78dda0da9a121c"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90ZXh0cmVnaW9uOmI2MWQ0NzZhODE4NjQyYzk5ZjMzODliMDZiZmU3MWRjXzQxNw_6e4bae8c-c6c6-4b86-bb2d-bce7d7f0e9c0" escape="true"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Following is selected financial information on the Company&#8217;s international operations, which include the United Kingdom, France, Netherlands, Canada, Brazil, and Australia:</span><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:58.402%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.718%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.554%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.554%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.161%"></td><td style="width:0.1%"></td></tr><tr><td colspan="18" style="border-bottom: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:100%">International Operations Financial Information</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="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:middle"><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="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:middle"><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="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net sales</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if0ccda55f2d64fc59a818cd96115d9b6_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzMtMS0xLTEtNjM4ODc_ef1de808-03f8-4eea-af4b-52acfb05be2a">420,678</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i657c47e3fca548cc9bd4932795340ed6_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzMtMy0xLTEtNjM4ODc_f3cf7678-95cf-4ae0-933d-5d37201fbc94">363,339</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if56db49f517e4c219c53e22f549c5e51_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzMtNS0xLTEtNjM4ODc_6676cd26-f374-4c69-a3f3-b6b71a1ce50f">312,462</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income from operations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if0ccda55f2d64fc59a818cd96115d9b6_D20220101-20221231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzQtMS0xLTEtNjM4ODc_3e64e3a9-f9ba-4904-b299-896a89721f07">48,893</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i657c47e3fca548cc9bd4932795340ed6_D20210101-20211231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzQtMy0xLTEtNjM4ODc_3fceb526-2b51-4490-9e50-c747a59aa99b">34,561</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if56db49f517e4c219c53e22f549c5e51_D20200101-20201231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzQtNS0xLTEtNjM4ODc_195f4a2e-a56b-492b-89a0-3193ac2baa3c">31,166</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income before income taxes</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if0ccda55f2d64fc59a818cd96115d9b6_D20220101-20221231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzUtMS0xLTEtNjM4ODc_e3188cbb-7843-474b-a7e9-235513bc1b53">51,206</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i657c47e3fca548cc9bd4932795340ed6_D20210101-20211231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzUtMy0xLTEtNjM4ODc_e45af32d-79d2-4120-8c39-1b5565d41c28">37,051</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if56db49f517e4c219c53e22f549c5e51_D20200101-20201231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzUtNS0xLTEtNjM4ODc_3a89f532-5eda-4aca-b726-18eddb356795">30,674</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Identifiable assets</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i64a51b62ddf249588a55692f07e10ab7_I20221231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzYtMS0xLTEtNjM4ODc_99933cb4-c016-4792-a1a0-90ad2e3c7643">364,752</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9d119f114b064384b061dabb8264383f_I20211231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzYtMy0xLTEtNjM4ODc_80e1826d-e4c2-430f-9f8b-3e6be5601ddc">352,187</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idf164495df244f839eada511e8dd6586_I20201231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzYtNS0xLTEtNjM4ODc_0f6dc391-3410-4cad-a8d8-371882fb089f">304,536</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr></table></ix:nonNumeric></div></ix:continuation><div style="text-align:center"><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:'Times New Roman',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><span><br/></span></div></div><ix:continuation id="i23057b4497684b7d8c78dda0da9a121c"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;<ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90ZXh0cmVnaW9uOmI2MWQ0NzZhODE4NjQyYzk5ZjMzODliMDZiZmU3MWRjXzQxOQ_8c1ec58c-e862-4954-b1ea-6edc39050004" continuedAt="i17abef8f44854702b9a4fe2ae32f5381" escape="true">Following is other selected geographic financial information on the Company&#8217;s operations:</ix:nonNumeric></span></div><div style="text-align:center"><ix:continuation id="i17abef8f44854702b9a4fe2ae32f5381"><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:52.993%"></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:1.0%"></td><td style="width:2.554%"></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:1.0%"></td><td style="width:2.554%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.769%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="18" style="border-bottom:1pt solid #000;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%">Geographic Financial Information</span></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="15" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</span></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="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:middle"><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="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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="6" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Geographic net sales:</span></div></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United States</span></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27471c6e5587400a91198519e9ea07aa_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzQtMS0xLTEtNjM4ODc_59df8f2a-9f38-4704-8f9e-ba37775c8a4c">1,080,893</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i540db814e238418581c3f762143bc4e6_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzQtMy0xLTEtNjM4ODc_aec221ef-0fc2-46ac-9262-d4c7a41f9d66">953,024</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifa0aa1dba5c341f6875d02c968bfe5e8_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzQtNS0xLTEtNjM4ODc_1ed973eb-3384-4f9a-8201-3f4da4b042c4">862,430</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">France</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i97b432e0e60f4c4abe6ff31d739da965_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzUtMS0xLTEtNjM4ODc_ad962448-7f62-4ec1-a590-f55a97b3f8e9">89,629</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i387d5202ed4f493c92b10a38acfc0b36_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzUtMy0xLTEtNjM4ODc_0868be97-6661-4b11-bb10-87fc2238c4d7">92,052</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib71436cd32294b8595608c3e5043c8c2_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzUtNS0xLTEtNjM4ODc_ceaf7baa-a0ee-40b1-a14b-dd3c22b33947">81,259</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Canada</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i42e1c84b9e45497590a00b266e94b06e_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzYtMS0xLTEtNjM4ODc_a56ff490-1fa7-4b02-b064-c6008abb855d">95,799</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic355ca56aac34b6e89fc7f98a82d288f_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzYtMy0xLTEtNjM4ODc_9144346e-ff41-484e-9629-8d728e98f18b">83,392</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie123409994a748808eacb45425e4b967_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzYtNS0xLTEtNjM4ODc_9c141218-b970-4c9a-8d5f-0f6c75c44ce2">65,313</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United Kingdom</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i85955310584d4321b4909f4e78a6509e_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzctMS0xLTEtNjM4ODc_4d7c1944-15a0-40fc-8919-f75028240cd7">69,454</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie1a85fd409714c4680d0fdcd8133c6b0_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzctMy0xLTEtNjM4ODc_d0fe8d14-6e33-459b-9dd9-27214ddea7d6">57,386</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0571d0adc93a4f6c8577463a7d1271d5_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzctNS0xLTEtNjM4ODc_ce5e887d-2ed1-4f1d-bede-2ec7192a3bb1">47,757</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Brazil</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3424c8734bc247d283d8f7ee9792d969_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzgtMS0xLTEtNjM4ODc_28fe9bf5-0bce-49d0-ab36-30ad8b4b1390">46,841</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1df704cb487d433988240110ffba9b79_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzgtMy0xLTEtNjM4ODc_f81cc094-dd3c-409c-a724-c9f3e38bddaa">31,365</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e1592132841419194fd5c912083d08e_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzgtNS0xLTEtNjM4ODc_696dd941-b365-44b7-ac86-ca1b5372f566">16,592</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Netherlands</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8dcb828e9ef04159bf1cadd45d580f2a_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzktMS0xLTEtNjM4ODc_87397cef-7f96-416e-9e2c-9c86ad10bb6c">23,304</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie72b110c451b4574a22c4449e0e6adfb_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzktMy0xLTEtNjM4ODc_bb4f7397-c634-404e-aaa6-d4d68ad4cf57">27,964</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id80ed00b297a4ecb99ebab3fe9226c6f_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzktNS0xLTEtNjM4ODc_316e7c24-82d0-4399-9969-7a99c1df75b9">23,946</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Germany</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i20cf1c9a27114877bc07026ffc45e8aa_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzExLTEtMS0xLTYzODg3_9ad09aef-6fd2-4f93-8083-93b0fd27a844">9,115</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i34f6b1648a164da3931c00b818f528a3_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzExLTMtMS0xLTYzODg3_a8de4022-e26e-446e-8b0c-da96a7af947b">8,977</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib488cce901db40c98e68a90787544861_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzExLTUtMS0xLTYzODg3_5a8e11a2-fc66-4f25-a5ba-c828b9288843">9,328</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Australia</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6483ee4d964b415286f91bb91c2908bc_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzEyLTEtMS0xLTYzODg3_e62678f3-2411-4fe4-9874-989b13923a64">26,117</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i92389c884a274e0fb3bbb45ba068f944_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzEyLTMtMS0xLTYzODg3_768854d5-8a8d-4aea-a5e6-ed6b34e1cbda">20,980</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7132ad0daa6c45729c5b3891a5968b1b_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzEyLTUtMS0xLTYzODg3_7403f54c-3818-463d-a849-54f61ad72c6f">10,999</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie5fb7c0c4922417db62f771c171e679c_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzEzLTEtMS0xLTYzODg3_a1f36271-008e-469b-935e-c77666ddfaf6">72,464</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ida2174e360e645aeab3b8ebd578d38ad_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzEzLTMtMS0xLTYzODg3_431ce3c1-b667-405c-bb68-8de087b633ab">59,083</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4de62983acdb4ec2bea2b8407cda05ae_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzEzLTUtMS0xLTYzODg3_b613d77d-1a40-4e88-a669-288b68d8db59">45,842</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total net sales</span></td><td style="border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE0LTEtMS0xLTYzODg3_281e6d43-4c63-4ac5-813f-76d228f2f4c0">1,513,616</ix:nonFraction>&#160;</span></td><td style="border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE0LTMtMS0xLTYzODg3_e13b821c-1f8f-41b2-ba16-6adf157cf02a">1,334,223</ix:nonFraction>&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE0LTUtMS0xLTYzODg3_38ca3562-bcef-479c-afc6-361460412720">1,163,466</ix:nonFraction>&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="6" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Geographic location of long-lived assets:</span></div></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United States</span></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i53e4684044224871825bd23aac41aee3_I20221231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE2LTEtMS0xLTYzODg3_9c4276f4-862d-420b-b8ca-b17cc6237fae">457,075</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic1938ea617ca4f769c724f1a08e7efc5_I20211231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE2LTMtMS0xLTYzODg3_0bcca939-8eeb-4b47-ac1e-00ac80a7b369">461,341</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i529fcaeebb904bfdaccd9f21b05b0e4f_I20201231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE2LTUtMS0xLTYzODg3_4c01cd96-de2b-4fb3-8500-d7df5f9caa8d">480,940</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Netherlands</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if0925a1305784f729e9e56ed2c280661_I20221231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE3LTEtMS0xLTYzODg3_7e999960-4cc4-4c30-aa9d-81e77d25acc4">28,428</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i716dd7aefb954ba687184e1292435465_I20211231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE3LTMtMS0xLTYzODg3_f7cef366-6851-4fc1-87cb-0003e672844e">32,262</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i90f80b354e6b42c5867a327caee24eeb_I20201231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE3LTUtMS0xLTYzODg3_193171fe-5b10-455f-86cb-40a95161b86b">39,063</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Canada</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id383d018a3be4e749d23a3a0666ec989_I20221231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE4LTEtMS0xLTYzODg3_e6727438-b692-48bf-b6a1-66af3f678763">32,165</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1df499325fc7423da4f6d70c56f75ed0_I20211231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE4LTMtMS0xLTYzODg3_335f483f-a27c-46fe-a209-127eb05ee627">32,132</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1277e58dd79a4c2aa8489ce10cc1192f_I20201231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE4LTUtMS0xLTYzODg3_6e4c8d44-377a-4cfb-b28a-ed7d0503045f">33,573</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United Kingdom</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1095a338cfa94c2ba6be5ecdea6f7482_I20221231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE5LTEtMS0xLTYzODg3_8fd73150-34de-4523-ab5c-4e6f98f37ab9">31,767</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i38a74560d41841908eb8dbfab7583864_I20211231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE5LTMtMS0xLTYzODg3_0526287d-73d6-4c23-ae6c-2e18c2e913b6">36,569</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibbc431a0d48c46c4a814fbc93cceeb31_I20201231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE5LTUtMS0xLTYzODg3_da7647b0-5c51-40e2-9e42-c7f12748a164">18,843</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">France</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie9268b6721bf4d8e950f2c25210811a8_I20221231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIwLTEtMS0xLTYzODg3_e43938a7-c575-468d-9dc7-eb1d9e237843">18,728</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i30d5ea028fb64ee68f0494c440e4ba4c_I20211231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIwLTMtMS0xLTYzODg3_cfd3c60e-e75d-4c87-8371-3233f1ed70a8">19,781</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e092c63d696456a996e87a4b51deb04_I20201231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIwLTUtMS0xLTYzODg3_9f8668d3-be6e-416d-a00e-6cc65f0df6e3">21,033</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Brazil</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia3f71003335d424d971f475b80df2fdb_I20221231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIxLTEtMS0xLTYzODg3_1942d79c-36d5-4a5b-9fd0-7b75d41515d8">12,175</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic8f310366b2e444580858a4737d3b4c8_I20211231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIxLTMtMS0xLTYzODg3_df6ffb03-fd74-4ca2-87e9-31f42c67142d">10,408</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8247765dd22e46fe94b851d92480a16a_I20201231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIxLTUtMS0xLTYzODg3_8f8401d6-641b-41bd-8fff-9c7bf090874a">11,123</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Australia</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie201b7fa6daa4f13bb7cc014f2d19f4e_I20221231" decimals="-3" name="us-gaap:NoncurrentAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIyLTEtMS0xLTYzODg3_35b7e016-fadf-463b-a3c8-cbec529fda27">670</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4570f6a699a4f929c9daba151473653_I20211231" decimals="-3" name="us-gaap:NoncurrentAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIyLTMtMS0xLTYzODg3_71fc5e63-8c41-40f3-b8d2-9dd298350021">790</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1da150c7a78f400cb9f3b178d73ed207_I20201231" decimals="-3" name="us-gaap:NoncurrentAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIyLTUtMS0xLTYzODg3_abe0d54f-5903-450c-a5f4-e469e24cb832">964</ix:nonFraction>&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total long-lived assets</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIzLTEtMS0xLTYzODg3_b0355b1f-7384-4795-a20c-448a00d6ab19">581,008</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIzLTMtMS0xLTYzODg3_b309362f-8d89-4194-b294-08f1cc66dbf1">593,283</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5d74fc3138934e70861715f06fa062c7_I20201231" decimals="-3" name="us-gaap:NoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIzLTUtMS0xLTYzODg3_a679e2aa-28e8-4a0f-a80c-1cb9659fefe1">605,539</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="display:none"></td></tr></table></ix:continuation></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Net sales are attributed to countries based on the location of customers.</span></div></ix:continuation><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div id="i51762c1e0d7f47aeb6d24f3a0d19ea64_187"></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">21. <ix:nonNumeric contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODcvZnJhZzpjYTQ2NWRkYzRmZWE0ZGI1YTk0N2FjNzNkN2RiYTJjMy90ZXh0cmVnaW9uOmNhNDY1ZGRjNGZlYTRkYjVhOTQ3YWM3M2Q3ZGJhMmMzXzE2MTg_28bd1a82-88db-4e25-b215-2a459b8f493c" continuedAt="i71b54dee2f754ec68b31327f40396134" escape="true">COMMITMENTS AND CONTINGENCIES</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="i71b54dee2f754ec68b31327f40396134"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is subject to various unresolved legal actions that arise in the ordinary course of its business.  The most significant of such actions relates to product liability, which is generally covered by insurance after various self-insured retention amounts. While amounts claimed might be substantial and the liability with respect to such litigation cannot be determined at this time, the Company believes that the outcome of these matters will not have a material adverse effect on the Company&#8217;s consolidated financial position or results of operations; however, the ultimate resolution cannot be determined at this time. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Also, like other manufacturers, the Company is subject to a broad range of federal, state, local and foreign laws and requirements, including those concerning air emissions, discharges into waterways, and the generation, handling, storage, transportation, treatment and disposal of hazardous substances and waste materials, as well as the remediation of contamination associated with releases of hazardous substances at the Company&#8217;s facilities and off-site disposal locations, workplace safety and equal employment opportunities. These laws and regulations are constantly changing, and it is impossible to predict with accuracy the effect that changes to such laws and regulations may have on the Company in the future. Like other industrial concerns, the Company&#8217;s manufacturing operations entail the risk of noncompliance, and there can be no assurance that the Company will not incur material costs or other liabilities as a result thereof.</span></div></ix:continuation><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">79</span></div></div></div></body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-21.1
<SEQUENCE>2
<FILENAME>a202210kex211.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="i53fed6f9c16747c2bc7eb8087c121f55_1"></div><div style="min-height:45pt;width:100%"><div><font><br></font></div></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%;text-decoration:underline">Exhibit 21.1</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">SUBSIDIARIES OF ALAMO GROUP INC.</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;</font><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:78.216%"><tr><td style="width:1.0%"></td><td style="width:3.759%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:55.348%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.563%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:29.930%"></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"><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">&#160;</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline">Name</font></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Jurisdiction</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline">of Incorporation</font></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"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Alamo Group (USA) Inc. (1)</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:8pt;font-weight:400;line-height:100%">Delaware</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%">Alamo Group Europe Limited (1)</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:8pt;font-weight:400;line-height:100%">United Kingdom</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%">Alamo Group (Canada) Inc. (1)</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:8pt;font-weight:400;line-height:100%">New Brunswick</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%">Alamo Group Brazil I, Inc. (1)</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:8pt;font-weight:400;line-height:100%">Delaware</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%">Alamo Group Brazil II, Inc. (1)</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:8pt;font-weight:400;line-height:100%">Delaware</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%">Alamo Group Texas LLC (2)</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:8pt;font-weight:400;line-height:100%">Texas</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%">Alamo Group Management Inc. (2)</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:8pt;font-weight:400;line-height:100%">Texas</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%">Bush Hog LLC (2)</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:8pt;font-weight:400;line-height:100%">Delaware</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%">Gradall Industries LLC (2)</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:8pt;font-weight:400;line-height:100%">Delaware</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%">Henke Manufacturing LLC  (2)</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:8pt;font-weight:400;line-height:100%">Kansas</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%">Herschel Parts, Inc. (2)</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:8pt;font-weight:400;line-height:100%">Nevada</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%">Howard P. Fairfield LLC (2)</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:8pt;font-weight:400;line-height:100%">Delaware</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%">Morbark, LLC (15)</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:8pt;font-weight:400;line-height:100%">Michigan</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%">Nite-Hawk Sweepers, LLC (2)</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:8pt;font-weight:400;line-height:100%">Washington</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%">Old Dominion Brush Company LLC (2)</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:8pt;font-weight:400;line-height:100%">Delaware</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%">RhinoAg LLC (2)</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:8pt;font-weight:400;line-height:100%">Delaware</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%">Schulte (USA) LLC (2)</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:8pt;font-weight:400;line-height:100%">Florida</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%">Schwarze Industries Australia PTY Ltd. (3)</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:8pt;font-weight:400;line-height:100%">Australia</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%">Schwarze Industries LLC (2)</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:8pt;font-weight:400;line-height:100%">Alabama</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%">Super Products LLC (2)</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:8pt;font-weight:400;line-height:100%">Delaware</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%">Tenco Industries Inc. (2)</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:8pt;font-weight:400;line-height:100%">Delaware</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%">Tiger Mowers LLC  (2)</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:8pt;font-weight:400;line-height:100%">Nevada</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%">Wausau Equipment Company LLC  (2)</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:8pt;font-weight:400;line-height:100%">Delaware</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%">ALG (HK) Limited (2)</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:8pt;font-weight:400;line-height:100%">Hong Kong</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%">ALG (Beijing) Trading Co. Ltd. (9)</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:8pt;font-weight:400;line-height:100%">China</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%">Bomford Turner Limited (4)</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:8pt;font-weight:400;line-height:100%">United Kingdom</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%">Bomford &#38; Evershed Ltd. (5)</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:8pt;font-weight:400;line-height:100%">United Kingdom</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%">Bomford Turner (1954) Limited. (5)</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:8pt;font-weight:400;line-height:100%">United Kingdom</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%">Kellands Agricultural Ltd. (4)</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:8pt;font-weight:400;line-height:100%">United Kingdom</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%">McConnel Ltd. (4)</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:8pt;font-weight:400;line-height:100%">United Kingdom</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%">Spearhead Machinery Ltd. (4)</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:8pt;font-weight:400;line-height:100%">United Kingdom</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%">Timberwolf Limited (4)</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:8pt;font-weight:400;line-height:100%">United Kingdom</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%">Turner International (ENG) Ltd. (5)</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:8pt;font-weight:400;line-height:100%">United Kingdom</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%">Twose of Tiverton Ltd. (5)</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:8pt;font-weight:400;line-height:100%">United Kingdom</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%">Alamo Group (FR) SAS (4)</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:8pt;font-weight:400;line-height:100%">France</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%">SMA Faucheux SAS (6)</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:8pt;font-weight:400;line-height:100%">France</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%">Forges Gorce SAS (6)</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:8pt;font-weight:400;line-height:100%">France</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%">Rivard SAS (6)</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:8pt;font-weight:400;line-height:100%">France</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%">Alamo Group Agriculture France (6)</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:8pt;font-weight:400;line-height:100%">France</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%">ALSA Alamo Legal Services and Advice (6)</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:8pt;font-weight:400;line-height:100%">France</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%">Schulte Industries Ltd. (7)</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:8pt;font-weight:400;line-height:100%">New Brunswick</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%">Tenco Inc. (7)</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:8pt;font-weight:400;line-height:100%">New Brunswick</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%">Everest Equipment Co. (7)</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:8pt;font-weight:400;line-height:100%">Nova Scotia</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%">Fieldquip PTY Ltd. (10)</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:8pt;font-weight:400;line-height:100%">Australia</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%">Herder Implementos e Maquinas Agricolas Ltda. (12)</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:8pt;font-weight:400;line-height:100%">Brazil</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%">Santa Izabel Agro Industria Ltda. (11)</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:8pt;font-weight:400;line-height:100%">Brazil</font></td></tr></table></div><div style="height:27pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><hr style="page-break-after:always"><div style="min-height:45pt;width:100%"><div><font><br></font></div></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:78.216%"><tr><td style="width:1.0%"></td><td style="width:3.759%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:55.348%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.563%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:29.930%"></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"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Alamo Group The Netherlands Holding B.V. (4)</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:8pt;font-weight:400;line-height:100%">The Netherlands</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%">Alamo Group The Netherlands Giessen B.V. (13)</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:8pt;font-weight:400;line-height:100%">The Netherlands</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%">Alamo Group The Netherlands Middelburg  B.V.. (13)</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:8pt;font-weight:400;line-height:100%">The Netherlands</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%">Roberine B.V. (13)</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:8pt;font-weight:400;line-height:100%">The Netherlands</font></td></tr></table></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">_____________________</font><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:90.497%"><tr><td style="width:1.0%"></td><td style="width:12.793%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.900%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:67.236%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.571%"></td><td style="width:0.1%"></td></tr><tr><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1)</font></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100% owned by Alamo Group Inc.</font></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(2)</font></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100% owned by Alamo Group (USA) Inc.</font></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(3)</font></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100% owned by Schwarze Industries, Inc.</font></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(4)</font></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100% owned by Alamo Group (Europe) Limited</font></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(5)</font></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100% owned by Bomford Turner Limited</font></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(6)</font></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100% owned by Alamo Group (FR) SAS</font></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(7)</font></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100% owned by Alamo Group (Canada) Inc.</font></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(8)</font></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100% owned by SMA SAS</font></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(9)</font></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100% owned by ALG (HK) Limited</font></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(10)</font></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100% owned by Schwarze Industries Australia PTY Ltd.</font></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(11)</font></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;90% owned by Alamo Group Brazil I, Inc.</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;10% owned by Alamo Group Brazil II, Inc.</font></div></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(12)</font></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">99.99% owned by Santa Izabel Agro Industria Ltda.<br>00.01% owned by Brazil 1, Inc.</font></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(13)</font></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">100% owned by Alamo Group The Netherlands Holding B.V.</font></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div style="text-align:right"><font><br></font></div><div style="height:27pt;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>3
<FILENAME>a202210kex231.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="i886e452f8fc544d28b69950b4d4b4d25_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%;text-decoration:underline">Exhibit 23.1</font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</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:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</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%">&#160;</font></div><div><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 registration statement (No. 333-180049) on Form S-3 and registration statements (Nos. 333-231205, 333-204169, 333-174755, 333-143216, and 333-88454) on Form S-8 of our reports dated February 23, 2023, with respect to the consolidated financial statements of Alamo Group Inc. and the effectiveness of internal control over financial reporting.</font></div><div><font><br></font></div><div><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:48.900%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:48.900%"></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:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; KPMG LLP</font></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%">San Antonio, Texas</font></td><td colspan="3" style="padding:0 1pt"></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%">February 23, 2023</font></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div style="margin-bottom:10pt;text-align:justify"><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-31.1
<SEQUENCE>4
<FILENAME>a202210kex311.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="idfeca894b8184922a7593967f7b72a28_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%;text-decoration:underline">Exhibit 31.1</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">I, Jeffery A. Leonard, certify that&#58;</font></div><div><font><br></font></div><div style="padding-left:36pt"><font><br></font></div><div style="padding-left:36pt;text-indent:-18pt"><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:9.67pt">I have reviewed this annual report on Form 10-K of Alamo Group Inc&#59;</font></div><div><font><br></font></div><div style="padding-left:36pt;text-indent:-18pt"><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:9.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><font><br></font></div><div style="padding-left:36pt;text-indent:-18pt"><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:9.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><font><br></font></div><div style="padding-left:36pt;text-indent:-18pt"><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:9.67pt">The registrant's other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have&#58;</font></div><div><font><br></font></div><div style="padding-left:72pt;text-indent:-18pt"><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:9.67pt">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="padding-left:72pt;text-indent:-18pt"><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:9.67pt">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="padding-left:72pt;text-indent:-18pt"><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:10.23pt">Evaluated the effectiveness of the registrant's disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation&#59; and</font></div><div style="padding-left:72pt;text-indent:-18pt"><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:9.67pt">Disclosed in this report any change in the registrant's internal control over financial reporting that occurred during the registrant's most recent fiscal quarter (the registrant's fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant's internal control over financial reporting&#59; and</font></div><div style="padding-left:36pt"><font><br></font></div><div style="padding-left:36pt;text-indent:-18pt"><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:9.67pt">The registrant's other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant's auditors and the audit committee of the registrant's board of directors (or persons performing the equivalent functions)&#58;</font></div><div style="padding-left:36pt"><font><br></font></div><div style="padding-left:72pt;text-indent:-18pt"><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:9.67pt">All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant's ability to record, process, summarize and report financial information&#59; and</font></div><div style="padding-left:72pt;text-indent:-18pt"><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:9.67pt">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant's internal control over financial reporting.</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%">&#160;</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%">&#160;</font><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:96.198%"><tr><td style="width:1.0%"></td><td style="width:50.267%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:31.726%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.707%"></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%">February 23, 2023</font></td><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%">&#47;s&#47;Jeffery A. Leonard</font></td><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%">&#160;</font></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%">&#160;</font></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Jeffery A. Leonard</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">President &#38; Chief Executive Officer</font></div></td><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%">&#160;</font></td></tr></table></div><div style="text-align:justify"><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-31.2
<SEQUENCE>5
<FILENAME>a202210kex312.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="i5677b132cffa48989307f1b0e1d83911_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%;text-decoration:underline">Exhibit 31.2</font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;&#160;</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">I, Richard J. Wehrle, certify that&#58;</font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</font></div><div style="padding-left:36pt;text-indent:-18pt"><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:9.67pt">I have reviewed this annual report on Form 10-K of Alamo Group Inc&#59;</font></div><div><font><br></font></div><div style="padding-left:36pt;text-indent:-18pt"><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:9.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><font><br></font></div><div style="padding-left:36pt;text-indent:-18pt"><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:9.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><font><br></font></div><div style="padding-left:36pt;text-indent:-18pt"><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:9.67pt">The registrant's other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have&#58;</font></div><div><font><br></font></div><div style="padding-left:72pt;text-indent:-18pt"><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:9.67pt">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="padding-left:72pt;text-indent:-18pt"><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:9.67pt">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="padding-left:72pt;text-indent:-18pt"><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:10.23pt">Evaluated the effectiveness of the registrant's disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation&#59; and</font></div><div style="padding-left:72pt;text-indent:-18pt"><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:9.67pt">Disclosed in this report any change in the registrant's internal control over financial reporting that occurred during the registrant's most recent fiscal quarter (the registrant's fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant's internal control over financial reporting&#59; and</font></div><div style="padding-left:72pt"><font><br></font></div><div style="padding-left:36pt;text-indent:-18pt"><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:9.67pt">The registrant's other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant's auditors and the audit committee of the registrant's board of directors (or persons performing the equivalent functions)&#58;</font></div><div style="padding-left:36pt"><font><br></font></div><div style="padding-left:72pt;text-indent:-18pt"><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:9.67pt">All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant's ability to record, process, summarize and report financial information&#59; and</font></div><div style="padding-left:72pt;text-indent:-18pt"><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:9.67pt">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant's internal control over financial reporting.</font></div><div style="padding-left:72pt"><font><br></font></div><div><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:48.900%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:45.967%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.733%"></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%">February 23, 2023</font></td><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%">&#47;s&#47;Richard J. Wehrle</font></td><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%">&#160;</font></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:12pt;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"><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Richard J. Wehrle</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Executive Vice President &#38; Chief Financial Officer</font></div></td><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%">&#160;</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-32.1
<SEQUENCE>6
<FILENAME>a202210kex321.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="i80d0c01c408d47a49ed6c8f9c1fea6a9_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%;text-decoration:underline">Exhibit 32.1</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%">&#160;</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%">CERTIFICATION PURSUANT TO</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%">18 U.S.C. SECTION 1350,</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%">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:700;line-height:120%">SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</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%">&#160;</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In connection with the Annual Report of Alamo Group Inc. (the &#8220;Company&#8221;) on Form 10-K for the period ended December&#160;31, 2022 as filed with the Securities and Exchange Commission on the date hereof (the &#8220;Report&#8221;), I, Jeffery A. Leonard, President &#38; Chief Executive Officer of the Company, certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that&#58;</font></div><div><font><br></font></div><div style="padding-left:18pt;text-indent:-18pt"><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:9.67pt">The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934 (15 U.S.C. 78m or 78o(d))&#59; and</font></div><div style="padding-left:18pt;text-indent:-18pt"><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:9.67pt">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 style="padding-left:36pt;text-align:justify"><font><br></font></div><div style="padding-left:36pt;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:48.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:37.813%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.355%"></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%">February 23, 2023</font></td><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%">&#47;s&#47;Jeffery A. Leonard</font></td><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%">&#160;</font></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:12pt;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"><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Jeffery A. Leonard</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">President &#38; Chief Executive Officer</font></div></td><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%">&#160;</font></td></tr></table></div><div style="padding-left:36pt;text-align:justify"><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.2
<SEQUENCE>7
<FILENAME>a202210kex322.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="i633cbf2cd5a1433ebb8f1d3ee0db7047_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%;text-decoration:underline">Exhibit 32.2</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</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%">CERTIFICATION PURSUANT TO</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%">18 U.S.C. SECTION 1350,</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%">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:700;line-height:120%">SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</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%">&#160;</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%">&#160;</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In connection with the Annual Report of Alamo Group Inc. (the &#8220;Company&#8221;) on Form 10-K for the period ended December&#160;31, 2022 as filed with the Securities and Exchange Commission on the date hereof (the &#8220;Report&#8221;), I, Richard J. Wehrle, Executive Vice President &#38; Chief Financial Officer of the Company, certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that&#58;</font></div><div><font><br></font></div><div style="padding-left:18pt;text-indent:-18pt"><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:9.67pt">The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934 (15 U.S.C. 78m or 78o(d))&#59; and</font></div><div style="padding-left:18pt;text-indent:-18pt"><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:9.67pt">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><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:48.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:45.449%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.719%"></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%">February 23, 2023</font></td><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%">&#47;s&#47;Richard J. Wehrle</font></td><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%">&#160;</font></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:12pt;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"><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Richard J. Wehrle</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Executive Vice President &#38; Chief Financial Officer</font></div></td><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%">&#160;</font></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:12pt;font-weight:400;line-height:100%">&#160;</font></td><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%">(Principal Financial Officer)</font></td><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%">&#160;</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-101.SCH
<SEQUENCE>8
<FILENAME>alg-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:7e490c47-366a-4d14-b516-70bcfe20753e,g:370dcb37-b2fc-4837-9d03-6da297616798-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:alg="http://www.alamo-group.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.alamo-group.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/country/2022" schemaLocation="https://xbrl.sec.gov/country/2022/country-2022.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="alg-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="alg-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="alg-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="alg-20221231_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:type="simple"/>
      <link:roleType id="Cover" roleURI="http://www.alamo-group.com/role/Cover">
        <link:definition>0000001 - Document - Cover</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.alamo-group.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="ConsolidatedBalanceSheets" roleURI="http://www.alamo-group.com/role/ConsolidatedBalanceSheets">
        <link:definition>0000003 - 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.alamo-group.com/role/ConsolidatedBalanceSheetsParenthetical">
        <link:definition>0000004 - 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="ConsolidatedStatementsofIncome" roleURI="http://www.alamo-group.com/role/ConsolidatedStatementsofIncome">
        <link:definition>0000005 - Statement - Consolidated Statements of 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="ConsolidatedStatementsofComprehensiveIncome" roleURI="http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncome">
        <link:definition>0000006 - 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="ConsolidatedStatementsofComprehensiveIncomeParenthetical" roleURI="http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncomeParenthetical">
        <link:definition>0000007 - Statement - Consolidated Statements of Comprehensive Income (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="ConsolidatedStatementsofStockholdersEquity" roleURI="http://www.alamo-group.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.alamo-group.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="ConsolidatedStatementsofCashFlows" roleURI="http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows">
        <link:definition>0000010 - 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="SignificantAccountingPolicies" roleURI="http://www.alamo-group.com/role/SignificantAccountingPolicies">
        <link:definition>0000011 - Disclosure - 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="AccountingPronouncements" roleURI="http://www.alamo-group.com/role/AccountingPronouncements">
        <link:definition>0000012 - Disclosure - Accounting Pronouncements</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="BusinessCombinations" roleURI="http://www.alamo-group.com/role/BusinessCombinations">
        <link:definition>0000013 - Disclosure - Business Combinations</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.alamo-group.com/role/EarningsPerShare">
        <link:definition>0000014 - 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="ValuationandQualifyingAccounts" roleURI="http://www.alamo-group.com/role/ValuationandQualifyingAccounts">
        <link:definition>0000015 - Disclosure - Valuation and Qualifying Accounts</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.alamo-group.com/role/Inventories">
        <link:definition>0000016 - 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.alamo-group.com/role/PropertyPlantandEquipment">
        <link:definition>0000017 - 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="Goodwill" roleURI="http://www.alamo-group.com/role/Goodwill">
        <link:definition>0000018 - Disclosure - Goodwill</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="IntangibleAssets" roleURI="http://www.alamo-group.com/role/IntangibleAssets">
        <link:definition>0000019 - Disclosure - 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="Leases" roleURI="http://www.alamo-group.com/role/Leases">
        <link:definition>0000020 - 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="AccruedLiabilities" roleURI="http://www.alamo-group.com/role/AccruedLiabilities">
        <link:definition>0000021 - Disclosure - Accrued Liabilities</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="FairValueofFinancialInstruments" roleURI="http://www.alamo-group.com/role/FairValueofFinancialInstruments">
        <link:definition>0000022 - Disclosure - Fair Value of Financial Instruments</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="LongTermDebt" roleURI="http://www.alamo-group.com/role/LongTermDebt">
        <link:definition>0000023 - Disclosure - Long-Term Debt</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxes" roleURI="http://www.alamo-group.com/role/IncomeTaxes">
        <link:definition>0000024 - 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="CommonStock" roleURI="http://www.alamo-group.com/role/CommonStock">
        <link:definition>0000025 - Disclosure - Common Stock</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="StockOptions" roleURI="http://www.alamo-group.com/role/StockOptions">
        <link:definition>0000026 - Disclosure - Stock Options</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="RetirementBenefitPlans" roleURI="http://www.alamo-group.com/role/RetirementBenefitPlans">
        <link:definition>0000027 - Disclosure - Retirement Benefit Plans</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="RevenueandSegmentReporting" roleURI="http://www.alamo-group.com/role/RevenueandSegmentReporting">
        <link:definition>0000028 - Disclosure - Revenue and Segment Reporting</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="AccumulatedOtherComprehensiveLoss" roleURI="http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLoss">
        <link:definition>0000029 - Disclosure - Accumulated Other Comprehensive 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="InternationalOperationsandGeographicInformation" roleURI="http://www.alamo-group.com/role/InternationalOperationsandGeographicInformation">
        <link:definition>0000030 - Disclosure - International Operations and Geographic 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="CommitmentsandContingencies" roleURI="http://www.alamo-group.com/role/CommitmentsandContingencies">
        <link:definition>0000031 - 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="SignificantAccountingPoliciesPolicies" roleURI="http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies">
        <link:definition>0000032 - Disclosure - 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="SignificantAccountingPoliciesTables" roleURI="http://www.alamo-group.com/role/SignificantAccountingPoliciesTables">
        <link:definition>0000033 - Disclosure - 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="EarningsPerShareTables" roleURI="http://www.alamo-group.com/role/EarningsPerShareTables">
        <link:definition>0000034 - 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="ValuationandQualifyingAccountsTables" roleURI="http://www.alamo-group.com/role/ValuationandQualifyingAccountsTables">
        <link:definition>0000035 - Disclosure - Valuation and Qualifying Accounts (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.alamo-group.com/role/InventoriesTables">
        <link:definition>0000036 - 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.alamo-group.com/role/PropertyPlantandEquipmentTables">
        <link:definition>0000037 - 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="GoodwillTables" roleURI="http://www.alamo-group.com/role/GoodwillTables">
        <link:definition>0000038 - Disclosure - Goodwill (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="IntangibleAssetsTables" roleURI="http://www.alamo-group.com/role/IntangibleAssetsTables">
        <link:definition>0000039 - Disclosure - 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="LeasesTables" roleURI="http://www.alamo-group.com/role/LeasesTables">
        <link:definition>0000040 - 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="AccruedLiabilitiesTables" roleURI="http://www.alamo-group.com/role/AccruedLiabilitiesTables">
        <link:definition>0000041 - Disclosure - Accrued Liabilities (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="LongTermDebtTables" roleURI="http://www.alamo-group.com/role/LongTermDebtTables">
        <link:definition>0000042 - Disclosure - Long-Term 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="IncomeTaxesTables" roleURI="http://www.alamo-group.com/role/IncomeTaxesTables">
        <link:definition>0000043 - 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="StockOptionsTables" roleURI="http://www.alamo-group.com/role/StockOptionsTables">
        <link:definition>0000044 - Disclosure - Stock Options (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="RetirementBenefitPlansTables" roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansTables">
        <link:definition>0000045 - Disclosure - Retirement Benefit Plans (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="RevenueandSegmentReportingTables" roleURI="http://www.alamo-group.com/role/RevenueandSegmentReportingTables">
        <link:definition>0000046 - Disclosure - Revenue and Segment Reporting (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="AccumulatedOtherComprehensiveLossTables" roleURI="http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossTables">
        <link:definition>0000047 - Disclosure - Accumulated Other Comprehensive 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="InternationalOperationsandGeographicInformationTables" roleURI="http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationTables">
        <link:definition>0000048 - Disclosure - International Operations and Geographic 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="SignificantAccountingPoliciesAdditionalInformationDetails" roleURI="http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails">
        <link:definition>0000049 - Disclosure - Significant Accounting Policies - Additional Information (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="SignificantAccountingPoliciesScheduleofFairValueAssumptionsandMethodologyDetails" roleURI="http://www.alamo-group.com/role/SignificantAccountingPoliciesScheduleofFairValueAssumptionsandMethodologyDetails">
        <link:definition>0000050 - Disclosure - Significant Accounting Policies - Schedule of Fair Value Assumptions and Methodology (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="BusinessCombinationsDetails" roleURI="http://www.alamo-group.com/role/BusinessCombinationsDetails">
        <link:definition>0000051 - Disclosure - Business Combinations (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="EarningsPerShareDetails" roleURI="http://www.alamo-group.com/role/EarningsPerShareDetails">
        <link:definition>0000052 - Disclosure - Earnings Per Share (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails" roleURI="http://www.alamo-group.com/role/ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails">
        <link:definition>0000053 - Disclosure - Valuation and Qualifying Accounts - Schedule of Valuation and Qualifying 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="ValuationandQualifyingAccountsAdditionalInformationDetails" roleURI="http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails">
        <link:definition>0000054 - Disclosure - Valuation and Qualifying Accounts - Additional Information (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="InventoriesScheduleofInventoryCurrentDetails" roleURI="http://www.alamo-group.com/role/InventoriesScheduleofInventoryCurrentDetails">
        <link:definition>0000055 - Disclosure - Inventories - Schedule of Inventory, Current (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.alamo-group.com/role/PropertyPlantandEquipmentDetails">
        <link:definition>0000056 - 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="GoodwillDetails" roleURI="http://www.alamo-group.com/role/GoodwillDetails">
        <link:definition>0000057 - Disclosure - 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="IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails" roleURI="http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails">
        <link:definition>0000058 - Disclosure - Intangible Assets - Schedule of Definite and Indefinite Lived 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="IntangibleAssetsAdditionalInformationDetails" roleURI="http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails">
        <link:definition>0000059 - Disclosure - Intangible Assets - Additional Information (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="LeasesLeaseCostDetails" roleURI="http://www.alamo-group.com/role/LeasesLeaseCostDetails">
        <link:definition>0000060 - Disclosure - Leases - Lease 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="LeasesMaturityScheduleDetails" roleURI="http://www.alamo-group.com/role/LeasesMaturityScheduleDetails">
        <link:definition>0000061 - Disclosure - Leases - Maturity Schedule (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="LeasesMaturityScheduleDetails_1" roleURI="http://www.alamo-group.com/role/LeasesMaturityScheduleDetails_1">
        <link:definition>0000061 - Disclosure - Leases - Maturity Schedule (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="LeasesAdditionalInformationDetails" roleURI="http://www.alamo-group.com/role/LeasesAdditionalInformationDetails">
        <link:definition>0000062 - Disclosure - Leases - Additional Information (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="LeasesSupplementalBalanceSheetInformationDetails" roleURI="http://www.alamo-group.com/role/LeasesSupplementalBalanceSheetInformationDetails">
        <link:definition>0000063 - Disclosure - Leases - Supplemental Balance Sheet Information (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="LeasesSupplementalCashFlowInformationDetails" roleURI="http://www.alamo-group.com/role/LeasesSupplementalCashFlowInformationDetails">
        <link:definition>0000064 - Disclosure - Leases - Supplemental Cash Flow Information (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="AccruedLiabilitiesDetails" roleURI="http://www.alamo-group.com/role/AccruedLiabilitiesDetails">
        <link:definition>0000065 - Disclosure - Accrued 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="LongTermDebtScheduleofLongTermDebtDetails" roleURI="http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails">
        <link:definition>0000066 - Disclosure - Long-Term 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="LongTermDebtAdditionalInformationDetails" roleURI="http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails">
        <link:definition>0000067 - Disclosure - Long-Term Debt - Additional Information (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="IncomeTaxesScheduleofIncomeLossbeforeProvisionforIncomeTaxesDetails" roleURI="http://www.alamo-group.com/role/IncomeTaxesScheduleofIncomeLossbeforeProvisionforIncomeTaxesDetails">
        <link:definition>0000068 - Disclosure - Income Taxes - Schedule of Income (Loss) before 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="IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails" roleURI="http://www.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails">
        <link:definition>0000069 - Disclosure - Income Taxes - Schedule of Components of Income Tax Expense (Benefit) (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="IncomeTaxesIncomeTaxReconciliationDetails" roleURI="http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails">
        <link:definition>0000070 - Disclosure - Income Taxes - Income Tax Reconciliation (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="IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails" roleURI="http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails">
        <link:definition>0000071 - Disclosure - Income Taxes - Schedule of Deferred Tax 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="IncomeTaxesAdditionalInformationDetails" roleURI="http://www.alamo-group.com/role/IncomeTaxesAdditionalInformationDetails">
        <link:definition>0000072 - Disclosure - Income Taxes - Additional Information (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="IncomeTaxesScheduleofUnrecognizedTaxBenefitsDetails" roleURI="http://www.alamo-group.com/role/IncomeTaxesScheduleofUnrecognizedTaxBenefitsDetails">
        <link:definition>0000073 - Disclosure - Income Taxes - Schedule of Unrecognized Tax Benefits (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="CommonStockDetails" roleURI="http://www.alamo-group.com/role/CommonStockDetails">
        <link:definition>0000074 - Disclosure - Common Stock (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="StockOptionsAdditionalInformationDetails" roleURI="http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails">
        <link:definition>0000075 - Disclosure - Stock Options - Additional Information (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="StockOptionsScheduleofQualifiedStockOptionActivityDetails" roleURI="http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails">
        <link:definition>0000076 - Disclosure - Stock Options - Schedule of Qualified Stock Option Activity (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="StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails" roleURI="http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails">
        <link:definition>0000077 - Disclosure - Stock Options - Schedule of Qualified Stock Options Outstanding and Exercisable (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="StockOptionsEquityIncentivePlanDetails" roleURI="http://www.alamo-group.com/role/StockOptionsEquityIncentivePlanDetails">
        <link:definition>0000078 - Disclosure - Stock Options - Equity Incentive 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="StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails" roleURI="http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails">
        <link:definition>0000079 - Disclosure - Stock Options - Schedule of Non-Qualified Stock Options Activity (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="StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails" roleURI="http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails">
        <link:definition>0000080 - Disclosure - Stock Options - Schedule of Non-Qualified Stock Options Outstanding and Exercisable (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="StockOptionsScheduleofRestrictedStockAwardActivityDetails" roleURI="http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails">
        <link:definition>0000081 - Disclosure - Stock Options - Schedule of Restricted Stock Award Activity (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="RetirementBenefitPlansAdditionalInformationDetails" roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails">
        <link:definition>0000082 - Disclosure - Retirement Benefit Plans - Additional Information (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="RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails" roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails">
        <link:definition>0000083 - Disclosure - Retirement Benefit Plans - Schedule of Defined Benefit Plans Disclosures (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="RetirementBenefitPlansScheduleofAssumptionsUsedDetails" roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofAssumptionsUsedDetails">
        <link:definition>0000084 - Disclosure - Retirement Benefit Plans - Schedule of Assumptions Used (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="RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails" roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails">
        <link:definition>0000085 - Disclosure - Retirement Benefit Plans - Schedule of Net Periodic 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="RetirementBenefitPlansWeightedAverageAssetAllocationsDetails" roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansWeightedAverageAssetAllocationsDetails">
        <link:definition>0000086 - Disclosure - Retirement Benefit Plans - Weighted Average Asset Allocations (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="RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails" roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails">
        <link:definition>0000087 - Disclosure - Retirement Benefit Plans - Schedule of Fair Value of Plan 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="RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails" roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails">
        <link:definition>0000088 - Disclosure - Retirement Benefit Plans - Schedule of Expected Benefit 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="RevenueandSegmentReportingScheduleofSegmentReportingDetails" roleURI="http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails">
        <link:definition>0000089 - Disclosure - Revenue and Segment Reporting - Schedule of Segment Reporting (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="RevenueandSegmentReportingAdditionalInformationDetails" roleURI="http://www.alamo-group.com/role/RevenueandSegmentReportingAdditionalInformationDetails">
        <link:definition>0000090 - Disclosure - Revenue and Segment Reporting - Additional Information (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="AccumulatedOtherComprehensiveLossDetails" roleURI="http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossDetails">
        <link:definition>0000091 - Disclosure - Accumulated Other Comprehensive 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="InternationalOperationsandGeographicInformationScheduleofInternationalOperationsDetails" roleURI="http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofInternationalOperationsDetails">
        <link:definition>0000092 - Disclosure - International Operations and Geographic Information - Schedule of International 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="InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails" roleURI="http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails">
        <link:definition>0000093 - Disclosure - International Operations and Geographic Information - Schedule of Selected Geographic Financial Information (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="alg_SharebasedCompensationAwardTrancheFiveMember" abstract="true" name="SharebasedCompensationAwardTrancheFiveMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_TwoZeroZeroNineEquityIncentivePlanMember" abstract="true" name="TwoZeroZeroNineEquityIncentivePlanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_LiabilityDrivenSolutionCITIMember" abstract="true" name="LiabilityDrivenSolutionCITIMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_NonQualifiedOptionsMember" abstract="true" name="NonQualifiedOptionsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_WellsFargoMFSValueCITFMember" abstract="true" name="WellsFargoMFSValueCITFMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember" abstract="true" name="WellsFargoTRowePriceILargeCapGrowthManagedCITMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_ProductWarrantyAccrualLagPeriod" abstract="false" name="ProductWarrantyAccrualLagPeriod" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="alg_AwardDateTwoMember" abstract="true" name="AwardDateTwoMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit" abstract="false" name="DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="alg_DefinedContributionPlanNumberOfPlans" abstract="false" name="DefinedContributionPlanNumberOfPlans" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="alg_ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation" abstract="false" name="ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="alg_AverageCommonSharesAbstract" abstract="true" name="AverageCommonSharesAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="alg_InternationalOperationsAndGeographicInformationTextBlock" abstract="false" name="InternationalOperationsAndGeographicInformationTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="alg_FormerEmployeesCoveredByPensionPlan" abstract="false" name="FormerEmployeesCoveredByPensionPlan" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="alg_PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption" abstract="false" name="PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="alg_IncomeTaxRateReconciliationForeignTaxExpense" abstract="false" name="IncomeTaxRateReconciliationForeignTaxExpense" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="alg_QualifiedStockOptionsExercisePriceRangeThreeMember" abstract="true" name="QualifiedStockOptionsExercisePriceRangeThreeMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_LiabilityDrivenSolutionCITIIMember" abstract="true" name="LiabilityDrivenSolutionCITIIMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_DeferredCompensationArrangementWithIndividualRetirementAge" abstract="false" name="DeferredCompensationArrangementWithIndividualRetirementAge" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="alg_LesseeOperatingLeaseLeaseNotYetCommencedAmount" abstract="false" name="LesseeOperatingLeaseLeaseNotYetCommencedAmount" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="alg_EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount" abstract="false" name="EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="alg_WellsFargoLargeCapGrowthIndexFundMember" abstract="true" name="WellsFargoLargeCapGrowthIndexFundMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent" abstract="false" name="EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="alg_WholegoodUnitsMember" abstract="true" name="WholegoodUnitsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_DebtInstrumentNumberOfCovenants" abstract="false" name="DebtInstrumentNumberOfCovenants" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="alg_EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount" abstract="false" name="EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="alg_TermFacilityMember" abstract="true" name="TermFacilityMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_IncreaseDecreaseInRentalEquipment" abstract="false" name="IncreaseDecreaseInRentalEquipment" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="alg_QualifiedStockOptionsExercisePriceRangeTwoMember" abstract="true" name="QualifiedStockOptionsExercisePriceRangeTwoMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_PartsMember" abstract="true" name="PartsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_InventoryUsagePeriod" abstract="false" name="InventoryUsagePeriod" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="alg_DefinedContributionPlanNumberOfSubsidiaries" abstract="false" name="DefinedContributionPlanNumberOfSubsidiaries" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="alg_IndustrialManagementMember" abstract="true" name="IndustrialManagementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_SharebasedCompensationAwardTrancheFourMember" abstract="true" name="SharebasedCompensationAwardTrancheFourMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_DeferredCompensationArrangementRequisiteServicePeriod" abstract="false" name="DeferredCompensationArrangementRequisiteServicePeriod" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="alg_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock" abstract="false" name="SupplementalCashFlowInformationRelatedToLeasesTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="alg_DeferredTaxAssetsLeaseLiability" abstract="false" name="DeferredTaxAssetsLeaseLiability" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017" abstract="false" name="IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="alg_QualifiedStockOptionsExercisePriceRangeOneMember" abstract="true" name="QualifiedStockOptionsExercisePriceRangeOneMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_TRowePriceEquityIncomeMember" abstract="true" name="TRowePriceEquityIncomeMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable" abstract="true" name="ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrldt:hypercubeItem" type="xbrli:stringItemType"/>
  <xs:element id="alg_WellsFargoStandardAndPoorsMidCapIndexFundMember" abstract="true" name="WellsFargoStandardAndPoorsMidCapIndexFundMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_ProductWarrantyPeriod" abstract="false" name="ProductWarrantyPeriod" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="alg_ProductWarrantyAccrualPeriodForSalesUsedInCalculation" abstract="false" name="ProductWarrantyAccrualPeriodForSalesUsedInCalculation" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="alg_RentalEquipmentNet" abstract="false" name="RentalEquipmentNet" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="alg_DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl" abstract="false" name="DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="alg_BushHogMember" abstract="true" name="BushHogMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_WellsFargoLargeCapValueIndexFundMember" abstract="true" name="WellsFargoLargeCapValueIndexFundMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems" abstract="true" name="ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="alg_AssetsAndLiabilitiesLesseeTableTextBlock" abstract="false" name="AssetsAndLiabilitiesLesseeTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="alg_WellsFargoVoyaLargeCapGrowthCITFMember" abstract="true" name="WellsFargoVoyaLargeCapGrowthCITFMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans" abstract="false" name="DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="alg_OtherGeographicalAreasMember" abstract="true" name="OtherGeographicalAreasMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary" abstract="false" name="TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="alg_InternationalMutualFundsMember" abstract="true" name="InternationalMutualFundsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_GradallCompanyEmployeesRetirementPlanMember" abstract="true" name="GradallCompanyEmployeesRetirementPlanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_DefinedBenefitPlanRetirementBenefitPercentage" abstract="false" name="DefinedBenefitPlanRetirementBenefitPercentage" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember" abstract="true" name="SecondAmendedAndRestatedRevolvingCreditAgreementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_CurrentEmployeesCoveredByPensionPlan" abstract="false" name="CurrentEmployeesCoveredByPensionPlan" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="alg_CashAndShortTermInvestmentsMember" abstract="true" name="CashAndShortTermInvestmentsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_MidCapMutualFundsMember" abstract="true" name="MidCapMutualFundsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_WellsFargoInternationalEquityIndexFundMember" abstract="true" name="WellsFargoInternationalEquityIndexFundMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_AuditInformationAbstract" abstract="true" name="AuditInformationAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="alg_AccountingPoliciesTable" abstract="true" name="AccountingPoliciesTable" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrldt:hypercubeItem" type="xbrli:stringItemType"/>
  <xs:element id="alg_InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember" abstract="true" name="InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_IncentiveStockOption2015PlanMember" abstract="true" name="IncentiveStockOption2015PlanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_InventoryReservePercentage" abstract="false" name="InventoryReservePercentage" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="alg_NonQualifiedStockOptionsExercisePriceRangeThreeMember" abstract="true" name="NonQualifiedStockOptionsExercisePriceRangeThreeMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock" abstract="false" name="RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember" abstract="true" name="WellsFargoRussellTwoZeroZeroZeroIndexFundMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_SECSchedule1209SalesDiscountsMember" abstract="true" name="SECSchedule1209SalesDiscountsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_DutchPowerCompanyBVMember" abstract="true" name="DutchPowerCompanyBVMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_ScheduleOfValuationAndQualifyingAccountsTableTextBlock" abstract="false" name="ScheduleOfValuationAndQualifyingAccountsTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="alg_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount" abstract="false" name="EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="alg_WellsFargoMultiManagerSmallCapMember" abstract="true" name="WellsFargoMultiManagerSmallCapMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_PaymentsForRepurchaseOfTreasuryStock" abstract="false" name="PaymentsForRepurchaseOfTreasuryStock" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="alg_QualifiedStockOptionsMember" abstract="true" name="QualifiedStockOptionsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_GradallMember" abstract="true" name="GradallMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_WellsFargoCausewayMember" abstract="true" name="WellsFargoCausewayMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_DeferredCompensationArrangementMaximumContractualTerm" abstract="false" name="DeferredCompensationArrangementMaximumContractualTerm" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="alg_VegetationManagementMember" abstract="true" name="VegetationManagementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="alg_AccountingPoliciesLineItems" abstract="true" name="AccountingPoliciesLineItems" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="alg_DeferredTaxLiabilitiesLeaseAsset" abstract="false" name="DeferredTaxLiabilitiesLeaseAsset" 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>9
<FILENAME>alg-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:7e490c47-366a-4d14-b516-70bcfe20753e,g:370dcb37-b2fc-4837-9d03-6da297616798-->
<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.alamo-group.com/role/ConsolidatedBalanceSheets" xlink:type="simple" xlink:href="alg-20221231.xsd#ConsolidatedBalanceSheets"/>
  <link:calculationLink xlink:role="http://www.alamo-group.com/role/ConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_47c792ce-4203-4981-a581-0f4daecf6a29" 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_e99fe804-1d8e-4d23-9529-23f8a917c8f8" 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_47c792ce-4203-4981-a581-0f4daecf6a29" xlink:to="loc_us-gaap_AccountsPayableCurrent_e99fe804-1d8e-4d23-9529-23f8a917c8f8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent_224d8383-dbe5-4159-a7be-184c034a65ce" 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_LiabilitiesCurrent_47c792ce-4203-4981-a581-0f4daecf6a29" xlink:to="loc_us-gaap_AccruedIncomeTaxesCurrent_224d8383-dbe5-4159-a7be-184c034a65ce" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_cdfcb307-462a-4668-bec5-e74e852cd040" 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_47c792ce-4203-4981-a581-0f4daecf6a29" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_cdfcb307-462a-4668-bec5-e74e852cd040" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_07cc7e82-232a-44a3-9e3d-c2c13a43e216" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_47c792ce-4203-4981-a581-0f4daecf6a29" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_07cc7e82-232a-44a3-9e3d-c2c13a43e216" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_bb678b16-029d-4ae7-a3d8-8e16b0a028df" 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_LiabilitiesCurrent_f92fc0ee-9680-4f18-bf2d-a0bc6bd36594" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_bb678b16-029d-4ae7-a3d8-8e16b0a028df" xlink:to="loc_us-gaap_LiabilitiesCurrent_f92fc0ee-9680-4f18-bf2d-a0bc6bd36594" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_3ccaf6a4-3ffb-4c91-b455-9fd1a0a29c3e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_bb678b16-029d-4ae7-a3d8-8e16b0a028df" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_3ccaf6a4-3ffb-4c91-b455-9fd1a0a29c3e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_8b22ef2c-e3d6-47e6-af1b-5f3768c0bdb4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_bb678b16-029d-4ae7-a3d8-8e16b0a028df" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent_8b22ef2c-e3d6-47e6-af1b-5f3768c0bdb4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_c23d0805-2ee8-4616-bb83-5a99860b95bd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_bb678b16-029d-4ae7-a3d8-8e16b0a028df" xlink:to="loc_us-gaap_StockholdersEquity_c23d0805-2ee8-4616-bb83-5a99860b95bd" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_d1a79ccd-15ca-4d2b-8f1d-f32b0c25e300" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_bb678b16-029d-4ae7-a3d8-8e16b0a028df" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_d1a79ccd-15ca-4d2b-8f1d-f32b0c25e300" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedIncomeTaxesNoncurrent_ed6dbf03-1ab9-4df8-af07-163aaf231da1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedIncomeTaxesNoncurrent"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_bb678b16-029d-4ae7-a3d8-8e16b0a028df" xlink:to="loc_us-gaap_AccruedIncomeTaxesNoncurrent_ed6dbf03-1ab9-4df8-af07-163aaf231da1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_3026a25e-1dbb-4e6b-ac95-b21866ab0a33" 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_CashAndCashEquivalentsAtCarryingValue_e5b8be5a-14f1-4a50-91f9-e848ab0116b8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_3026a25e-1dbb-4e6b-ac95-b21866ab0a33" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_e5b8be5a-14f1-4a50-91f9-e848ab0116b8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_3239d1ea-5a66-4c76-bf60-a17e75a9e480" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_3026a25e-1dbb-4e6b-ac95-b21866ab0a33" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_3239d1ea-5a66-4c76-bf60-a17e75a9e480" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_c749892c-f280-4d81-8462-ad56ea24be35" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_3026a25e-1dbb-4e6b-ac95-b21866ab0a33" xlink:to="loc_us-gaap_InventoryNet_c749892c-f280-4d81-8462-ad56ea24be35" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_8f6a9d12-e5d6-4288-bf3d-4d6219e490b2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_3026a25e-1dbb-4e6b-ac95-b21866ab0a33" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_8f6a9d12-e5d6-4288-bf3d-4d6219e490b2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxesReceivable_2b2788c6-c9e7-4254-ac4c-3aee20402ccb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxesReceivable"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_3026a25e-1dbb-4e6b-ac95-b21866ab0a33" xlink:to="loc_us-gaap_IncomeTaxesReceivable_2b2788c6-c9e7-4254-ac4c-3aee20402ccb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_fde6f896-3918-43a8-99fa-74aa57d2e93f" 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_CommonStockValue_33a7f2d6-1244-4ccf-b3d5-3bf96e2da4f2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_fde6f896-3918-43a8-99fa-74aa57d2e93f" xlink:to="loc_us-gaap_CommonStockValue_33a7f2d6-1244-4ccf-b3d5-3bf96e2da4f2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_dc2358d0-cbdf-41c1-8d8c-b9d64178c7e2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_fde6f896-3918-43a8-99fa-74aa57d2e93f" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_dc2358d0-cbdf-41c1-8d8c-b9d64178c7e2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValue_d6098f42-000c-477a-8f43-ab8bc473cf23" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockValue"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_fde6f896-3918-43a8-99fa-74aa57d2e93f" xlink:to="loc_us-gaap_TreasuryStockValue_d6098f42-000c-477a-8f43-ab8bc473cf23" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_f870a429-b948-4c9f-bef8-36290c964f1e" 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_fde6f896-3918-43a8-99fa-74aa57d2e93f" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_f870a429-b948-4c9f-bef8-36290c964f1e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_a7a293c2-0e5a-43c9-8e3b-f88be0102c9c" 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_fde6f896-3918-43a8-99fa-74aa57d2e93f" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_a7a293c2-0e5a-43c9-8e3b-f88be0102c9c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_8aa8c707-62b5-4e4d-af72-fd292aeed68e" 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_Goodwill_0c400f4e-3866-412f-bc13-112ee3417bb5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_8aa8c707-62b5-4e4d-af72-fd292aeed68e" xlink:to="loc_us-gaap_Goodwill_0c400f4e-3866-412f-bc13-112ee3417bb5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_4e522c0d-1aca-45ff-b87b-fad2aa67d1f7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_8aa8c707-62b5-4e4d-af72-fd292aeed68e" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_4e522c0d-1aca-45ff-b87b-fad2aa67d1f7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet_99bf1423-e7d5-4258-9f58-817f6fd94bee" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_8aa8c707-62b5-4e4d-af72-fd292aeed68e" xlink:to="loc_us-gaap_DeferredIncomeTaxAssetsNet_99bf1423-e7d5-4258-9f58-817f6fd94bee" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_f7d4a976-1074-4935-8f97-90b5ece8041d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_8aa8c707-62b5-4e4d-af72-fd292aeed68e" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_f7d4a976-1074-4935-8f97-90b5ece8041d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_cb4ea3f5-4c46-4246-93ca-3c852cb79071" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_8aa8c707-62b5-4e4d-af72-fd292aeed68e" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_cb4ea3f5-4c46-4246-93ca-3c852cb79071" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_02f1fbbc-8629-423b-b016-7302ebb63f4e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_8aa8c707-62b5-4e4d-af72-fd292aeed68e" xlink:to="loc_us-gaap_AssetsCurrent_02f1fbbc-8629-423b-b016-7302ebb63f4e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_RentalEquipmentNet_8064afa4-14f4-4681-a574-8ab461fff359" xlink:href="alg-20221231.xsd#alg_RentalEquipmentNet"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_8aa8c707-62b5-4e4d-af72-fd292aeed68e" xlink:to="loc_alg_RentalEquipmentNet_8064afa4-14f4-4681-a574-8ab461fff359" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_8edda8b1-969f-41ef-99de-a2e8f9dd9100" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_a0948814-e242-41ba-9c7f-5dc36207053a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_8edda8b1-969f-41ef-99de-a2e8f9dd9100" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_a0948814-e242-41ba-9c7f-5dc36207053a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_93daa53b-7c42-4b30-8a2b-4ce836fda85e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_8edda8b1-969f-41ef-99de-a2e8f9dd9100" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_93daa53b-7c42-4b30-8a2b-4ce836fda85e" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/ConsolidatedStatementsofIncome" xlink:type="simple" xlink:href="alg-20221231.xsd#ConsolidatedStatementsofIncome"/>
  <link:calculationLink xlink:role="http://www.alamo-group.com/role/ConsolidatedStatementsofIncome" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_c25e1a6a-54e0-4d1a-8ea4-cc3c86131dfc" 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_InterestExpense_3492845b-a52f-4fcc-8ca3-885a5df3dd73" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_c25e1a6a-54e0-4d1a-8ea4-cc3c86131dfc" xlink:to="loc_us-gaap_InterestExpense_3492845b-a52f-4fcc-8ca3-885a5df3dd73" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentIncomeInterest_605c54fb-b4a6-44b1-8489-b34016405d0e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InvestmentIncomeInterest"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_c25e1a6a-54e0-4d1a-8ea4-cc3c86131dfc" xlink:to="loc_us-gaap_InvestmentIncomeInterest_605c54fb-b4a6-44b1-8489-b34016405d0e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_9e0096e4-4042-47bc-a82b-ff15304fe07e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_c25e1a6a-54e0-4d1a-8ea4-cc3c86131dfc" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_9e0096e4-4042-47bc-a82b-ff15304fe07e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_3ffabf75-1c30-4836-9916-a7232ec7700d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_c25e1a6a-54e0-4d1a-8ea4-cc3c86131dfc" xlink:to="loc_us-gaap_OperatingIncomeLoss_3ffabf75-1c30-4836-9916-a7232ec7700d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_bc9dd2b7-9a69-4927-9c4d-5e4c5033848c" 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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_e9992256-4f6f-444c-8402-1c71eda18dfc" 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_NetIncomeLoss_bc9dd2b7-9a69-4927-9c4d-5e4c5033848c" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_e9992256-4f6f-444c-8402-1c71eda18dfc" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_e2b28e01-4401-4694-bde5-d90bf2fe9747" 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_NetIncomeLoss_bc9dd2b7-9a69-4927-9c4d-5e4c5033848c" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_e2b28e01-4401-4694-bde5-d90bf2fe9747" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_76e89f8a-2387-4ea6-82a9-ed209670547b" 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_RevenueFromContractWithCustomerExcludingAssessedTax_414302c4-cbbc-48ea-9a02-4f564ed40903" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_76e89f8a-2387-4ea6-82a9-ed209670547b" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_414302c4-cbbc-48ea-9a02-4f564ed40903" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_611dbd89-ff39-4531-a6e6-283afb2ef43c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_76e89f8a-2387-4ea6-82a9-ed209670547b" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_611dbd89-ff39-4531-a6e6-283afb2ef43c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_9d244d26-928d-4ff8-a4ce-c0d64a5d1354" 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_AmortizationOfDeferredCharges_3067e4c2-c5ab-4c5d-89e6-ee60df0e3be1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfDeferredCharges"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_9d244d26-928d-4ff8-a4ce-c0d64a5d1354" xlink:to="loc_us-gaap_AmortizationOfDeferredCharges_3067e4c2-c5ab-4c5d-89e6-ee60df0e3be1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_4d9b5bfa-a237-48a5-a268-db2edd9bc264" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_9d244d26-928d-4ff8-a4ce-c0d64a5d1354" xlink:to="loc_us-gaap_GrossProfit_4d9b5bfa-a237-48a5-a268-db2edd9bc264" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_e0b7d2ca-3313-48f0-af52-8f5fdbc206c3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_9d244d26-928d-4ff8-a4ce-c0d64a5d1354" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_e0b7d2ca-3313-48f0-af52-8f5fdbc206c3" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncome" xlink:type="simple" xlink:href="alg-20221231.xsd#ConsolidatedStatementsofComprehensiveIncome"/>
  <link:calculationLink xlink:role="http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncome" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_ed049483-5341-4cca-9edb-9dca20608533" 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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_d38cb935-553f-4264-a473-e8020f94a6b6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_ed049483-5341-4cca-9edb-9dca20608533" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_d38cb935-553f-4264-a473-e8020f94a6b6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_712b8aa5-74a9-4521-a670-1170e56896e4" 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_ed049483-5341-4cca-9edb-9dca20608533" xlink:to="loc_us-gaap_NetIncomeLoss_712b8aa5-74a9-4521-a670-1170e56896e4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_b98ce7e9-948f-406d-83db-c018d9c73c7d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent_63dac21c-c670-44f8-93b2-0774c961a191" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_b98ce7e9-948f-406d-83db-c018d9c73c7d" xlink:to="loc_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent_63dac21c-c670-44f8-93b2-0774c961a191" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_87bbf3c1-2679-4956-82da-f6d03284fce1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_b98ce7e9-948f-406d-83db-c018d9c73c7d" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_87bbf3c1-2679-4956-82da-f6d03284fce1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent_a9a03ef7-560b-42e5-8053-327567a97212" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_b98ce7e9-948f-406d-83db-c018d9c73c7d" xlink:to="loc_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent_a9a03ef7-560b-42e5-8053-327567a97212" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows" xlink:type="simple" xlink:href="alg-20221231.xsd#ConsolidatedStatementsofCashFlows"/>
  <link:calculationLink xlink:role="http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_9b8cba75-97c4-43c8-9788-420c8e0ea926" 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_NetCashProvidedByUsedInInvestingActivities_4531b7b1-5605-4bc4-b1a6-14cb1c57fba0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_9b8cba75-97c4-43c8-9788-420c8e0ea926" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_4531b7b1-5605-4bc4-b1a6-14cb1c57fba0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_dbff2868-73ec-462e-aa3e-2e64c1759f8a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_9b8cba75-97c4-43c8-9788-420c8e0ea926" xlink:to="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_dbff2868-73ec-462e-aa3e-2e64c1759f8a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_0281fb7d-0bfb-4fba-a52f-4f57f983e3e4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_9b8cba75-97c4-43c8-9788-420c8e0ea926" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_0281fb7d-0bfb-4fba-a52f-4f57f983e3e4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_cb0af2aa-0654-46c4-a425-83a1e233fe33" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_9b8cba75-97c4-43c8-9788-420c8e0ea926" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_cb0af2aa-0654-46c4-a425-83a1e233fe33" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7c4e2207-c7d9-4baf-b1df-929c6ac1bd15" 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_NetIncomeLoss_924b0912-09e0-439c-925c-af4ddbbcae30" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7c4e2207-c7d9-4baf-b1df-929c6ac1bd15" xlink:to="loc_us-gaap_NetIncomeLoss_924b0912-09e0-439c-925c-af4ddbbcae30" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_451f9aee-3da3-4b22-b697-2eceb6f04f68" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7c4e2207-c7d9-4baf-b1df-929c6ac1bd15" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_451f9aee-3da3-4b22-b697-2eceb6f04f68" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation_d1383871-7ddb-4b10-857d-99db60c1cbad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Depreciation"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7c4e2207-c7d9-4baf-b1df-929c6ac1bd15" xlink:to="loc_us-gaap_Depreciation_d1383871-7ddb-4b10-857d-99db60c1cbad" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquipmentExpense_b91acd50-7e66-4a03-aad4-4d6af0ca2e03" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquipmentExpense"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7c4e2207-c7d9-4baf-b1df-929c6ac1bd15" xlink:to="loc_us-gaap_EquipmentExpense_b91acd50-7e66-4a03-aad4-4d6af0ca2e03" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_f6d40704-b85a-4dd9-b640-99583b417973" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfIntangibleAssets"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7c4e2207-c7d9-4baf-b1df-929c6ac1bd15" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_f6d40704-b85a-4dd9-b640-99583b417973" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfFinancingCosts_e13c61cf-6907-465d-946c-56a065aa8772" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfFinancingCosts"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7c4e2207-c7d9-4baf-b1df-929c6ac1bd15" xlink:to="loc_us-gaap_AmortizationOfFinancingCosts_e13c61cf-6907-465d-946c-56a065aa8772" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_7d95edef-74e5-46bd-afa1-3d1b52604c1a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7c4e2207-c7d9-4baf-b1df-929c6ac1bd15" xlink:to="loc_us-gaap_ShareBasedCompensation_7d95edef-74e5-46bd-afa1-3d1b52604c1a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_37aa3f4d-7b76-47e8-ba25-5b6eac0c8ff5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7c4e2207-c7d9-4baf-b1df-929c6ac1bd15" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_37aa3f4d-7b76-47e8-ba25-5b6eac0c8ff5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_12419aa1-c8c4-41d9-b7bc-ee81169f0c3d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccruedTaxesPayable"/>
    <link:calculationArc order="9" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7c4e2207-c7d9-4baf-b1df-929c6ac1bd15" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_12419aa1-c8c4-41d9-b7bc-ee81169f0c3d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_f56da716-c71d-49cb-a0c3-22d8f2c23b7a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
    <link:calculationArc order="10" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7c4e2207-c7d9-4baf-b1df-929c6ac1bd15" xlink:to="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_f56da716-c71d-49cb-a0c3-22d8f2c23b7a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_db2f2a4b-4db0-452e-b3a3-ea1ac0ba92a7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:calculationArc order="11" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7c4e2207-c7d9-4baf-b1df-929c6ac1bd15" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_db2f2a4b-4db0-452e-b3a3-ea1ac0ba92a7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_9e2de746-6226-4ce8-9407-f08c91937026" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:calculationArc order="12" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7c4e2207-c7d9-4baf-b1df-929c6ac1bd15" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_9e2de746-6226-4ce8-9407-f08c91937026" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_IncreaseDecreaseInRentalEquipment_ca0b99a8-e4c9-4caf-9323-0ee90ab45e16" xlink:href="alg-20221231.xsd#alg_IncreaseDecreaseInRentalEquipment"/>
    <link:calculationArc order="13" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7c4e2207-c7d9-4baf-b1df-929c6ac1bd15" xlink:to="loc_alg_IncreaseDecreaseInRentalEquipment_ca0b99a8-e4c9-4caf-9323-0ee90ab45e16" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_28c281bd-c769-469e-b4b4-9dad67bf54e3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:calculationArc order="14" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7c4e2207-c7d9-4baf-b1df-929c6ac1bd15" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_28c281bd-c769-469e-b4b4-9dad67bf54e3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_08ef8dc7-792b-4882-87de-8ad8a6b25259" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities"/>
    <link:calculationArc order="15" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7c4e2207-c7d9-4baf-b1df-929c6ac1bd15" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_08ef8dc7-792b-4882-87de-8ad8a6b25259" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable_dfbf198c-47a2-48da-8421-a8f306230bd3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable"/>
    <link:calculationArc order="16" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7c4e2207-c7d9-4baf-b1df-929c6ac1bd15" xlink:to="loc_us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable_dfbf198c-47a2-48da-8421-a8f306230bd3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities_de69b18f-86e5-45e6-a464-aec3898b098d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities"/>
    <link:calculationArc order="17" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7c4e2207-c7d9-4baf-b1df-929c6ac1bd15" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities_de69b18f-86e5-45e6-a464-aec3898b098d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_55d78c68-b536-4998-8d0e-134af2c852e1" 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_PaymentsToAcquireBusinessesNetOfCashAcquired_cc43fdb5-d8b5-427e-ad95-9ed06aab8666" 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_NetCashProvidedByUsedInInvestingActivities_55d78c68-b536-4998-8d0e-134af2c852e1" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_cc43fdb5-d8b5-427e-ad95-9ed06aab8666" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_16a194cc-333f-4847-b5a0-dfb8e848f342" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_55d78c68-b536-4998-8d0e-134af2c852e1" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_16a194cc-333f-4847-b5a0-dfb8e848f342" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_6b202aa9-e9ad-438c-a53f-0c2bf67aa16b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_55d78c68-b536-4998-8d0e-134af2c852e1" xlink:to="loc_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_6b202aa9-e9ad-438c-a53f-0c2bf67aa16b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireIntangibleAssets_55395ef3-85e4-4550-9eb9-5acca6ce2de3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireIntangibleAssets"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_55d78c68-b536-4998-8d0e-134af2c852e1" xlink:to="loc_us-gaap_PaymentsToAcquireIntangibleAssets_55395ef3-85e4-4550-9eb9-5acca6ce2de3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_bdd9957c-0d86-4d44-89ef-ccfc244d198c" 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_ProceedsFromLinesOfCredit_f8aee72a-45a0-4c06-9b5e-ecf131e50788" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromLinesOfCredit"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_bdd9957c-0d86-4d44-89ef-ccfc244d198c" xlink:to="loc_us-gaap_ProceedsFromLinesOfCredit_f8aee72a-45a0-4c06-9b5e-ecf131e50788" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfLinesOfCredit_cefc51c9-a653-42ab-b4de-0345eebde688" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfLinesOfCredit"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_bdd9957c-0d86-4d44-89ef-ccfc244d198c" xlink:to="loc_us-gaap_RepaymentsOfLinesOfCredit_cefc51c9-a653-42ab-b4de-0345eebde688" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromRepaymentsOfOtherLongTermDebt_b9dd811d-a737-4ab3-bac0-fe822a42c323" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromRepaymentsOfOtherLongTermDebt"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_bdd9957c-0d86-4d44-89ef-ccfc244d198c" xlink:to="loc_us-gaap_ProceedsFromRepaymentsOfOtherLongTermDebt_b9dd811d-a737-4ab3-bac0-fe822a42c323" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDebtIssuanceCosts_fde714f4-6d9f-40cb-afa3-2ed1e575fdce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDebtIssuanceCosts"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_bdd9957c-0d86-4d44-89ef-ccfc244d198c" xlink:to="loc_us-gaap_PaymentsOfDebtIssuanceCosts_fde714f4-6d9f-40cb-afa3-2ed1e575fdce" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_2930adf2-bed9-482f-b0d2-0f40a3035f1f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_bdd9957c-0d86-4d44-89ef-ccfc244d198c" xlink:to="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_2930adf2-bed9-482f-b0d2-0f40a3035f1f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_PaymentsForRepurchaseOfTreasuryStock_f4609305-9116-4f41-a2cc-55edfad17215" xlink:href="alg-20221231.xsd#alg_PaymentsForRepurchaseOfTreasuryStock"/>
    <link:calculationArc order="6" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_bdd9957c-0d86-4d44-89ef-ccfc244d198c" xlink:to="loc_alg_PaymentsForRepurchaseOfTreasuryStock_f4609305-9116-4f41-a2cc-55edfad17215" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfCommonStock_ec3ec857-be9d-47f0-9dff-7b68a79ac5b1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_bdd9957c-0d86-4d44-89ef-ccfc244d198c" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfCommonStock_ec3ec857-be9d-47f0-9dff-7b68a79ac5b1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt_46761613-2b90-4980-b32b-10c38157668b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_bdd9957c-0d86-4d44-89ef-ccfc244d198c" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt_46761613-2b90-4980-b32b-10c38157668b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDividendsCommonStock_d6a1b420-e43c-46da-b427-0d1f845a7910" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDividendsCommonStock"/>
    <link:calculationArc order="9" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_bdd9957c-0d86-4d44-89ef-ccfc244d198c" xlink:to="loc_us-gaap_PaymentsOfDividendsCommonStock_d6a1b420-e43c-46da-b427-0d1f845a7910" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/EarningsPerShareDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#EarningsPerShareDetails"/>
  <link:calculationLink xlink:role="http://www.alamo-group.com/role/EarningsPerShareDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_a05f6080-1bbd-498a-8ba8-3d5a5a9f643d" 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_WeightedAverageNumberOfSharesOutstandingBasic_1671746a-d566-45eb-a8aa-a51e1f45896c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_a05f6080-1bbd-498a-8ba8-3d5a5a9f643d" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_1671746a-d566-45eb-a8aa-a51e1f45896c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_d7250856-e667-4b29-8ea7-2df46aa82e02" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_a05f6080-1bbd-498a-8ba8-3d5a5a9f643d" xlink:to="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_d7250856-e667-4b29-8ea7-2df46aa82e02" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/InventoriesScheduleofInventoryCurrentDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#InventoriesScheduleofInventoryCurrentDetails"/>
  <link:calculationLink xlink:role="http://www.alamo-group.com/role/InventoriesScheduleofInventoryCurrentDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_4185104e-379e-4973-b70d-16de8da3cb98" 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_InventoryFinishedGoodsNetOfReserves_d42873f4-28cf-440f-8875-84366909d494" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_4185104e-379e-4973-b70d-16de8da3cb98" xlink:to="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_d42873f4-28cf-440f-8875-84366909d494" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWorkInProcessNetOfReserves_4c7ac7a3-d25d-4e6a-9afa-2c65a1528604" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryWorkInProcessNetOfReserves"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_4185104e-379e-4973-b70d-16de8da3cb98" xlink:to="loc_us-gaap_InventoryWorkInProcessNetOfReserves_4c7ac7a3-d25d-4e6a-9afa-2c65a1528604" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves_3cd8a44d-9b47-4be9-a483-e0a945d51c37" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterialsNetOfReserves"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_4185104e-379e-4973-b70d-16de8da3cb98" xlink:to="loc_us-gaap_InventoryRawMaterialsNetOfReserves_3cd8a44d-9b47-4be9-a483-e0a945d51c37" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails"/>
  <link:calculationLink xlink:role="http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_c06ad353-3f71-49c5-ae02-d2230be4ac25" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_aa02cfd7-6948-4960-bd3e-d318dcdd794d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_c06ad353-3f71-49c5-ae02-d2230be4ac25" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_aa02cfd7-6948-4960-bd3e-d318dcdd794d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_ae0e706c-d96f-4bbd-8e56-ff4e2a3f817b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_c06ad353-3f71-49c5-ae02-d2230be4ac25" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_ae0e706c-d96f-4bbd-8e56-ff4e2a3f817b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_4c8e7ce5-79fa-44b1-90d2-4738213a0097" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_cac82011-e127-46a0-aa0a-23ea2e522dbc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_4c8e7ce5-79fa-44b1-90d2-4738213a0097" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_cac82011-e127-46a0-aa0a-23ea2e522dbc" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_86655110-0a79-4536-839d-65ffe6c839f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_4c8e7ce5-79fa-44b1-90d2-4738213a0097" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_86655110-0a79-4536-839d-65ffe6c839f4" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/LeasesLeaseCostDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#LeasesLeaseCostDetails"/>
  <link:calculationLink xlink:role="http://www.alamo-group.com/role/LeasesLeaseCostDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_d90a66cc-e5f9-49ab-9f62-8ae6931d359f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCost"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAssetAmortization_8ed94773-8799-4967-8829-08fe8c0ac662" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_d90a66cc-e5f9-49ab-9f62-8ae6931d359f" xlink:to="loc_us-gaap_FinanceLeaseRightOfUseAssetAmortization_8ed94773-8799-4967-8829-08fe8c0ac662" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseInterestExpense_9875abc3-8207-48b2-a164-57c22d268390" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseInterestExpense"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_d90a66cc-e5f9-49ab-9f62-8ae6931d359f" xlink:to="loc_us-gaap_FinanceLeaseInterestExpense_9875abc3-8207-48b2-a164-57c22d268390" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost_e39cb761-5758-48c3-8249-8c3c4b2cb4d1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseCost"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_d90a66cc-e5f9-49ab-9f62-8ae6931d359f" xlink:to="loc_us-gaap_OperatingLeaseCost_e39cb761-5758-48c3-8249-8c3c4b2cb4d1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermLeaseCost_014b04ca-4299-4a08-a0cc-e31d62e10a67" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermLeaseCost"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_d90a66cc-e5f9-49ab-9f62-8ae6931d359f" xlink:to="loc_us-gaap_ShortTermLeaseCost_014b04ca-4299-4a08-a0cc-e31d62e10a67" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableLeaseCost_b95044a3-4b83-4b40-8636-c91c042fab54" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableLeaseCost"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_d90a66cc-e5f9-49ab-9f62-8ae6931d359f" xlink:to="loc_us-gaap_VariableLeaseCost_b95044a3-4b83-4b40-8636-c91c042fab54" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/LeasesMaturityScheduleDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#LeasesMaturityScheduleDetails"/>
  <link:calculationLink xlink:role="http://www.alamo-group.com/role/LeasesMaturityScheduleDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_2d38a3fc-c669-4144-bf9f-51146757a300" 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_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_df0e55a9-4376-4fde-92aa-5c91fba1a000" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_2d38a3fc-c669-4144-bf9f-51146757a300" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_df0e55a9-4376-4fde-92aa-5c91fba1a000" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_60947e23-a6bd-4d32-85c8-39d1a4189174" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_2d38a3fc-c669-4144-bf9f-51146757a300" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_60947e23-a6bd-4d32-85c8-39d1a4189174" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_cb4618d8-86e1-4ce4-aad2-64d510290fde" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_2d38a3fc-c669-4144-bf9f-51146757a300" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_cb4618d8-86e1-4ce4-aad2-64d510290fde" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_f70c4c4c-877a-477a-abd8-0d897b1e7f70" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_2d38a3fc-c669-4144-bf9f-51146757a300" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_f70c4c4c-877a-477a-abd8-0d897b1e7f70" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_67ac1ed8-1600-4351-b3c1-ce2f5aa1d595" 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_2d38a3fc-c669-4144-bf9f-51146757a300" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_67ac1ed8-1600-4351-b3c1-ce2f5aa1d595" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_c6f002b9-faed-49e2-a6c7-8a3c7561b6ad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_2d38a3fc-c669-4144-bf9f-51146757a300" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_c6f002b9-faed-49e2-a6c7-8a3c7561b6ad" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/LeasesMaturityScheduleDetails_1" xlink:type="simple" xlink:href="alg-20221231.xsd#LeasesMaturityScheduleDetails_1"/>
  <link:calculationLink xlink:role="http://www.alamo-group.com/role/LeasesMaturityScheduleDetails_1" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_83c340ac-52ec-4f6f-9d70-99e4035dfcf4" 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_OperatingLeaseLiability_cead31fa-57f6-405e-b773-05e7ac9f9407" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_83c340ac-52ec-4f6f-9d70-99e4035dfcf4" xlink:to="loc_us-gaap_OperatingLeaseLiability_cead31fa-57f6-405e-b773-05e7ac9f9407" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_2522e8fa-dda4-477c-80a0-41b10fb1561f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_83c340ac-52ec-4f6f-9d70-99e4035dfcf4" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_2522e8fa-dda4-477c-80a0-41b10fb1561f" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/LeasesSupplementalBalanceSheetInformationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#LeasesSupplementalBalanceSheetInformationDetails"/>
  <link:calculationLink xlink:role="http://www.alamo-group.com/role/LeasesSupplementalBalanceSheetInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_84b6880d-da70-4dd2-8567-0edcbf688a43" 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_OperatingLeaseLiabilityNoncurrent_2f80655d-99b9-4f01-b13a-4624db1111ec" 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_OperatingLeaseLiability_84b6880d-da70-4dd2-8567-0edcbf688a43" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_2f80655d-99b9-4f01-b13a-4624db1111ec" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_613d7ebf-598f-4b01-aaff-ad914446d76f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeaseLiability_84b6880d-da70-4dd2-8567-0edcbf688a43" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_613d7ebf-598f-4b01-aaff-ad914446d76f" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/AccruedLiabilitiesDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#AccruedLiabilitiesDetails"/>
  <link:calculationLink xlink:role="http://www.alamo-group.com/role/AccruedLiabilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_12d5108b-c878-4627-bc0e-582213a090f5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedEmployeeBenefitsCurrent_9c5187da-a994-4d36-8720-d967abf17523" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedEmployeeBenefitsCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_12d5108b-c878-4627-bc0e-582213a090f5" xlink:to="loc_us-gaap_AccruedEmployeeBenefitsCurrent_9c5187da-a994-4d36-8720-d967abf17523" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_29ded403-210e-4120-818d-141e75cac454" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_12d5108b-c878-4627-bc0e-582213a090f5" xlink:to="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_29ded403-210e-4120-818d-141e75cac454" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TaxesPayableCurrent_b640d37e-6108-41be-9e5f-65b6c248b6f0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TaxesPayableCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_12d5108b-c878-4627-bc0e-582213a090f5" xlink:to="loc_us-gaap_TaxesPayableCurrent_b640d37e-6108-41be-9e5f-65b6c248b6f0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesCurrent_9ff541ab-f7ce-4cbf-ac37-f185b13381aa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherLiabilitiesCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_12d5108b-c878-4627-bc0e-582213a090f5" xlink:to="loc_us-gaap_OtherLiabilitiesCurrent_9ff541ab-f7ce-4cbf-ac37-f185b13381aa" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent_ac9860fe-3fa9-4a05-9d83-833af60b44bb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_12d5108b-c878-4627-bc0e-582213a090f5" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityCurrent_ac9860fe-3fa9-4a05-9d83-833af60b44bb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities_839d49e7-f5b7-40e4-8435-a2254a93b09b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_12d5108b-c878-4627-bc0e-582213a090f5" xlink:to="loc_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities_839d49e7-f5b7-40e4-8435-a2254a93b09b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_625f0736-b89b-418f-b1c4-3a72886511a9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_12d5108b-c878-4627-bc0e-582213a090f5" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_625f0736-b89b-418f-b1c4-3a72886511a9" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#LongTermDebtScheduleofLongTermDebtDetails"/>
  <link:calculationLink xlink:role="http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities_ed492bfa-6116-4df9-8ca5-cc24d7b6bd8b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_286b83db-6b82-4d5b-8e96-14a1ddd7d92f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities_ed492bfa-6116-4df9-8ca5-cc24d7b6bd8b" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_286b83db-6b82-4d5b-8e96-14a1ddd7d92f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_e5f89919-ef9e-462a-a1ef-11eb6bab4898" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities_ed492bfa-6116-4df9-8ca5-cc24d7b6bd8b" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_e5f89919-ef9e-462a-a1ef-11eb6bab4898" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/IncomeTaxesScheduleofIncomeLossbeforeProvisionforIncomeTaxesDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#IncomeTaxesScheduleofIncomeLossbeforeProvisionforIncomeTaxesDetails"/>
  <link:calculationLink xlink:role="http://www.alamo-group.com/role/IncomeTaxesScheduleofIncomeLossbeforeProvisionforIncomeTaxesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_4bd99d1b-e250-4bb9-baec-681caeef971b" 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_c13d66b8-a081-4cd9-af8b-428d3c48bb3a" 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_4bd99d1b-e250-4bb9-baec-681caeef971b" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_c13d66b8-a081-4cd9-af8b-428d3c48bb3a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_51cafcd2-6286-4e94-b435-1963c9989814" 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_4bd99d1b-e250-4bb9-baec-681caeef971b" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_51cafcd2-6286-4e94-b435-1963c9989814" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails"/>
  <link:calculationLink xlink:role="http://www.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_6b200dc0-95c4-4603-91d9-a8ecf79cb279" 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_bec7f239-7a2f-40e6-899d-ad984fc3dfe8" 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_6b200dc0-95c4-4603-91d9-a8ecf79cb279" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_bec7f239-7a2f-40e6-899d-ad984fc3dfe8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_499b0720-a777-4def-83c0-3b127192fea1" 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_6b200dc0-95c4-4603-91d9-a8ecf79cb279" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_499b0720-a777-4def-83c0-3b127192fea1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_49bbd04e-be40-4b12-a14d-38a928b648c7" 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_9d4f9e23-820b-47ce-8cf2-bde0ac9d80e1" 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_49bbd04e-be40-4b12-a14d-38a928b648c7" xlink:to="loc_us-gaap_CurrentFederalTaxExpenseBenefit_9d4f9e23-820b-47ce-8cf2-bde0ac9d80e1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_620a8ba7-ad93-4b0e-bd01-5f30f25065f2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_49bbd04e-be40-4b12-a14d-38a928b648c7" xlink:to="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_620a8ba7-ad93-4b0e-bd01-5f30f25065f2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentForeignTaxExpenseBenefit_0ec52ebd-72ec-48af-919d-b81dc6d282d7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentForeignTaxExpenseBenefit"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_49bbd04e-be40-4b12-a14d-38a928b648c7" xlink:to="loc_us-gaap_CurrentForeignTaxExpenseBenefit_0ec52ebd-72ec-48af-919d-b81dc6d282d7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_0b773c26-f3ac-4803-b285-cf54629184e3" 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_647230fd-ec24-4b5a-ab24-ff86339345a9" 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_0b773c26-f3ac-4803-b285-cf54629184e3" xlink:to="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_647230fd-ec24-4b5a-ab24-ff86339345a9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_1cbab1d3-9782-44e2-9a90-7cd99fef3d4a" 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_0b773c26-f3ac-4803-b285-cf54629184e3" xlink:to="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_1cbab1d3-9782-44e2-9a90-7cd99fef3d4a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_f1b9d6bd-8907-4dbf-9b5a-b923a994af12" 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_0b773c26-f3ac-4803-b285-cf54629184e3" xlink:to="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_f1b9d6bd-8907-4dbf-9b5a-b923a994af12" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#IncomeTaxesIncomeTaxReconciliationDetails"/>
  <link:calculationLink xlink:role="http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017_ebacdda2-935e-4ca3-aaff-50a06a9147c9" xlink:href="alg-20221231.xsd#alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential_cd2fd4ae-7042-4815-8a3e-02de2a9d2ed8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017_ebacdda2-935e-4ca3-aaff-50a06a9147c9" xlink:to="loc_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential_cd2fd4ae-7042-4815-8a3e-02de2a9d2ed8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount_dca156fa-e349-4cff-9936-e25d4a0772ec" xlink:href="alg-20221231.xsd#alg_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017_ebacdda2-935e-4ca3-aaff-50a06a9147c9" xlink:to="loc_alg_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount_dca156fa-e349-4cff-9936-e25d4a0772ec" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_d69c7121-c21d-45a9-b9d6-5216bd682aae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017_ebacdda2-935e-4ca3-aaff-50a06a9147c9" xlink:to="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_d69c7121-c21d-45a9-b9d6-5216bd682aae" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_IncomeTaxRateReconciliationForeignTaxExpense_6fc8a730-9fbb-45b8-8067-9080e077665f" xlink:href="alg-20221231.xsd#alg_IncomeTaxRateReconciliationForeignTaxExpense"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017_ebacdda2-935e-4ca3-aaff-50a06a9147c9" xlink:to="loc_alg_IncomeTaxRateReconciliationForeignTaxExpense_6fc8a730-9fbb-45b8-8067-9080e077665f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxCreditsResearch_0a51b697-87bc-4314-ba52-3385b6087356" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationTaxCreditsResearch"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017_ebacdda2-935e-4ca3-aaff-50a06a9147c9" xlink:to="loc_us-gaap_IncomeTaxReconciliationTaxCreditsResearch_0a51b697-87bc-4314-ba52-3385b6087356" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount_d4483265-8370-4c70-b400-ded5a3d9ce88" xlink:href="alg-20221231.xsd#alg_EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount"/>
    <link:calculationArc order="6" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017_ebacdda2-935e-4ca3-aaff-50a06a9147c9" xlink:to="loc_alg_EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount_d4483265-8370-4c70-b400-ded5a3d9ce88" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_4a2bbb47-8d43-4790-a350-ee149c41a50a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017_ebacdda2-935e-4ca3-aaff-50a06a9147c9" xlink:to="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_4a2bbb47-8d43-4790-a350-ee149c41a50a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_29b829ed-9a9d-4796-a5ff-97a73b21196e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017_ebacdda2-935e-4ca3-aaff-50a06a9147c9" xlink:to="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_29b829ed-9a9d-4796-a5ff-97a73b21196e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost_885f29b0-de08-4bbc-a71d-c75a53153e7b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost"/>
    <link:calculationArc order="9" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017_ebacdda2-935e-4ca3-aaff-50a06a9147c9" xlink:to="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost_885f29b0-de08-4bbc-a71d-c75a53153e7b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount_96c631e0-b4bc-41ac-9a94-cf2a5806a771" xlink:href="alg-20221231.xsd#alg_EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount"/>
    <link:calculationArc order="10" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017_ebacdda2-935e-4ca3-aaff-50a06a9147c9" xlink:to="loc_alg_EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount_96c631e0-b4bc-41ac-9a94-cf2a5806a771" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"/>
  <link:calculationLink xlink:role="http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_f347a95a-2c5b-4a75-a68b-7550a4156c7b" 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_DeferredTaxAssetsInProcessResearchAndDevelopment_6e8941e9-7d1d-4e73-a71e-35af77fca4b8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_f347a95a-2c5b-4a75-a68b-7550a4156c7b" xlink:to="loc_us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment_6e8941e9-7d1d-4e73-a71e-35af77fca4b8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_aa4cd3e2-a81e-44a5-a085-709e62f149be" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_f347a95a-2c5b-4a75-a68b-7550a4156c7b" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_aa4cd3e2-a81e-44a5-a085-709e62f149be" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions_6ec95786-106c-4ee7-991d-7057ddf571c2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_f347a95a-2c5b-4a75-a68b-7550a4156c7b" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions_6ec95786-106c-4ee7-991d-7057ddf571c2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_5c96d5c7-ab75-4cc0-8811-1ac71387ed0c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_f347a95a-2c5b-4a75-a68b-7550a4156c7b" xlink:to="loc_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_5c96d5c7-ab75-4cc0-8811-1ac71387ed0c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DeferredTaxAssetsLeaseLiability_087ce1dc-f4cf-476a-9fe8-86a4ad9b1350" xlink:href="alg-20221231.xsd#alg_DeferredTaxAssetsLeaseLiability"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_f347a95a-2c5b-4a75-a68b-7550a4156c7b" xlink:to="loc_alg_DeferredTaxAssetsLeaseLiability_087ce1dc-f4cf-476a-9fe8-86a4ad9b1350" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsInventory_fb0d4bb9-0c75-491f-afba-d9bfce7f221a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsInventory"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_f347a95a-2c5b-4a75-a68b-7550a4156c7b" xlink:to="loc_us-gaap_DeferredTaxAssetsInventory_fb0d4bb9-0c75-491f-afba-d9bfce7f221a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_29b572f0-1574-4c33-a0ab-3e83561b386f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_f347a95a-2c5b-4a75-a68b-7550a4156c7b" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_29b572f0-1574-4c33-a0ab-3e83561b386f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign_dafe038c-b964-4d27-84fa-6c6ac9389df9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_f347a95a-2c5b-4a75-a68b-7550a4156c7b" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign_dafe038c-b964-4d27-84fa-6c6ac9389df9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_21a27f37-2ccb-4c05-ab6d-783c136b83be" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts"/>
    <link:calculationArc order="9" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_f347a95a-2c5b-4a75-a68b-7550a4156c7b" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_21a27f37-2ccb-4c05-ab6d-783c136b83be" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves_626950dd-3ae6-4275-a43a-e2dc0a9b5a6b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves"/>
    <link:calculationArc order="10" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_f347a95a-2c5b-4a75-a68b-7550a4156c7b" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves_626950dd-3ae6-4275-a43a-e2dc0a9b5a6b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOther_cbfb960e-037a-4e39-943f-50a85a2d74b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOther"/>
    <link:calculationArc order="11" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_f347a95a-2c5b-4a75-a68b-7550a4156c7b" xlink:to="loc_us-gaap_DeferredTaxAssetsOther_cbfb960e-037a-4e39-943f-50a85a2d74b7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_53aa463c-a895-4a22-8f2b-2cf6db2e8b26" 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_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts_d3dcdfed-0594-4824-af16-a8e4e2b6d0c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_53aa463c-a895-4a22-8f2b-2cf6db2e8b26" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts_d3dcdfed-0594-4824-af16-a8e4e2b6d0c5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_667103df-1e43-45d3-814e-d3ba1fbbd84c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_53aa463c-a895-4a22-8f2b-2cf6db2e8b26" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_667103df-1e43-45d3-814e-d3ba1fbbd84c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DeferredTaxLiabilitiesLeaseAsset_3115f4b4-9695-4334-8b47-ebaf28d724e1" xlink:href="alg-20221231.xsd#alg_DeferredTaxLiabilitiesLeaseAsset"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_53aa463c-a895-4a22-8f2b-2cf6db2e8b26" xlink:to="loc_alg_DeferredTaxLiabilitiesLeaseAsset_3115f4b4-9695-4334-8b47-ebaf28d724e1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesOther_b6a9762c-714a-4bee-8b34-b5c7060080ea" 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_53aa463c-a895-4a22-8f2b-2cf6db2e8b26" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesOther_b6a9762c-714a-4bee-8b34-b5c7060080ea" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_9512aff6-6004-4de1-8060-0beeeb363b10" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_53aa463c-a895-4a22-8f2b-2cf6db2e8b26" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_9512aff6-6004-4de1-8060-0beeeb363b10" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsNet_5729c6d2-7241-407a-a456-62cf49b9a059" 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_08f97a44-bf6a-43a9-b036-7ce47d96c479" 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_5729c6d2-7241-407a-a456-62cf49b9a059" xlink:to="loc_us-gaap_DeferredTaxAssetsGross_08f97a44-bf6a-43a9-b036-7ce47d96c479" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_4f961eed-3d27-49c7-8a38-3d5962061cea" 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_5729c6d2-7241-407a-a456-62cf49b9a059" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_4f961eed-3d27-49c7-8a38-3d5962061cea" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilities_efef0281-1154-4ddf-b030-9664bc9bf229" 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_DeferredTaxAssetsNet_771f91c6-b919-4492-b79f-58357186a98a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsNet"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxLiabilities_efef0281-1154-4ddf-b030-9664bc9bf229" xlink:to="loc_us-gaap_DeferredTaxAssetsNet_771f91c6-b919-4492-b79f-58357186a98a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_358e6f15-e1a8-4b98-a19d-9b0bd22fd134" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxLiabilities_efef0281-1154-4ddf-b030-9664bc9bf229" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilities_358e6f15-e1a8-4b98-a19d-9b0bd22fd134" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails"/>
  <link:calculationLink xlink:role="http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_08e02ad2-5479-4b09-90a2-b5d194224fe0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_e203298a-66b6-46bc-8fa1-c4c66bd7a2ac" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_08e02ad2-5479-4b09-90a2-b5d194224fe0" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_e203298a-66b6-46bc-8fa1-c4c66bd7a2ac" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_0423f7a1-c273-488e-adac-7d86aa525a4d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_d934a7e6-c898-4b0e-9402-53e5f29c9a4b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_0423f7a1-c273-488e-adac-7d86aa525a4d" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_d934a7e6-c898-4b0e-9402-53e5f29c9a4b" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails"/>
  <link:calculationLink xlink:role="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanFundedStatusOfPlan_0ff02dcf-934e-4b2d-b6fc-ade7f760e70d" 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_DefinedBenefitPlanFairValueOfPlanAssets_a691e2bc-b8d0-4673-a806-6e1edfa68249" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DefinedBenefitPlanFundedStatusOfPlan_0ff02dcf-934e-4b2d-b6fc-ade7f760e70d" xlink:to="loc_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_a691e2bc-b8d0-4673-a806-6e1edfa68249" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanBenefitObligation_a47d50d0-5489-4a36-b885-16260f768979" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanBenefitObligation"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DefinedBenefitPlanFundedStatusOfPlan_0ff02dcf-934e-4b2d-b6fc-ade7f760e70d" xlink:to="loc_us-gaap_DefinedBenefitPlanBenefitObligation_a47d50d0-5489-4a36-b885-16260f768979" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails"/>
  <link:calculationLink xlink:role="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_036088e0-6b8d-4af5-a08b-28a9ab9689b2" 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_413ba579-02af-4d3e-84d3-917d486991ec" 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_036088e0-6b8d-4af5-a08b-28a9ab9689b2" xlink:to="loc_us-gaap_DefinedBenefitPlanServiceCost_413ba579-02af-4d3e-84d3-917d486991ec" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanInterestCost_030285fb-54ab-4a76-a85b-22d9a45f81d0" 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_036088e0-6b8d-4af5-a08b-28a9ab9689b2" xlink:to="loc_us-gaap_DefinedBenefitPlanInterestCost_030285fb-54ab-4a76-a85b-22d9a45f81d0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses_4f77ef05-91a0-4f11-89b5-2ac9451f79ff" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_036088e0-6b8d-4af5-a08b-28a9ab9689b2" xlink:to="loc_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses_4f77ef05-91a0-4f11-89b5-2ac9451f79ff" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_8aa6b5d1-f865-43ba-bdc7-d484f5b2beec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_036088e0-6b8d-4af5-a08b-28a9ab9689b2" xlink:to="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_8aa6b5d1-f865-43ba-bdc7-d484f5b2beec" xlink:type="arc"/>
  </link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>10
<FILENAME>alg-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:7e490c47-366a-4d14-b516-70bcfe20753e,g:370dcb37-b2fc-4837-9d03-6da297616798-->
<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.alamo-group.com/role/ConsolidatedStatementsofIncome" xlink:type="simple" xlink:href="alg-20221231.xsd#ConsolidatedStatementsofIncome"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/ConsolidatedStatementsofIncome" xlink:type="extended" id="ib04044c08b2a4441ad3003a38f10912b_ConsolidatedStatementsofIncome">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_3e2bfc34-c07f-470a-9f36-6e59f29a27a5" 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_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenuesAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_3e2bfc34-c07f-470a-9f36-6e59f29a27a5" xlink:to="loc_us-gaap_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_7cdd3dfb-a4ca-404c-a2ed-02ccfe7114f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_7cdd3dfb-a4ca-404c-a2ed-02ccfe7114f4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_da414bb0-bf6f-4402-9b39-5deb1ccbdb62" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_da414bb0-bf6f-4402-9b39-5deb1ccbdb62" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_06204397-7c5e-4201-a161-90b51b3edff7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_GrossProfit_06204397-7c5e-4201-a161-90b51b3edff7" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_426455f9-243d-4e82-bbe9-419214d1cf4d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_426455f9-243d-4e82-bbe9-419214d1cf4d" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfDeferredCharges_8e19b7ab-34e8-4ee9-9c00-3b8a722f1fb4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfDeferredCharges"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_AmortizationOfDeferredCharges_8e19b7ab-34e8-4ee9-9c00-3b8a722f1fb4" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_13f4a414-bf44-41cc-b51c-241c3fb2c87d" 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_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_OperatingIncomeLoss_13f4a414-bf44-41cc-b51c-241c3fb2c87d" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense_9dbe5b6d-6f38-485f-97c5-7117d8893240" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_InterestExpense_9dbe5b6d-6f38-485f-97c5-7117d8893240" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentIncomeInterest_b1ea51c7-dd83-41ab-805e-4307c8e8039b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InvestmentIncomeInterest"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_InvestmentIncomeInterest_b1ea51c7-dd83-41ab-805e-4307c8e8039b" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_379fd0e8-4249-4c14-877b-647e5a0ed9bd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_379fd0e8-4249-4c14-877b-647e5a0ed9bd" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_62e2c311-bdb6-4292-869b-df6e9aa02e8e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_62e2c311-bdb6-4292-869b-df6e9aa02e8e" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_2593b4e3-377e-4108-95f6-57e72d5a632f" 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_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_2593b4e3-377e-4108-95f6-57e72d5a632f" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_9e088e0c-1bee-4f9a-8430-08da8cc61232" 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_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_NetIncomeLoss_9e088e0c-1bee-4f9a-8430-08da8cc61232" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_b969af6f-7053-4ff4-bb05-5a21517b1af8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_3e2bfc34-c07f-470a-9f36-6e59f29a27a5" xlink:to="loc_us-gaap_EarningsPerShareAbstract_b969af6f-7053-4ff4-bb05-5a21517b1af8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic_21bd792a-a863-4d9b-944b-c03bca562534" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EarningsPerShareAbstract_b969af6f-7053-4ff4-bb05-5a21517b1af8" xlink:to="loc_us-gaap_EarningsPerShareBasic_21bd792a-a863-4d9b-944b-c03bca562534" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted_115fd1cc-c5c5-46d3-814f-18ad9085484d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EarningsPerShareAbstract_b969af6f-7053-4ff4-bb05-5a21517b1af8" xlink:to="loc_us-gaap_EarningsPerShareDiluted_115fd1cc-c5c5-46d3-814f-18ad9085484d" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_AverageCommonSharesAbstract_0b4a98f6-549f-44d9-9fca-2800d7da4efb" xlink:href="alg-20221231.xsd#alg_AverageCommonSharesAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_3e2bfc34-c07f-470a-9f36-6e59f29a27a5" xlink:to="loc_alg_AverageCommonSharesAbstract_0b4a98f6-549f-44d9-9fca-2800d7da4efb" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_54d3b8a2-a3e8-43ec-a56c-27793a9e38e5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alg_AverageCommonSharesAbstract_0b4a98f6-549f-44d9-9fca-2800d7da4efb" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_54d3b8a2-a3e8-43ec-a56c-27793a9e38e5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_7b6dcacf-a5c2-4dd8-9974-f17f70cec662" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alg_AverageCommonSharesAbstract_0b4a98f6-549f-44d9-9fca-2800d7da4efb" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_7b6dcacf-a5c2-4dd8-9974-f17f70cec662" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_7f9da50e-1c6c-4ae6-b9e4-4cce7b95e15a" 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_3e2bfc34-c07f-470a-9f36-6e59f29a27a5" xlink:to="loc_us-gaap_StatementTable_7f9da50e-1c6c-4ae6-b9e4-4cce7b95e15a" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_c61365c4-bdfa-4065-9372-d0a5cfc3744e" 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_StatementTable_7f9da50e-1c6c-4ae6-b9e4-4cce7b95e15a" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_c61365c4-bdfa-4065-9372-d0a5cfc3744e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_c61365c4-bdfa-4065-9372-d0a5cfc3744e_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_c61365c4-bdfa-4065-9372-d0a5cfc3744e" xlink:to="loc_us-gaap_SegmentDomain_c61365c4-bdfa-4065-9372-d0a5cfc3744e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_b281f94b-7f2a-471b-ae34-8a53ef8e362b" 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_c61365c4-bdfa-4065-9372-d0a5cfc3744e" xlink:to="loc_us-gaap_SegmentDomain_b281f94b-7f2a-471b-ae34-8a53ef8e362b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_VegetationManagementMember_e9e6ef2c-90d5-475d-962b-91ce794b44d1" xlink:href="alg-20221231.xsd#alg_VegetationManagementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_b281f94b-7f2a-471b-ae34-8a53ef8e362b" xlink:to="loc_alg_VegetationManagementMember_e9e6ef2c-90d5-475d-962b-91ce794b44d1" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_IndustrialManagementMember_c1b5a8b9-cf1c-48b7-a82b-d9c5ae1df369" xlink:href="alg-20221231.xsd#alg_IndustrialManagementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_b281f94b-7f2a-471b-ae34-8a53ef8e362b" xlink:to="loc_alg_IndustrialManagementMember_c1b5a8b9-cf1c-48b7-a82b-d9c5ae1df369" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity" xlink:type="simple" xlink:href="alg-20221231.xsd#ConsolidatedStatementsofStockholdersEquity"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity" xlink:type="extended" id="ica6085f361b840ee8018d80968bfe9f8_ConsolidatedStatementsofStockholdersEquity">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_cbfc5e85-25e5-4b15-86d8-c4e722de6832" 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_c12311c7-0779-4f89-b9c0-f03dbf4970c8" 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_cbfc5e85-25e5-4b15-86d8-c4e722de6832" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesOutstanding_ce5be5ca-a77b-4acc-9548-155abf147a7f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesOutstanding"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:to="loc_us-gaap_SharesOutstanding_ce5be5ca-a77b-4acc-9548-155abf147a7f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_97a0337e-c3a0-4713-8c08-fed2ada9133b" 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_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:to="loc_us-gaap_StockholdersEquity_97a0337e-c3a0-4713-8c08-fed2ada9133b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_a77bde1d-cb60-401f-97c3-48e71ba1fc49" 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_IncreaseDecreaseInStockholdersEquityRollForward_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_a77bde1d-cb60-401f-97c3-48e71ba1fc49" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_d8992b96-b3fa-44f3-bdb4-c9c8dafc95e8" 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_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_d8992b96-b3fa-44f3-bdb4-c9c8dafc95e8" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_d4ef8389-1114-403f-99c7-c3454e3080fa" 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_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_d4ef8389-1114-403f-99c7-c3454e3080fa" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_8fd713b2-c12a-4025-ac4c-c1cc5f7d9df0" 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_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_8fd713b2-c12a-4025-ac4c-c1cc5f7d9df0" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodShares_9011c8d8-94e6-48e9-ab2a-bd97a8d702cb" 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_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:to="loc_us-gaap_StockRepurchasedDuringPeriodShares_9011c8d8-94e6-48e9-ab2a-bd97a8d702cb" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodValue_85a26ab4-f976-44f2-aa24-cba7a0d2b0d5" 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_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:to="loc_us-gaap_StockRepurchasedDuringPeriodValue_85a26ab4-f976-44f2-aa24-cba7a0d2b0d5" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsCash_2fa690cf-71bd-4ab9-bc49-0f7b1c7ef8dc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsCash"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:to="loc_us-gaap_DividendsCash_2fa690cf-71bd-4ab9-bc49-0f7b1c7ef8dc" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesOutstanding_44117343-2919-4f3a-bf4b-a8fd9a9a9811" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_4fe9dc2d-1bc9-48f9-8290-6ad906e4398f" 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_d1ea8514-0c81-49fd-9b38-20e99d7b07cb" 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_cbfc5e85-25e5-4b15-86d8-c4e722de6832" xlink:to="loc_us-gaap_StatementTable_d1ea8514-0c81-49fd-9b38-20e99d7b07cb" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_01dc3227-1a78-4be9-8baa-f453cca4f423" 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_d1ea8514-0c81-49fd-9b38-20e99d7b07cb" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_01dc3227-1a78-4be9-8baa-f453cca4f423" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_01dc3227-1a78-4be9-8baa-f453cca4f423_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_01dc3227-1a78-4be9-8baa-f453cca4f423" xlink:to="loc_us-gaap_EquityComponentDomain_01dc3227-1a78-4be9-8baa-f453cca4f423_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_fcd41231-3ee0-4e68-949c-c785179d8dbf" 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_01dc3227-1a78-4be9-8baa-f453cca4f423" xlink:to="loc_us-gaap_EquityComponentDomain_fcd41231-3ee0-4e68-949c-c785179d8dbf" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_be325a74-b265-4c8d-b345-f5e1f8de974b" 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_fcd41231-3ee0-4e68-949c-c785179d8dbf" xlink:to="loc_us-gaap_CommonStockMember_be325a74-b265-4c8d-b345-f5e1f8de974b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_29aae726-2265-4e10-86b4-65073d9ebd0c" 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_fcd41231-3ee0-4e68-949c-c785179d8dbf" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_29aae726-2265-4e10-86b4-65073d9ebd0c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockMember_e9e9233a-dc38-4430-9b7e-e1fa76dc71b9" 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_fcd41231-3ee0-4e68-949c-c785179d8dbf" xlink:to="loc_us-gaap_TreasuryStockMember_e9e9233a-dc38-4430-9b7e-e1fa76dc71b9" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_0a06ae0d-681f-44f6-97b0-1aab511ab8b7" 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_fcd41231-3ee0-4e68-949c-c785179d8dbf" xlink:to="loc_us-gaap_RetainedEarningsMember_0a06ae0d-681f-44f6-97b0-1aab511ab8b7" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_2a8f9d1d-5e7e-464b-a1f4-a920f75a64f2" 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_fcd41231-3ee0-4e68-949c-c785179d8dbf" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_2a8f9d1d-5e7e-464b-a1f4-a920f75a64f2" xlink:type="arc" order="4"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/StockOptionsTables" xlink:type="simple" xlink:href="alg-20221231.xsd#StockOptionsTables"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/StockOptionsTables" xlink:type="extended" id="i61cbf622d6fd46e2b5ad6528d55aa06c_StockOptionsTables">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5147ae17-505f-436a-a01d-0388b3099d2d" 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_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_75bd5dd9-91a0-47d2-a0b8-454d4e8ef074" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5147ae17-505f-436a-a01d-0388b3099d2d" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_75bd5dd9-91a0-47d2-a0b8-454d4e8ef074" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock_7fca90e2-a37b-4450-8958-7bf3420e5427" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5147ae17-505f-436a-a01d-0388b3099d2d" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock_7fca90e2-a37b-4450-8958-7bf3420e5427" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_86b3c7ea-a710-4614-b893-62d082944d31" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5147ae17-505f-436a-a01d-0388b3099d2d" xlink:to="loc_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_86b3c7ea-a710-4614-b893-62d082944d31" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_4e521e02-d688-4784-bf6e-f6a295a9f02e" 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_5147ae17-505f-436a-a01d-0388b3099d2d" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_4e521e02-d688-4784-bf6e-f6a295a9f02e" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_a3e72b17-a3b4-4b46-a24e-a73b1f687904" 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_4e521e02-d688-4784-bf6e-f6a295a9f02e" xlink:to="loc_us-gaap_AwardTypeAxis_a3e72b17-a3b4-4b46-a24e-a73b1f687904" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_a3e72b17-a3b4-4b46-a24e-a73b1f687904_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_a3e72b17-a3b4-4b46-a24e-a73b1f687904" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_a3e72b17-a3b4-4b46-a24e-a73b1f687904_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e0540389-0ca5-4c73-93ac-69e26d81361a" 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_a3e72b17-a3b4-4b46-a24e-a73b1f687904" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e0540389-0ca5-4c73-93ac-69e26d81361a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_QualifiedStockOptionsMember_24bce6bc-7d64-4d17-9419-ab8a04fa59b7" xlink:href="alg-20221231.xsd#alg_QualifiedStockOptionsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e0540389-0ca5-4c73-93ac-69e26d81361a" xlink:to="loc_alg_QualifiedStockOptionsMember_24bce6bc-7d64-4d17-9419-ab8a04fa59b7" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_NonQualifiedOptionsMember_7fff0b71-599a-4310-b33e-f1a3e47a3b53" xlink:href="alg-20221231.xsd#alg_NonQualifiedOptionsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e0540389-0ca5-4c73-93ac-69e26d81361a" xlink:to="loc_alg_NonQualifiedOptionsMember_7fff0b71-599a-4310-b33e-f1a3e47a3b53" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansTables" xlink:type="simple" xlink:href="alg-20221231.xsd#RetirementBenefitPlansTables"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/RetirementBenefitPlansTables" xlink:type="extended" id="if467f9ec18d34d1292d28f913cf53ffe_RetirementBenefitPlansTables">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_778aa3e0-b501-4723-ada6-eb18a77923ce" 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_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock_4e87249b-9672-4d8f-b292-453c08c4e0f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_778aa3e0-b501-4723-ada6-eb18a77923ce" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock_4e87249b-9672-4d8f-b292-453c08c4e0f4" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAssumptionsUsedTableTextBlock_651e35af-1253-42a7-9a67-ab1bf4aaea96" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAssumptionsUsedTableTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_778aa3e0-b501-4723-ada6-eb18a77923ce" xlink:to="loc_us-gaap_ScheduleOfAssumptionsUsedTableTextBlock_651e35af-1253-42a7-9a67-ab1bf4aaea96" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfNetBenefitCostsTableTextBlock_dd8b6538-8360-45ca-8f88-e9c4ce6cbb72" 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_DefinedBenefitPlanDisclosureLineItems_778aa3e0-b501-4723-ada6-eb18a77923ce" xlink:to="loc_us-gaap_ScheduleOfNetBenefitCostsTableTextBlock_dd8b6538-8360-45ca-8f88-e9c4ce6cbb72" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock_2c95654f-bf89-4bfd-a0b7-f007dd713253" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_778aa3e0-b501-4723-ada6-eb18a77923ce" xlink:to="loc_us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock_2c95654f-bf89-4bfd-a0b7-f007dd713253" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock_5113fb14-fde7-432f-95db-b0a0caea76a4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_778aa3e0-b501-4723-ada6-eb18a77923ce" xlink:to="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock_5113fb14-fde7-432f-95db-b0a0caea76a4" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock_ba6d35d0-9ce8-434c-a958-248c94962481" 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_DefinedBenefitPlanDisclosureLineItems_778aa3e0-b501-4723-ada6-eb18a77923ce" xlink:to="loc_us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock_ba6d35d0-9ce8-434c-a958-248c94962481" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock_7c04d366-cff8-4ee4-b2bf-3e607ed3618e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_778aa3e0-b501-4723-ada6-eb18a77923ce" xlink:to="loc_us-gaap_ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock_7c04d366-cff8-4ee4-b2bf-3e607ed3618e" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_62d4711f-f340-4758-993a-b4e306f2e2ed" 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_778aa3e0-b501-4723-ada6-eb18a77923ce" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_62d4711f-f340-4758-993a-b4e306f2e2ed" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_f3a5533f-6733-4642-a64b-e9a5c1208107" 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_62d4711f-f340-4758-993a-b4e306f2e2ed" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_f3a5533f-6733-4642-a64b-e9a5c1208107" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_f3a5533f-6733-4642-a64b-e9a5c1208107_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_f3a5533f-6733-4642-a64b-e9a5c1208107" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_f3a5533f-6733-4642-a64b-e9a5c1208107_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_32528299-4d73-48a4-9f7c-722cba682ce6" 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_f3a5533f-6733-4642-a64b-e9a5c1208107" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_32528299-4d73-48a4-9f7c-722cba682ce6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_1bf518f0-56a7-44f4-a8b2-0cbc0b1217eb" 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_32528299-4d73-48a4-9f7c-722cba682ce6" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_1bf518f0-56a7-44f4-a8b2-0cbc0b1217eb" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_6224f5ec-9277-4ccc-9e1f-21dbe9f1823d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_32528299-4d73-48a4-9f7c-722cba682ce6" xlink:to="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_6224f5ec-9277-4ccc-9e1f-21dbe9f1823d" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#SignificantAccountingPoliciesAdditionalInformationDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails" xlink:type="extended" id="i67f39d400e474edb880b60c58c39228b_SignificantAccountingPoliciesAdditionalInformationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_alg_AccountingPoliciesLineItems_f5e12662-6043-4f0d-9284-a2a8d5fa7741" xlink:href="alg-20221231.xsd#alg_AccountingPoliciesLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments_68c38468-829c-4b4f-a789-f7fdabf4ab8a" 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_alg_AccountingPoliciesLineItems_f5e12662-6043-4f0d-9284-a2a8d5fa7741" xlink:to="loc_us-gaap_NumberOfReportableSegments_68c38468-829c-4b4f-a789-f7fdabf4ab8a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCash_1ca5dc8a-7757-42b3-acea-e37e7abc952e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedCash"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alg_AccountingPoliciesLineItems_f5e12662-6043-4f0d-9284-a2a8d5fa7741" xlink:to="loc_us-gaap_RestrictedCash_1ca5dc8a-7757-42b3-acea-e37e7abc952e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife_1be03f8a-8975-4d86-aa10-f7b2a3dfa1a5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alg_AccountingPoliciesLineItems_f5e12662-6043-4f0d-9284-a2a8d5fa7741" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife_1be03f8a-8975-4d86-aa10-f7b2a3dfa1a5" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_6e5f3265-cc80-4fe5-8717-e1d2b1c09873" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alg_AccountingPoliciesLineItems_f5e12662-6043-4f0d-9284-a2a8d5fa7741" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_6e5f3265-cc80-4fe5-8717-e1d2b1c09873" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdvertisingExpense_8b8dbb22-71e0-4f72-b332-5f05e1c24482" 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_alg_AccountingPoliciesLineItems_f5e12662-6043-4f0d-9284-a2a8d5fa7741" xlink:to="loc_us-gaap_AdvertisingExpense_8b8dbb22-71e0-4f72-b332-5f05e1c24482" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_339c5973-c985-42c7-9f49-e0a33e22fb7b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alg_AccountingPoliciesLineItems_f5e12662-6043-4f0d-9284-a2a8d5fa7741" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_339c5973-c985-42c7-9f49-e0a33e22fb7b" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_511d782e-8180-41ca-b661-2b8cf4e09291" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alg_AccountingPoliciesLineItems_f5e12662-6043-4f0d-9284-a2a8d5fa7741" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_511d782e-8180-41ca-b661-2b8cf4e09291" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_93873be8-d610-48e7-b07e-70557b5a9e9c" 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_alg_AccountingPoliciesLineItems_f5e12662-6043-4f0d-9284-a2a8d5fa7741" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_93873be8-d610-48e7-b07e-70557b5a9e9c" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_AccountingPoliciesTable_1664d0d1-e971-4939-aa45-f34c4597c657" xlink:href="alg-20221231.xsd#alg_AccountingPoliciesTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_alg_AccountingPoliciesLineItems_f5e12662-6043-4f0d-9284-a2a8d5fa7741" xlink:to="loc_alg_AccountingPoliciesTable_1664d0d1-e971-4939-aa45-f34c4597c657" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_ba0db7ce-f8dd-4a7a-a412-d92f4a818851" 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_alg_AccountingPoliciesTable_1664d0d1-e971-4939-aa45-f34c4597c657" xlink:to="loc_srt_RangeAxis_ba0db7ce-f8dd-4a7a-a412-d92f4a818851" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_ba0db7ce-f8dd-4a7a-a412-d92f4a818851_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_ba0db7ce-f8dd-4a7a-a412-d92f4a818851" xlink:to="loc_srt_RangeMember_ba0db7ce-f8dd-4a7a-a412-d92f4a818851_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_5b8d1412-3cb1-4f35-aeeb-a4d11f8bfedb" 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_ba0db7ce-f8dd-4a7a-a412-d92f4a818851" xlink:to="loc_srt_RangeMember_5b8d1412-3cb1-4f35-aeeb-a4d11f8bfedb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_07e3a0bf-d04c-4781-8018-a54b5cb898c7" 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_5b8d1412-3cb1-4f35-aeeb-a4d11f8bfedb" xlink:to="loc_srt_MinimumMember_07e3a0bf-d04c-4781-8018-a54b5cb898c7" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_8ec52665-d92d-490a-8a8c-a9dec583aa36" 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_5b8d1412-3cb1-4f35-aeeb-a4d11f8bfedb" xlink:to="loc_srt_MaximumMember_8ec52665-d92d-490a-8a8c-a9dec583aa36" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_3bdd7762-c262-4612-ab66-88814e2ae8c8" 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_alg_AccountingPoliciesTable_1664d0d1-e971-4939-aa45-f34c4597c657" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_3bdd7762-c262-4612-ab66-88814e2ae8c8" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_3bdd7762-c262-4612-ab66-88814e2ae8c8_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_3bdd7762-c262-4612-ab66-88814e2ae8c8" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_3bdd7762-c262-4612-ab66-88814e2ae8c8_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_3f21fc83-dc17-4dc2-8539-d075a74f4656" 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_3bdd7762-c262-4612-ab66-88814e2ae8c8" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_3f21fc83-dc17-4dc2-8539-d075a74f4656" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_06a98159-a590-422c-b42b-08a74e0f7c4f" 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_3f21fc83-dc17-4dc2-8539-d075a74f4656" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_06a98159-a590-422c-b42b-08a74e0f7c4f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_a3e262c8-1288-4571-8e27-c5d8952dadba" 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_alg_AccountingPoliciesTable_1664d0d1-e971-4939-aa45-f34c4597c657" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_a3e262c8-1288-4571-8e27-c5d8952dadba" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_a3e262c8-1288-4571-8e27-c5d8952dadba_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_a3e262c8-1288-4571-8e27-c5d8952dadba" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_a3e262c8-1288-4571-8e27-c5d8952dadba_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_ed8f90a4-81a7-4f00-8c34-8c09d868d93a" 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_a3e262c8-1288-4571-8e27-c5d8952dadba" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_ed8f90a4-81a7-4f00-8c34-8c09d868d93a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquipmentMember_6a7fab28-dd1a-4708-9122-e1e97253a3c7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquipmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_ed8f90a4-81a7-4f00-8c34-8c09d868d93a" xlink:to="loc_us-gaap_EquipmentMember_6a7fab28-dd1a-4708-9122-e1e97253a3c7" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_fc805b9f-4abd-4176-9d53-ee76b4036b95" 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_alg_AccountingPoliciesTable_1664d0d1-e971-4939-aa45-f34c4597c657" xlink:to="loc_us-gaap_AwardTypeAxis_fc805b9f-4abd-4176-9d53-ee76b4036b95" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_fc805b9f-4abd-4176-9d53-ee76b4036b95_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_fc805b9f-4abd-4176-9d53-ee76b4036b95" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_fc805b9f-4abd-4176-9d53-ee76b4036b95_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_3b3ca920-b98a-4443-bb91-eb3eecc9929e" 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_fc805b9f-4abd-4176-9d53-ee76b4036b95" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_3b3ca920-b98a-4443-bb91-eb3eecc9929e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember_e25eb852-2893-429e-b719-6e06cc690c71" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_3b3ca920-b98a-4443-bb91-eb3eecc9929e" xlink:to="loc_us-gaap_EmployeeStockOptionMember_e25eb852-2893-429e-b719-6e06cc690c71" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/BusinessCombinationsDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#BusinessCombinationsDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/BusinessCombinationsDetails" xlink:type="extended" id="ia9b975c45f4243ac88cfdee05ec07be3_BusinessCombinationsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_796f3c52-cb7d-42a1-b3eb-8dc06db3e12b" 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_BusinessAcquisitionPercentageOfVotingInterestsAcquired_ac95c6f9-7731-41f8-afe8-98b2f7fed888" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_796f3c52-cb7d-42a1-b3eb-8dc06db3e12b" xlink:to="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_ac95c6f9-7731-41f8-afe8-98b2f7fed888" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_a27e60d9-d943-4b8b-832a-0163c4c79fb6" 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_796f3c52-cb7d-42a1-b3eb-8dc06db3e12b" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1_a27e60d9-d943-4b8b-832a-0163c4c79fb6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_881fb072-f0f8-44fc-9a04-5c39d6816778" 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_796f3c52-cb7d-42a1-b3eb-8dc06db3e12b" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_881fb072-f0f8-44fc-9a04-5c39d6816778" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_36542932-2e9a-4874-ab67-e3095b84584c" 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_881fb072-f0f8-44fc-9a04-5c39d6816778" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_36542932-2e9a-4874-ab67-e3095b84584c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_36542932-2e9a-4874-ab67-e3095b84584c_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_36542932-2e9a-4874-ab67-e3095b84584c" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_36542932-2e9a-4874-ab67-e3095b84584c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_85294fe8-602a-4858-8fc6-b5e118f7b18c" 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_36542932-2e9a-4874-ab67-e3095b84584c" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_85294fe8-602a-4858-8fc6-b5e118f7b18c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DutchPowerCompanyBVMember_6f60c1e5-c2f0-4ac4-abc8-7d1eec13920e" xlink:href="alg-20221231.xsd#alg_DutchPowerCompanyBVMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_85294fe8-602a-4858-8fc6-b5e118f7b18c" xlink:to="loc_alg_DutchPowerCompanyBVMember_6f60c1e5-c2f0-4ac4-abc8-7d1eec13920e" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails" xlink:type="extended" id="ib3983100b0334b6cbbbb9c5c59db57f9_ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_fffb3140-2828-412c-b95a-165741a89212" 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_5386eabf-1c05-42d3-b285-e23cc882bd58" 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_fffb3140-2828-412c-b95a-165741a89212" xlink:to="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_5386eabf-1c05-42d3-b285-e23cc882bd58" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance_a0e8245f-988c-4a1d-9a15-094ba40e2cea" 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_5386eabf-1c05-42d3-b285-e23cc882bd58" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesBalance_a0e8245f-988c-4a1d-9a15-094ba40e2cea" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_4cba309d-987b-46d7-8054-ea0ca9aa60a8" 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_5386eabf-1c05-42d3-b285-e23cc882bd58" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_4cba309d-987b-46d7-8054-ea0ca9aa60a8" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesAdjustments_eafe4bec-1d14-4d69-92c2-1eba0a3e53fb" 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_5386eabf-1c05-42d3-b285-e23cc882bd58" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesAdjustments_eafe4bec-1d14-4d69-92c2-1eba0a3e53fb" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDeductions_dfd3dd11-be93-4d39-95f4-02ef09e8940e" 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_5386eabf-1c05-42d3-b285-e23cc882bd58" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDeductions_dfd3dd11-be93-4d39-95f4-02ef09e8940e" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance_0dbc23a5-6e84-4523-a3ca-6f7966063108" 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_37c6e724-f54b-487b-af69-b322f50d5c97" 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_fffb3140-2828-412c-b95a-165741a89212" xlink:to="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_37c6e724-f54b-487b-af69-b322f50d5c97" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_14b27c72-e689-4eb2-9fc3-2247a492a647" 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_37c6e724-f54b-487b-af69-b322f50d5c97" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_14b27c72-e689-4eb2-9fc3-2247a492a647" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDomain_14b27c72-e689-4eb2-9fc3-2247a492a647_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_14b27c72-e689-4eb2-9fc3-2247a492a647" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDomain_14b27c72-e689-4eb2-9fc3-2247a492a647_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDomain_b212c68f-151f-4156-8531-cbf28442a2fe" 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_14b27c72-e689-4eb2-9fc3-2247a492a647" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDomain_b212c68f-151f-4156-8531-cbf28442a2fe" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_SECSchedule1209SalesDiscountsMember_aa74c836-125a-4fe8-8457-f4940ac68f1b" xlink:href="alg-20221231.xsd#alg_SECSchedule1209SalesDiscountsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDomain_b212c68f-151f-4156-8531-cbf28442a2fe" xlink:to="loc_alg_SECSchedule1209SalesDiscountsMember_aa74c836-125a-4fe8-8457-f4940ac68f1b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryValuationReserveMember_99759b41-f942-498f-b7e3-edf19d77fffe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryValuationReserveMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDomain_b212c68f-151f-4156-8531-cbf28442a2fe" xlink:to="loc_us-gaap_InventoryValuationReserveMember_99759b41-f942-498f-b7e3-edf19d77fffe" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WarrantyReservesMember_6e246e9d-1ccb-494b-ba0c-26654ae50277" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantyReservesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDomain_b212c68f-151f-4156-8531-cbf28442a2fe" xlink:to="loc_us-gaap_WarrantyReservesMember_6e246e9d-1ccb-494b-ba0c-26654ae50277" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#ValuationandQualifyingAccountsAdditionalInformationDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails" xlink:type="extended" id="i0a45a173ef5849e3a7bc1c54de424f97_ValuationandQualifyingAccountsAdditionalInformationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_89845ac5-64ef-4560-a8cf-80a1ebbf159a" 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_ValuationAllowancesAndReservesBalance_4665162a-2640-4e60-ace9-1200002a6634" 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_AccountsNotesAndLoansReceivableLineItems_89845ac5-64ef-4560-a8cf-80a1ebbf159a" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesBalance_4665162a-2640-4e60-ace9-1200002a6634" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryValuationReserves_57ff0f8a-14cd-478f-8f86-e16bb60a0d5c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryValuationReserves"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_89845ac5-64ef-4560-a8cf-80a1ebbf159a" xlink:to="loc_us-gaap_InventoryValuationReserves_57ff0f8a-14cd-478f-8f86-e16bb60a0d5c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_InventoryUsagePeriod_afe132e7-8743-4f99-97cb-cc1974eab1a7" xlink:href="alg-20221231.xsd#alg_InventoryUsagePeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_89845ac5-64ef-4560-a8cf-80a1ebbf159a" xlink:to="loc_alg_InventoryUsagePeriod_afe132e7-8743-4f99-97cb-cc1974eab1a7" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_InventoryReservePercentage_05862e56-b747-42a4-86dc-5e931c153442" xlink:href="alg-20221231.xsd#alg_InventoryReservePercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_89845ac5-64ef-4560-a8cf-80a1ebbf159a" xlink:to="loc_alg_InventoryReservePercentage_05862e56-b747-42a4-86dc-5e931c153442" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_ProductWarrantyPeriod_66e30c5b-895d-478e-acf7-b80cbaff984b" xlink:href="alg-20221231.xsd#alg_ProductWarrantyPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_89845ac5-64ef-4560-a8cf-80a1ebbf159a" xlink:to="loc_alg_ProductWarrantyPeriod_66e30c5b-895d-478e-acf7-b80cbaff984b" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation_b4226c9a-3b01-4e21-927b-7465fbe3877f" xlink:href="alg-20221231.xsd#alg_ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_89845ac5-64ef-4560-a8cf-80a1ebbf159a" xlink:to="loc_alg_ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation_b4226c9a-3b01-4e21-927b-7465fbe3877f" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_ProductWarrantyAccrualPeriodForSalesUsedInCalculation_5363f518-be79-4a63-a5fb-5c3a841bd9c9" xlink:href="alg-20221231.xsd#alg_ProductWarrantyAccrualPeriodForSalesUsedInCalculation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_89845ac5-64ef-4560-a8cf-80a1ebbf159a" xlink:to="loc_alg_ProductWarrantyAccrualPeriodForSalesUsedInCalculation_5363f518-be79-4a63-a5fb-5c3a841bd9c9" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_ProductWarrantyAccrualLagPeriod_5418a5f8-c133-4951-910b-7148cfefb40c" xlink:href="alg-20221231.xsd#alg_ProductWarrantyAccrualLagPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_89845ac5-64ef-4560-a8cf-80a1ebbf159a" xlink:to="loc_alg_ProductWarrantyAccrualLagPeriod_5418a5f8-c133-4951-910b-7148cfefb40c" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_7def46e9-7276-4c5b-aa4a-ae8e8014502f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_89845ac5-64ef-4560-a8cf-80a1ebbf159a" xlink:to="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_7def46e9-7276-4c5b-aa4a-ae8e8014502f" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_77565f7f-8aa8-4b4d-86b0-611a416d6ff9" 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_89845ac5-64ef-4560-a8cf-80a1ebbf159a" xlink:to="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_77565f7f-8aa8-4b4d-86b0-611a416d6ff9" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_362e707f-512e-4804-8633-d215c7dac9a6" 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_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_77565f7f-8aa8-4b4d-86b0-611a416d6ff9" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_362e707f-512e-4804-8633-d215c7dac9a6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDomain_362e707f-512e-4804-8633-d215c7dac9a6_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_362e707f-512e-4804-8633-d215c7dac9a6" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDomain_362e707f-512e-4804-8633-d215c7dac9a6_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDomain_2aeffd38-79e6-44cc-80b4-de43be0a93aa" 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_362e707f-512e-4804-8633-d215c7dac9a6" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDomain_2aeffd38-79e6-44cc-80b4-de43be0a93aa" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_SECSchedule1209SalesDiscountsMember_932b25cd-6a41-411d-b1e9-466071f835c9" xlink:href="alg-20221231.xsd#alg_SECSchedule1209SalesDiscountsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDomain_2aeffd38-79e6-44cc-80b4-de43be0a93aa" xlink:to="loc_alg_SECSchedule1209SalesDiscountsMember_932b25cd-6a41-411d-b1e9-466071f835c9" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_9b47ce6f-f42a-43fa-84f9-68afeb999dbe" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductOrServiceAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_77565f7f-8aa8-4b4d-86b0-611a416d6ff9" xlink:to="loc_srt_ProductOrServiceAxis_9b47ce6f-f42a-43fa-84f9-68afeb999dbe" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_9b47ce6f-f42a-43fa-84f9-68afeb999dbe_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_9b47ce6f-f42a-43fa-84f9-68afeb999dbe" xlink:to="loc_srt_ProductsAndServicesDomain_9b47ce6f-f42a-43fa-84f9-68afeb999dbe_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_c32d2a09-a591-453b-a50a-09e709bbb455" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_9b47ce6f-f42a-43fa-84f9-68afeb999dbe" xlink:to="loc_srt_ProductsAndServicesDomain_c32d2a09-a591-453b-a50a-09e709bbb455" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WholegoodUnitsMember_c8c6a7e5-7cf7-4f56-b6f6-553f292bc64a" xlink:href="alg-20221231.xsd#alg_WholegoodUnitsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_c32d2a09-a591-453b-a50a-09e709bbb455" xlink:to="loc_alg_WholegoodUnitsMember_c8c6a7e5-7cf7-4f56-b6f6-553f292bc64a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_PartsMember_0432b6cd-cf12-4ba7-8cb7-90b19ad5eb7c" xlink:href="alg-20221231.xsd#alg_PartsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_c32d2a09-a591-453b-a50a-09e709bbb455" xlink:to="loc_alg_PartsMember_0432b6cd-cf12-4ba7-8cb7-90b19ad5eb7c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_081e492e-4965-4aa3-8640-b133658f1722" 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_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_77565f7f-8aa8-4b4d-86b0-611a416d6ff9" xlink:to="loc_srt_RangeAxis_081e492e-4965-4aa3-8640-b133658f1722" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_081e492e-4965-4aa3-8640-b133658f1722_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_081e492e-4965-4aa3-8640-b133658f1722" xlink:to="loc_srt_RangeMember_081e492e-4965-4aa3-8640-b133658f1722_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_7c6cb9b3-206c-4dd9-8dbf-a8944465e7c6" 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_081e492e-4965-4aa3-8640-b133658f1722" xlink:to="loc_srt_RangeMember_7c6cb9b3-206c-4dd9-8dbf-a8944465e7c6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_57dab17d-b999-42c7-9857-ef3ac6be80c9" 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_7c6cb9b3-206c-4dd9-8dbf-a8944465e7c6" xlink:to="loc_srt_MinimumMember_57dab17d-b999-42c7-9857-ef3ac6be80c9" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_f9db7722-2e69-4fc1-b3f5-7a0052fbb818" 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_7c6cb9b3-206c-4dd9-8dbf-a8944465e7c6" xlink:to="loc_srt_MaximumMember_f9db7722-2e69-4fc1-b3f5-7a0052fbb818" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/PropertyPlantandEquipmentDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#PropertyPlantandEquipmentDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/PropertyPlantandEquipmentDetails" xlink:type="extended" id="i40bb3b0e967f4e80989a3680aaddf875_PropertyPlantandEquipmentDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_fdc4d823-6b8d-4383-8e47-21a737aa3f99" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_e034c672-ac01-4b19-9f02-e7800c2b24c6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_fdc4d823-6b8d-4383-8e47-21a737aa3f99" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_e034c672-ac01-4b19-9f02-e7800c2b24c6" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_4536adfb-9a51-4791-93da-1a27369a9d64" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_fdc4d823-6b8d-4383-8e47-21a737aa3f99" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_4536adfb-9a51-4791-93da-1a27369a9d64" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_8f370cc8-9460-415f-8732-9df0cf481ccb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_fdc4d823-6b8d-4383-8e47-21a737aa3f99" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_8f370cc8-9460-415f-8732-9df0cf481ccb" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_6d12b92e-1ef0-40db-86a3-29c9f1bdfad9" 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_PropertyPlantAndEquipmentLineItems_fdc4d823-6b8d-4383-8e47-21a737aa3f99" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_6d12b92e-1ef0-40db-86a3-29c9f1bdfad9" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_01d4f0a5-5fdb-4033-91ef-e83ff547b668" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_fdc4d823-6b8d-4383-8e47-21a737aa3f99" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_01d4f0a5-5fdb-4033-91ef-e83ff547b668" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_6a0d5f81-2c93-4485-9361-707373143e75" 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_ScheduleOfPropertyPlantAndEquipmentTable_01d4f0a5-5fdb-4033-91ef-e83ff547b668" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_6a0d5f81-2c93-4485-9361-707373143e75" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_6a0d5f81-2c93-4485-9361-707373143e75_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_6a0d5f81-2c93-4485-9361-707373143e75" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_6a0d5f81-2c93-4485-9361-707373143e75_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8eedd3b3-6197-468a-bde0-1d8c18b532e9" 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_6a0d5f81-2c93-4485-9361-707373143e75" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8eedd3b3-6197-468a-bde0-1d8c18b532e9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LandMember_84cc1fa3-cdcb-40f5-8e3d-8857103c9c54" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8eedd3b3-6197-468a-bde0-1d8c18b532e9" xlink:to="loc_us-gaap_LandMember_84cc1fa3-cdcb-40f5-8e3d-8857103c9c54" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BuildingAndBuildingImprovementsMember_3c28be22-5d4f-475e-8ce7-ca6b10b621a9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingAndBuildingImprovementsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8eedd3b3-6197-468a-bde0-1d8c18b532e9" xlink:to="loc_us-gaap_BuildingAndBuildingImprovementsMember_3c28be22-5d4f-475e-8ce7-ca6b10b621a9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MachineryAndEquipmentMember_ce27a012-5009-4cd4-9280-6a2e7548e15a" 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_8eedd3b3-6197-468a-bde0-1d8c18b532e9" xlink:to="loc_us-gaap_MachineryAndEquipmentMember_ce27a012-5009-4cd4-9280-6a2e7548e15a" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_71196f5e-4452-4d17-9757-f3799e20e13d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8eedd3b3-6197-468a-bde0-1d8c18b532e9" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_71196f5e-4452-4d17-9757-f3799e20e13d" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_8dcd2f0f-ecc0-4a19-9343-a5b6cf6188ab" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SoftwareAndSoftwareDevelopmentCostsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8eedd3b3-6197-468a-bde0-1d8c18b532e9" xlink:to="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_8dcd2f0f-ecc0-4a19-9343-a5b6cf6188ab" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransportationEquipmentMember_40d3fcb7-e7a4-4c04-93eb-1a1080b34e29" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TransportationEquipmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8eedd3b3-6197-468a-bde0-1d8c18b532e9" xlink:to="loc_us-gaap_TransportationEquipmentMember_40d3fcb7-e7a4-4c04-93eb-1a1080b34e29" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_bad18b15-79ed-45d2-ae76-14c4240b27c8" 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_ScheduleOfPropertyPlantAndEquipmentTable_01d4f0a5-5fdb-4033-91ef-e83ff547b668" xlink:to="loc_srt_RangeAxis_bad18b15-79ed-45d2-ae76-14c4240b27c8" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_bad18b15-79ed-45d2-ae76-14c4240b27c8_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_bad18b15-79ed-45d2-ae76-14c4240b27c8" xlink:to="loc_srt_RangeMember_bad18b15-79ed-45d2-ae76-14c4240b27c8_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_572ea0d5-b168-4d4e-91f0-df6e3f449749" 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_bad18b15-79ed-45d2-ae76-14c4240b27c8" xlink:to="loc_srt_RangeMember_572ea0d5-b168-4d4e-91f0-df6e3f449749" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_11de2efc-03d1-42bd-bdb7-4b1a1347bca4" 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_572ea0d5-b168-4d4e-91f0-df6e3f449749" xlink:to="loc_srt_MinimumMember_11de2efc-03d1-42bd-bdb7-4b1a1347bca4" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_e7af0ced-07e0-4bb2-8367-5caae3585549" 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_572ea0d5-b168-4d4e-91f0-df6e3f449749" xlink:to="loc_srt_MaximumMember_e7af0ced-07e0-4bb2-8367-5caae3585549" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/GoodwillDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#GoodwillDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/GoodwillDetails" xlink:type="extended" id="ica2e2bc784374db3884ace0708922b3f_GoodwillDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillLineItems_65b1848c-0364-4b12-947b-e1279331a5bb" 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_142002a1-3b34-4c02-907a-d8233ed84223" 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_65b1848c-0364-4b12-947b-e1279331a5bb" xlink:to="loc_us-gaap_GoodwillRollForward_142002a1-3b34-4c02-907a-d8233ed84223" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_6bf7b849-c84f-4880-abbc-d48200c32d9a" 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_142002a1-3b34-4c02-907a-d8233ed84223" xlink:to="loc_us-gaap_Goodwill_6bf7b849-c84f-4880-abbc-d48200c32d9a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_e3e3dc83-3f82-4135-92df-f5e7960ac065" 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_142002a1-3b34-4c02-907a-d8233ed84223" xlink:to="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_e3e3dc83-3f82-4135-92df-f5e7960ac065" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod_30f2cd98-f439-4047-8e8f-b955074ea531" 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_142002a1-3b34-4c02-907a-d8233ed84223" xlink:to="loc_us-gaap_GoodwillAcquiredDuringPeriod_30f2cd98-f439-4047-8e8f-b955074ea531" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_0467b1a2-c211-42c8-b20c-5355fbec7dc5" 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_142002a1-3b34-4c02-907a-d8233ed84223" xlink:to="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_0467b1a2-c211-42c8-b20c-5355fbec7dc5" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_7d8f1230-8f38-46ef-b48c-6c9cfd39f937" 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_18418f9c-3370-443e-aff3-e3cfba7f072d" 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_65b1848c-0364-4b12-947b-e1279331a5bb" xlink:to="loc_us-gaap_ScheduleOfGoodwillTable_18418f9c-3370-443e-aff3-e3cfba7f072d" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_fab74dcd-7116-4b2d-801a-9face167dc2e" 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_18418f9c-3370-443e-aff3-e3cfba7f072d" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_fab74dcd-7116-4b2d-801a-9face167dc2e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_fab74dcd-7116-4b2d-801a-9face167dc2e_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_fab74dcd-7116-4b2d-801a-9face167dc2e" xlink:to="loc_us-gaap_SegmentDomain_fab74dcd-7116-4b2d-801a-9face167dc2e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_5c2bf575-d27b-45a2-accd-fb23c0487487" 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_fab74dcd-7116-4b2d-801a-9face167dc2e" xlink:to="loc_us-gaap_SegmentDomain_5c2bf575-d27b-45a2-accd-fb23c0487487" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_VegetationManagementMember_4cda4a1d-24d8-441c-ada7-4e5784e2a283" xlink:href="alg-20221231.xsd#alg_VegetationManagementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_5c2bf575-d27b-45a2-accd-fb23c0487487" xlink:to="loc_alg_VegetationManagementMember_4cda4a1d-24d8-441c-ada7-4e5784e2a283" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_IndustrialManagementMember_77dd64bd-dab2-4dae-98b4-18b0d2bccfd8" xlink:href="alg-20221231.xsd#alg_IndustrialManagementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_5c2bf575-d27b-45a2-accd-fb23c0487487" xlink:to="loc_alg_IndustrialManagementMember_77dd64bd-dab2-4dae-98b4-18b0d2bccfd8" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails" xlink:type="extended" id="i36512449846948c59ed71f78fe2e0539_IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_6cb41ff0-d62e-4894-b6bb-ec9ac23ffe55" xlink:href="alg-20221231.xsd#alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife_7e846349-1665-4d6c-af3a-1e914e5d9845" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_6cb41ff0-d62e-4894-b6bb-ec9ac23ffe55" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife_7e846349-1665-4d6c-af3a-1e914e5d9845" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_bf654399-3fec-492d-a299-0e21857fede1" 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_6cb41ff0-d62e-4894-b6bb-ec9ac23ffe55" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_bf654399-3fec-492d-a299-0e21857fede1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_f52a1d2e-cbfb-40c1-afa0-d9fa3cf7f153" 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_6cb41ff0-d62e-4894-b6bb-ec9ac23ffe55" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_f52a1d2e-cbfb-40c1-afa0-d9fa3cf7f153" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_f3b8826d-f4a2-4f5a-b259-2d5270da4fb0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_6cb41ff0-d62e-4894-b6bb-ec9ac23ffe55" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_f3b8826d-f4a2-4f5a-b259-2d5270da4fb0" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_13f06d9b-c079-42ba-8e02-7d844a67f0b0" 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_6cb41ff0-d62e-4894-b6bb-ec9ac23ffe55" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_13f06d9b-c079-42ba-8e02-7d844a67f0b0" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_238eb57e-25b6-4c41-8c16-8fbe763f3953" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_6cb41ff0-d62e-4894-b6bb-ec9ac23ffe55" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_238eb57e-25b6-4c41-8c16-8fbe763f3953" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_2092cccd-62b3-464d-94c4-9c3ccbd921b7" xlink:href="alg-20221231.xsd#alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_6cb41ff0-d62e-4894-b6bb-ec9ac23ffe55" xlink:to="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_2092cccd-62b3-464d-94c4-9c3ccbd921b7" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_285fc675-603f-423c-bcbc-11074d5a4758" 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_2092cccd-62b3-464d-94c4-9c3ccbd921b7" xlink:to="loc_srt_RangeAxis_285fc675-603f-423c-bcbc-11074d5a4758" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_285fc675-603f-423c-bcbc-11074d5a4758_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_285fc675-603f-423c-bcbc-11074d5a4758" xlink:to="loc_srt_RangeMember_285fc675-603f-423c-bcbc-11074d5a4758_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_77722f8c-703b-41e2-bda6-56849db90bdd" 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_285fc675-603f-423c-bcbc-11074d5a4758" xlink:to="loc_srt_RangeMember_77722f8c-703b-41e2-bda6-56849db90bdd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_558782dc-fa8c-4232-a026-4bd1c062a462" 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_77722f8c-703b-41e2-bda6-56849db90bdd" xlink:to="loc_srt_MinimumMember_558782dc-fa8c-4232-a026-4bd1c062a462" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_6ca6adb5-8151-47c2-8831-102e692528b1" 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_77722f8c-703b-41e2-bda6-56849db90bdd" xlink:to="loc_srt_MaximumMember_6ca6adb5-8151-47c2-8831-102e692528b1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cf44fe73-5c87-434a-a141-4373e5555ba0" 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_2092cccd-62b3-464d-94c4-9c3ccbd921b7" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cf44fe73-5c87-434a-a141-4373e5555ba0" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_cf44fe73-5c87-434a-a141-4373e5555ba0_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_cf44fe73-5c87-434a-a141-4373e5555ba0" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_cf44fe73-5c87-434a-a141-4373e5555ba0_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_dbd6e19e-a81f-4d0c-9f10-da79298602fb" 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_cf44fe73-5c87-434a-a141-4373e5555ba0" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_dbd6e19e-a81f-4d0c-9f10-da79298602fb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksAndTradeNamesMember_1c40936f-101c-4ff1-a9fb-eed8d534368f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksAndTradeNamesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_dbd6e19e-a81f-4d0c-9f10-da79298602fb" xlink:to="loc_us-gaap_TrademarksAndTradeNamesMember_1c40936f-101c-4ff1-a9fb-eed8d534368f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember_6ea5fb7b-622f-46a9-b9fa-7bf9af51e274" 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_dbd6e19e-a81f-4d0c-9f10-da79298602fb" xlink:to="loc_us-gaap_CustomerRelationshipsMember_6ea5fb7b-622f-46a9-b9fa-7bf9af51e274" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntellectualPropertyMember_916add89-ed76-4d55-bfae-7d799c09beef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntellectualPropertyMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_dbd6e19e-a81f-4d0c-9f10-da79298602fb" xlink:to="loc_us-gaap_IntellectualPropertyMember_916add89-ed76-4d55-bfae-7d799c09beef" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OffMarketFavorableLeaseMember_7591c3bf-2a55-489f-8d91-bea587015bc5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OffMarketFavorableLeaseMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_dbd6e19e-a81f-4d0c-9f10-da79298602fb" xlink:to="loc_us-gaap_OffMarketFavorableLeaseMember_7591c3bf-2a55-489f-8d91-bea587015bc5" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_36d3f1df-b81e-427a-aee9-6698e180bbbf" 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_2092cccd-62b3-464d-94c4-9c3ccbd921b7" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_36d3f1df-b81e-427a-aee9-6698e180bbbf" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_36d3f1df-b81e-427a-aee9-6698e180bbbf_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_36d3f1df-b81e-427a-aee9-6698e180bbbf" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_36d3f1df-b81e-427a-aee9-6698e180bbbf_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_9b29676a-6b4e-44ac-8d68-3667ca74bf5d" 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_36d3f1df-b81e-427a-aee9-6698e180bbbf" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_9b29676a-6b4e-44ac-8d68-3667ca74bf5d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksAndTradeNamesMember_f3ef7707-bd69-49e1-b8f8-2ee184108399" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksAndTradeNamesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_9b29676a-6b4e-44ac-8d68-3667ca74bf5d" xlink:to="loc_us-gaap_TrademarksAndTradeNamesMember_f3ef7707-bd69-49e1-b8f8-2ee184108399" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#IntangibleAssetsAdditionalInformationDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails" xlink:type="extended" id="if61ddcb24b374322b655fe24ab0fae72_IntangibleAssetsAdditionalInformationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_b956faab-fb8c-4644-856d-fc0e277f5f04" xlink:href="alg-20221231.xsd#alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_9a2472b2-0004-465a-bfc3-fb3159dea442" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_b956faab-fb8c-4644-856d-fc0e277f5f04" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_9a2472b2-0004-465a-bfc3-fb3159dea442" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_f1a40ef8-5fd2-4147-bd48-e24149b77fc1" 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_b956faab-fb8c-4644-856d-fc0e277f5f04" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_f1a40ef8-5fd2-4147-bd48-e24149b77fc1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_e3c2b23b-3769-4175-b55f-4f489a688f1b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_b956faab-fb8c-4644-856d-fc0e277f5f04" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_e3c2b23b-3769-4175-b55f-4f489a688f1b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_06c923bf-4e68-4186-a3fc-a68235fb27d3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_b956faab-fb8c-4644-856d-fc0e277f5f04" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_06c923bf-4e68-4186-a3fc-a68235fb27d3" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_265bcc89-ac5c-461a-84a3-8468c11c342d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_b956faab-fb8c-4644-856d-fc0e277f5f04" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_265bcc89-ac5c-461a-84a3-8468c11c342d" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_d572ddd7-2e63-497b-8e5d-918510ee1371" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_b956faab-fb8c-4644-856d-fc0e277f5f04" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_d572ddd7-2e63-497b-8e5d-918510ee1371" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_15464205-6553-4c46-b50d-6851e014255a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_b956faab-fb8c-4644-856d-fc0e277f5f04" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_15464205-6553-4c46-b50d-6851e014255a" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_8142bdc9-fbda-4311-82c5-dbf9e300f05a" 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_b956faab-fb8c-4644-856d-fc0e277f5f04" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_8142bdc9-fbda-4311-82c5-dbf9e300f05a" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_88ea2138-ed23-429c-843a-0288b3889c70" xlink:href="alg-20221231.xsd#alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_b956faab-fb8c-4644-856d-fc0e277f5f04" xlink:to="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_88ea2138-ed23-429c-843a-0288b3889c70" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_5b3f26a8-35a3-4ef6-9f11-788f45450489" 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_88ea2138-ed23-429c-843a-0288b3889c70" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_5b3f26a8-35a3-4ef6-9f11-788f45450489" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_5b3f26a8-35a3-4ef6-9f11-788f45450489_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_5b3f26a8-35a3-4ef6-9f11-788f45450489" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_5b3f26a8-35a3-4ef6-9f11-788f45450489_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c89e4778-f324-465a-822a-d0561729e4cb" 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_5b3f26a8-35a3-4ef6-9f11-788f45450489" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c89e4778-f324-465a-822a-d0561729e4cb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksAndTradeNamesMember_a1467ccc-31b9-4f15-bb3b-e62c1badd43c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksAndTradeNamesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c89e4778-f324-465a-822a-d0561729e4cb" xlink:to="loc_us-gaap_TrademarksAndTradeNamesMember_a1467ccc-31b9-4f15-bb3b-e62c1badd43c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember_2ee51e6a-9827-49dd-982e-3d2cdac00421" 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_c89e4778-f324-465a-822a-d0561729e4cb" xlink:to="loc_us-gaap_CustomerRelationshipsMember_2ee51e6a-9827-49dd-982e-3d2cdac00421" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntellectualPropertyMember_64114975-8174-4b51-b200-b4b1826952cf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntellectualPropertyMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c89e4778-f324-465a-822a-d0561729e4cb" xlink:to="loc_us-gaap_IntellectualPropertyMember_64114975-8174-4b51-b200-b4b1826952cf" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OffMarketFavorableLeaseMember_2c2d81cc-cf74-45f1-9d37-f19f314365c3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OffMarketFavorableLeaseMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c89e4778-f324-465a-822a-d0561729e4cb" xlink:to="loc_us-gaap_OffMarketFavorableLeaseMember_2c2d81cc-cf74-45f1-9d37-f19f314365c3" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_d9de7404-6ceb-4bdb-a882-07fd29ca0bca" 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_88ea2138-ed23-429c-843a-0288b3889c70" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_d9de7404-6ceb-4bdb-a882-07fd29ca0bca" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_d9de7404-6ceb-4bdb-a882-07fd29ca0bca_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_d9de7404-6ceb-4bdb-a882-07fd29ca0bca" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_d9de7404-6ceb-4bdb-a882-07fd29ca0bca_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_f42b540f-de92-471f-a4ee-8d15c847ff85" 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_d9de7404-6ceb-4bdb-a882-07fd29ca0bca" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_f42b540f-de92-471f-a4ee-8d15c847ff85" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradeNamesMember_4751c294-d4e8-42f5-8f34-3e99e15851bc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradeNamesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_f42b540f-de92-471f-a4ee-8d15c847ff85" xlink:to="loc_us-gaap_TradeNamesMember_4751c294-d4e8-42f5-8f34-3e99e15851bc" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_7ee2bf74-a6db-4291-ac67-61f76745aac1" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_88ea2138-ed23-429c-843a-0288b3889c70" xlink:to="loc_dei_LegalEntityAxis_7ee2bf74-a6db-4291-ac67-61f76745aac1" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_7ee2bf74-a6db-4291-ac67-61f76745aac1_default" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_7ee2bf74-a6db-4291-ac67-61f76745aac1" xlink:to="loc_dei_EntityDomain_7ee2bf74-a6db-4291-ac67-61f76745aac1_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_860634f6-a7fa-415c-b34b-0703250d4264" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_7ee2bf74-a6db-4291-ac67-61f76745aac1" xlink:to="loc_dei_EntityDomain_860634f6-a7fa-415c-b34b-0703250d4264" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_GradallMember_ffc67e78-6c5f-4aad-b5b8-af0403c7b1c9" xlink:href="alg-20221231.xsd#alg_GradallMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_860634f6-a7fa-415c-b34b-0703250d4264" xlink:to="loc_alg_GradallMember_ffc67e78-6c5f-4aad-b5b8-af0403c7b1c9" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_BushHogMember_2ca480ef-5c91-42ae-8499-f4e1c1594b78" xlink:href="alg-20221231.xsd#alg_BushHogMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_860634f6-a7fa-415c-b34b-0703250d4264" xlink:to="loc_alg_BushHogMember_2ca480ef-5c91-42ae-8499-f4e1c1594b78" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#LongTermDebtScheduleofLongTermDebtDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails" xlink:type="extended" id="ica48f59a6b214c52a3771c8d35935caf_LongTermDebtScheduleofLongTermDebtDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_fa0ac032-a9b2-4813-939a-dac6d2ca9016" 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_LongTermDebt_998d7612-0616-47f2-9259-4f756c481a36" 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_fa0ac032-a9b2-4813-939a-dac6d2ca9016" xlink:to="loc_us-gaap_LongTermDebt_998d7612-0616-47f2-9259-4f756c481a36" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiability_78937f0c-f0a2-417a-8e9f-d97c3dd35739" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiability"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_fa0ac032-a9b2-4813-939a-dac6d2ca9016" xlink:to="loc_us-gaap_FinanceLeaseLiability_78937f0c-f0a2-417a-8e9f-d97c3dd35739" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities_ea7dd858-259d-4177-bf4b-531848c71b7f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_fa0ac032-a9b2-4813-939a-dac6d2ca9016" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities_ea7dd858-259d-4177-bf4b-531848c71b7f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_a3283979-6112-4aff-b4e9-7732cdae7e3f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_fa0ac032-a9b2-4813-939a-dac6d2ca9016" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_a3283979-6112-4aff-b4e9-7732cdae7e3f" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_9d2abefe-1626-450d-9df6-9924b75b9aea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_fa0ac032-a9b2-4813-939a-dac6d2ca9016" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_9d2abefe-1626-450d-9df6-9924b75b9aea" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_bbd9031a-5eb9-4127-bd1e-bdb0a203d304" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_fa0ac032-a9b2-4813-939a-dac6d2ca9016" xlink:to="loc_us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_bbd9031a-5eb9-4127-bd1e-bdb0a203d304" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList_f6af6bb9-290f-452d-b3bf-e6db770797cd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_fa0ac032-a9b2-4813-939a-dac6d2ca9016" xlink:to="loc_us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList_f6af6bb9-290f-452d-b3bf-e6db770797cd" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_67c44b01-ec34-44ca-934a-3697a46e742f" 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_fa0ac032-a9b2-4813-939a-dac6d2ca9016" xlink:to="loc_us-gaap_DebtInstrumentTable_67c44b01-ec34-44ca-934a-3697a46e742f" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_d1bb132c-727d-4d0c-baf6-8a330340e6bc" 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_67c44b01-ec34-44ca-934a-3697a46e742f" xlink:to="loc_us-gaap_CreditFacilityAxis_d1bb132c-727d-4d0c-baf6-8a330340e6bc" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_d1bb132c-727d-4d0c-baf6-8a330340e6bc_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_d1bb132c-727d-4d0c-baf6-8a330340e6bc" xlink:to="loc_us-gaap_CreditFacilityDomain_d1bb132c-727d-4d0c-baf6-8a330340e6bc_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_e41df83f-e524-4933-9220-d1c7a522f523" 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_d1bb132c-727d-4d0c-baf6-8a330340e6bc" xlink:to="loc_us-gaap_CreditFacilityDomain_e41df83f-e524-4933-9220-d1c7a522f523" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditMember_b4b24dd9-6873-4c70-8b21-3c9b661a2c50" 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_CreditFacilityDomain_e41df83f-e524-4933-9220-d1c7a522f523" xlink:to="loc_us-gaap_LineOfCreditMember_b4b24dd9-6873-4c70-8b21-3c9b661a2c50" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_cd84ebb4-c1d4-4fc2-80f3-3349d004615f" 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_67c44b01-ec34-44ca-934a-3697a46e742f" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_cd84ebb4-c1d4-4fc2-80f3-3349d004615f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_cd84ebb4-c1d4-4fc2-80f3-3349d004615f_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_cd84ebb4-c1d4-4fc2-80f3-3349d004615f" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_cd84ebb4-c1d4-4fc2-80f3-3349d004615f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_93a2363c-700a-4acb-8821-0e5de14004ac" 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_cd84ebb4-c1d4-4fc2-80f3-3349d004615f" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_93a2363c-700a-4acb-8821-0e5de14004ac" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnsecuredDebtMember_1b9a1a96-e821-44a3-956a-40b6471e7a67" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnsecuredDebtMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_93a2363c-700a-4acb-8821-0e5de14004ac" xlink:to="loc_us-gaap_UnsecuredDebtMember_1b9a1a96-e821-44a3-956a-40b6471e7a67" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MediumTermNotesMember_3377e2cd-237b-4042-8b40-9baae68facd3" 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_93a2363c-700a-4acb-8821-0e5de14004ac" xlink:to="loc_us-gaap_MediumTermNotesMember_3377e2cd-237b-4042-8b40-9baae68facd3" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#LongTermDebtAdditionalInformationDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails" xlink:type="extended" id="i8844830cda324d72b39c901a009f0800_LongTermDebtAdditionalInformationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" 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_LineOfCreditFacilityMaximumBorrowingCapacity_8d6aee44-49c1-4ba0-9e25-016e0c786059" 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_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_8d6aee44-49c1-4ba0-9e25-016e0c786059" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityExpirationPeriod_566497b5-25e3-46d8-909f-7c9968dd2e8d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityExpirationPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LineOfCreditFacilityExpirationPeriod_566497b5-25e3-46d8-909f-7c9968dd2e8d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentPeriodicPayment_b1e0e430-95a4-4500-aaf7-f8cf64c692cd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentPeriodicPayment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_DebtInstrumentPeriodicPayment_b1e0e430-95a4-4500-aaf7-f8cf64c692cd" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_1788a45f-d47d-4a5d-8b54-e6c25ca04cad" 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_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_1788a45f-d47d-4a5d-8b54-e6c25ca04cad" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_2c145518-2b26-4521-a363-f4825926f0ce" 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_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_2c145518-2b26-4521-a363-f4825926f0ce" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount_4c9a3e6d-c920-4d69-bdb5-fbfa06f097d3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount_4c9a3e6d-c920-4d69-bdb5-fbfa06f097d3" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DebtInstrumentNumberOfCovenants_23a777b0-0012-4793-8adc-2f764479a1bf" xlink:href="alg-20221231.xsd#alg_DebtInstrumentNumberOfCovenants"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_alg_DebtInstrumentNumberOfCovenants_23a777b0-0012-4793-8adc-2f764479a1bf" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding_9101d437-bafd-4ef6-b2c6-50bcf80ecd32" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding_9101d437-bafd-4ef6-b2c6-50bcf80ecd32" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtWeightedAverageInterestRate_5e513001-cb28-4bc0-8f44-768aadd19d55" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtWeightedAverageInterestRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LongtermDebtWeightedAverageInterestRate_5e513001-cb28-4bc0-8f44-768aadd19d55" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityCapacityAvailableForTradePurchases_33245a6c-cc1d-4ad5-b9da-6f7f4943eb51" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityCapacityAvailableForTradePurchases"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LineOfCreditFacilityCapacityAvailableForTradePurchases_33245a6c-cc1d-4ad5-b9da-6f7f4943eb51" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_6eabf2f2-2e65-407d-b069-39f164eab900" 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_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_6eabf2f2-2e65-407d-b069-39f164eab900" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_08cf17a2-4be4-4bd6-baca-a44b0adb0bd1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_08cf17a2-4be4-4bd6-baca-a44b0adb0bd1" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_ef96e2ae-35d6-4e41-834d-5d1ecf21355a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_ef96e2ae-35d6-4e41-834d-5d1ecf21355a" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_408f2f9b-c42e-45b9-a23f-382a23497048" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_408f2f9b-c42e-45b9-a23f-382a23497048" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_6a0fc7b1-d4aa-475c-85f4-129b3cd36a73" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_6a0fc7b1-d4aa-475c-85f4-129b3cd36a73" xlink:type="arc" order="14"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_9f99fdb3-bde8-43ec-91b2-2c3da996895f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_9f99fdb3-bde8-43ec-91b2-2c3da996895f" xlink:type="arc" order="15"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive_b9e9df80-52c7-4852-b82f-fdcd5d9d65ad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive_b9e9df80-52c7-4852-b82f-fdcd5d9d65ad" xlink:type="arc" order="16"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_fb0bf9f5-cb76-4c21-a735-2b2f36eff44a" 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_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_DebtInstrumentTable_fb0bf9f5-cb76-4c21-a735-2b2f36eff44a" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_b4538bc9-72c7-49ba-8ba8-b43c19ddb5c0" 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_fb0bf9f5-cb76-4c21-a735-2b2f36eff44a" xlink:to="loc_us-gaap_DebtInstrumentAxis_b4538bc9-72c7-49ba-8ba8-b43c19ddb5c0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_b4538bc9-72c7-49ba-8ba8-b43c19ddb5c0_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_b4538bc9-72c7-49ba-8ba8-b43c19ddb5c0" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_b4538bc9-72c7-49ba-8ba8-b43c19ddb5c0_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_62260239-9f64-4348-b0a3-9b30ec2b4665" 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_b4538bc9-72c7-49ba-8ba8-b43c19ddb5c0" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_62260239-9f64-4348-b0a3-9b30ec2b4665" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember_73f09fcd-6b00-4268-b86e-610b5e20c031" xlink:href="alg-20221231.xsd#alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_62260239-9f64-4348-b0a3-9b30ec2b4665" xlink:to="loc_alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember_73f09fcd-6b00-4268-b86e-610b5e20c031" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_f3ba6524-1752-440b-b969-95219163c049" 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_fb0bf9f5-cb76-4c21-a735-2b2f36eff44a" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_f3ba6524-1752-440b-b969-95219163c049" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_f3ba6524-1752-440b-b969-95219163c049_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_f3ba6524-1752-440b-b969-95219163c049" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_f3ba6524-1752-440b-b969-95219163c049_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_2da51752-45bc-48ea-aba0-e5a35aadcd16" 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_f3ba6524-1752-440b-b969-95219163c049" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_2da51752-45bc-48ea-aba0-e5a35aadcd16" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnsecuredDebtMember_194aa423-d7cd-4a45-a2c1-2b3e73ee5015" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnsecuredDebtMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_2da51752-45bc-48ea-aba0-e5a35aadcd16" xlink:to="loc_us-gaap_UnsecuredDebtMember_194aa423-d7cd-4a45-a2c1-2b3e73ee5015" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_76265e2b-bb57-4986-a1ad-e02b0a513fcd" 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_fb0bf9f5-cb76-4c21-a735-2b2f36eff44a" xlink:to="loc_us-gaap_CreditFacilityAxis_76265e2b-bb57-4986-a1ad-e02b0a513fcd" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_76265e2b-bb57-4986-a1ad-e02b0a513fcd_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_76265e2b-bb57-4986-a1ad-e02b0a513fcd" xlink:to="loc_us-gaap_CreditFacilityDomain_76265e2b-bb57-4986-a1ad-e02b0a513fcd_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_a380309f-736c-44aa-90ae-056affbbf2dd" 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_76265e2b-bb57-4986-a1ad-e02b0a513fcd" xlink:to="loc_us-gaap_CreditFacilityDomain_a380309f-736c-44aa-90ae-056affbbf2dd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditMember_f81ba2d5-f048-477e-b8cb-eb003079d630" 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_CreditFacilityDomain_a380309f-736c-44aa-90ae-056affbbf2dd" xlink:to="loc_us-gaap_LineOfCreditMember_f81ba2d5-f048-477e-b8cb-eb003079d630" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_TermFacilityMember_c42b8128-a39c-4e5c-8a2a-e1dcc3f4d02a" xlink:href="alg-20221231.xsd#alg_TermFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_a380309f-736c-44aa-90ae-056affbbf2dd" xlink:to="loc_alg_TermFacilityMember_c42b8128-a39c-4e5c-8a2a-e1dcc3f4d02a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandbyLettersOfCreditMember_9cdf9d15-1e76-4a0a-87d0-60a273c2c244" 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_a380309f-736c-44aa-90ae-056affbbf2dd" xlink:to="loc_us-gaap_StandbyLettersOfCreditMember_9cdf9d15-1e76-4a0a-87d0-60a273c2c244" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateAxis_532a3bd4-87b9-48b4-9283-72d84d863db2" 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_fb0bf9f5-cb76-4c21-a735-2b2f36eff44a" xlink:to="loc_us-gaap_VariableRateAxis_532a3bd4-87b9-48b4-9283-72d84d863db2" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain_532a3bd4-87b9-48b4-9283-72d84d863db2_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_532a3bd4-87b9-48b4-9283-72d84d863db2" xlink:to="loc_us-gaap_VariableRateDomain_532a3bd4-87b9-48b4-9283-72d84d863db2_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain_14fa4b38-853b-4c36-827f-1c158e28bd5d" 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_532a3bd4-87b9-48b4-9283-72d84d863db2" xlink:to="loc_us-gaap_VariableRateDomain_14fa4b38-853b-4c36-827f-1c158e28bd5d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember_d0d1b686-7ea5-4b61-804f-7a8bc90fcf10" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VariableRateDomain_14fa4b38-853b-4c36-827f-1c158e28bd5d" xlink:to="loc_us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember_d0d1b686-7ea5-4b61-804f-7a8bc90fcf10" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BaseRateMember_30e8d244-d70a-4aa9-8d7f-6cd8c79eab7b" 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_14fa4b38-853b-4c36-827f-1c158e28bd5d" xlink:to="loc_us-gaap_BaseRateMember_30e8d244-d70a-4aa9-8d7f-6cd8c79eab7b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_0d986e5f-7747-461b-ace6-081cda77eee9" 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_fb0bf9f5-cb76-4c21-a735-2b2f36eff44a" xlink:to="loc_srt_RangeAxis_0d986e5f-7747-461b-ace6-081cda77eee9" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_0d986e5f-7747-461b-ace6-081cda77eee9_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_0d986e5f-7747-461b-ace6-081cda77eee9" xlink:to="loc_srt_RangeMember_0d986e5f-7747-461b-ace6-081cda77eee9_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_bb701c32-5d46-4f01-a498-cf4b82b9e96b" 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_0d986e5f-7747-461b-ace6-081cda77eee9" xlink:to="loc_srt_RangeMember_bb701c32-5d46-4f01-a498-cf4b82b9e96b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_8c068f16-4e7e-4cfb-8657-a7f2067d3e14" 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_bb701c32-5d46-4f01-a498-cf4b82b9e96b" xlink:to="loc_srt_MinimumMember_8c068f16-4e7e-4cfb-8657-a7f2067d3e14" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_3383907b-bb4c-4c60-a074-56d0ca0ddfd7" 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_bb701c32-5d46-4f01-a498-cf4b82b9e96b" xlink:to="loc_srt_MaximumMember_3383907b-bb4c-4c60-a074-56d0ca0ddfd7" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/IncomeTaxesAdditionalInformationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#IncomeTaxesAdditionalInformationDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/IncomeTaxesAdditionalInformationDetails" xlink:type="extended" id="i5a994ad202b84fb4b14303c533f5c4c7_IncomeTaxesAdditionalInformationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsLineItems_40ead41c-8280-4be0-8d73-648dc2df0bb6" 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_DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration_96d49ea5-edc4-44ca-8ac2-7273f18e789c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_40ead41c-8280-4be0-8d73-648dc2df0bb6" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration_96d49ea5-edc4-44ca-8ac2-7273f18e789c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwards_ba508610-e513-4ff6-8a94-802bc9d89e77" 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_40ead41c-8280-4be0-8d73-648dc2df0bb6" xlink:to="loc_us-gaap_OperatingLossCarryforwards_ba508610-e513-4ff6-8a94-802bc9d89e77" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_1aefc735-3ec4-4842-aa24-13babb0e7776" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_40ead41c-8280-4be0-8d73-648dc2df0bb6" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_1aefc735-3ec4-4842-aa24-13babb0e7776" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary_e135f5cd-fa78-4165-bdba-f3b9d53362ce" xlink:href="alg-20221231.xsd#alg_TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_40ead41c-8280-4be0-8d73-648dc2df0bb6" xlink:to="loc_alg_TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary_e135f5cd-fa78-4165-bdba-f3b9d53362ce" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsTable_dbf010da-2ad0-409a-8cde-faed2b7c03dc" 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_40ead41c-8280-4be0-8d73-648dc2df0bb6" xlink:to="loc_us-gaap_OperatingLossCarryforwardsTable_dbf010da-2ad0-409a-8cde-faed2b7c03dc" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_f3cd7bce-24fe-4026-8721-b5b981042e10" 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_dbf010da-2ad0-409a-8cde-faed2b7c03dc" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_f3cd7bce-24fe-4026-8721-b5b981042e10" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_f3cd7bce-24fe-4026-8721-b5b981042e10_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_f3cd7bce-24fe-4026-8721-b5b981042e10" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_f3cd7bce-24fe-4026-8721-b5b981042e10_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_98a17e4f-a42b-4711-b3e1-13c3fccc923b" 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_f3cd7bce-24fe-4026-8721-b5b981042e10" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_98a17e4f-a42b-4711-b3e1-13c3fccc923b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCountryMember_35190acc-c9fd-421f-a2c4-41bc2655a4fc" 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_98a17e4f-a42b-4711-b3e1-13c3fccc923b" xlink:to="loc_us-gaap_ForeignCountryMember_35190acc-c9fd-421f-a2c4-41bc2655a4fc" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StateAndLocalJurisdictionMember_e0483fb1-5f07-4c6e-944c-e46a378beec4" 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_98a17e4f-a42b-4711-b3e1-13c3fccc923b" xlink:to="loc_us-gaap_StateAndLocalJurisdictionMember_e0483fb1-5f07-4c6e-944c-e46a378beec4" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/CommonStockDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#CommonStockDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/CommonStockDetails" xlink:type="extended" id="i0039a6c7cea2423f8367a143e38a953c_CommonStockDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockLineItems_c85d4215-66f4-46ed-b455-d0cb9b38f396" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockDividendsPerShareDeclared_a8157d2e-a3b6-4647-9524-d64835aa74c4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockDividendsPerShareDeclared"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_c85d4215-66f4-46ed-b455-d0cb9b38f396" xlink:to="loc_us-gaap_CommonStockDividendsPerShareDeclared_a8157d2e-a3b6-4647-9524-d64835aa74c4" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockDividendsPerShareCashPaid_f400e0f8-850c-48b6-9967-8704afa55960" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockDividendsPerShareCashPaid"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_c85d4215-66f4-46ed-b455-d0cb9b38f396" xlink:to="loc_us-gaap_CommonStockDividendsPerShareCashPaid_f400e0f8-850c-48b6-9967-8704afa55960" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_74818a0a-8b7a-4099-b411-bd7a8f49bb1f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_c85d4215-66f4-46ed-b455-d0cb9b38f396" xlink:to="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_74818a0a-8b7a-4099-b411-bd7a8f49bb1f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired_4db6e0d3-376a-4a78-b836-908826381af7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockSharesAcquired"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_c85d4215-66f4-46ed-b455-d0cb9b38f396" xlink:to="loc_us-gaap_TreasuryStockSharesAcquired_4db6e0d3-376a-4a78-b836-908826381af7" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfStockByClassTable_c9829a60-e4e0-4542-9def-0635368edc72" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfStockByClassTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ClassOfStockLineItems_c85d4215-66f4-46ed-b455-d0cb9b38f396" xlink:to="loc_us-gaap_ScheduleOfStockByClassTable_c9829a60-e4e0-4542-9def-0635368edc72" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_0721cf46-d892-46bd-9a23-b873ea06fe12" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_c9829a60-e4e0-4542-9def-0635368edc72" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_0721cf46-d892-46bd-9a23-b873ea06fe12" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_0721cf46-d892-46bd-9a23-b873ea06fe12_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_0721cf46-d892-46bd-9a23-b873ea06fe12" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_0721cf46-d892-46bd-9a23-b873ea06fe12_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_1ecea379-6188-4309-9906-cd7771a3f71a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_0721cf46-d892-46bd-9a23-b873ea06fe12" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_1ecea379-6188-4309-9906-cd7771a3f71a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_35f08353-e127-4532-b439-8448099064d7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_1ecea379-6188-4309-9906-cd7771a3f71a" xlink:to="loc_us-gaap_SubsequentEventMember_35f08353-e127-4532-b439-8448099064d7" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#StockOptionsAdditionalInformationDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails" xlink:type="extended" id="ic2e2cd33e2cd423b8b0d0240b01a634e_StockOptionsAdditionalInformationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_e00b2e78-8cc8-41e0-aaa5-0a94890b6044" 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_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_e00b2e78-8cc8-41e0-aaa5-0a94890b6044" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_bba09de0-72de-4fed-bef0-2e3c551e3801" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_bba09de0-72de-4fed-bef0-2e3c551e3801" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_14fcec85-3ed6-4dc0-bd23-563e76b6aef4" 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_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_14fcec85-3ed6-4dc0-bd23-563e76b6aef4" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_7ed88cb4-305f-4d41-bab6-42efb761ca74" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_7ed88cb4-305f-4d41-bab6-42efb761ca74" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_65e47e36-e58d-41aa-b188-006b894b6112" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_65e47e36-e58d-41aa-b188-006b894b6112" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_5a6efd7c-48c8-4248-8411-306bdc41dcc1" 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_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_5a6efd7c-48c8-4248-8411-306bdc41dcc1" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_d61b3db1-f82e-44ca-b5a4-17074fbbe8d5" 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_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_d61b3db1-f82e-44ca-b5a4-17074fbbe8d5" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1_61e17ec2-8f9e-4486-98a8-39dc7c2d6c32" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1_61e17ec2-8f9e-4486-98a8-39dc7c2d6c32" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_41020b89-8734-4da5-880e-e0335c54df33" 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_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_41020b89-8734-4da5-880e-e0335c54df33" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_35990ad7-ecfa-4375-9dad-92d506046841" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_35990ad7-ecfa-4375-9dad-92d506046841" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromStockOptionsExercised_8a728d32-033c-4f5d-a358-89ddc7d54d27" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromStockOptionsExercised"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_ProceedsFromStockOptionsExercised_8a728d32-033c-4f5d-a358-89ddc7d54d27" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms_892bc504-12ce-4e6d-9808-8c193d4a4dc4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms_892bc504-12ce-4e6d-9808-8c193d4a4dc4" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_fbf01bf1-5ec2-461f-bbaa-4981f2107982" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_fbf01bf1-5ec2-461f-bbaa-4981f2107982" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1d0706dd-bd75-4fba-83b9-f8f3570d86e3" 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_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1d0706dd-bd75-4fba-83b9-f8f3570d86e3" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_7c7be37b-e5bc-4805-9484-eb038bfea198" 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_1d0706dd-bd75-4fba-83b9-f8f3570d86e3" xlink:to="loc_us-gaap_PlanNameAxis_7c7be37b-e5bc-4805-9484-eb038bfea198" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_7c7be37b-e5bc-4805-9484-eb038bfea198_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_7c7be37b-e5bc-4805-9484-eb038bfea198" xlink:to="loc_us-gaap_PlanNameDomain_7c7be37b-e5bc-4805-9484-eb038bfea198_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_32cab3cb-1ecd-44a5-a574-ad39f767284a" 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_7c7be37b-e5bc-4805-9484-eb038bfea198" xlink:to="loc_us-gaap_PlanNameDomain_32cab3cb-1ecd-44a5-a574-ad39f767284a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_IncentiveStockOption2015PlanMember_a0cf0037-07aa-4d25-bcec-2c05eb75f25b" xlink:href="alg-20221231.xsd#alg_IncentiveStockOption2015PlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_32cab3cb-1ecd-44a5-a574-ad39f767284a" xlink:to="loc_alg_IncentiveStockOption2015PlanMember_a0cf0037-07aa-4d25-bcec-2c05eb75f25b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_TwoZeroZeroNineEquityIncentivePlanMember_e1c9d75c-2e32-4725-a5e9-f32f36399e67" xlink:href="alg-20221231.xsd#alg_TwoZeroZeroNineEquityIncentivePlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_32cab3cb-1ecd-44a5-a574-ad39f767284a" xlink:to="loc_alg_TwoZeroZeroNineEquityIncentivePlanMember_e1c9d75c-2e32-4725-a5e9-f32f36399e67" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_05b218b5-78bd-43c3-baaf-52f927772815" 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_1d0706dd-bd75-4fba-83b9-f8f3570d86e3" xlink:to="loc_us-gaap_AwardTypeAxis_05b218b5-78bd-43c3-baaf-52f927772815" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_05b218b5-78bd-43c3-baaf-52f927772815_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_05b218b5-78bd-43c3-baaf-52f927772815" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_05b218b5-78bd-43c3-baaf-52f927772815_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_c0c219a2-dccb-42f4-bb7d-9b674278fe7c" 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_05b218b5-78bd-43c3-baaf-52f927772815" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_c0c219a2-dccb-42f4-bb7d-9b674278fe7c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_QualifiedStockOptionsMember_0d48e9d4-9a4e-4107-ad8c-4de2d88df46c" xlink:href="alg-20221231.xsd#alg_QualifiedStockOptionsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_c0c219a2-dccb-42f4-bb7d-9b674278fe7c" xlink:to="loc_alg_QualifiedStockOptionsMember_0d48e9d4-9a4e-4107-ad8c-4de2d88df46c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_NonQualifiedOptionsMember_d4b2c57a-060d-4c04-901d-ed8b9cdeb7b1" xlink:href="alg-20221231.xsd#alg_NonQualifiedOptionsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_c0c219a2-dccb-42f4-bb7d-9b674278fe7c" xlink:to="loc_alg_NonQualifiedOptionsMember_d4b2c57a-060d-4c04-901d-ed8b9cdeb7b1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_9648a1a0-54e6-4a0c-93c9-f60d4feba606" 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_c0c219a2-dccb-42f4-bb7d-9b674278fe7c" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_9648a1a0-54e6-4a0c-93c9-f60d4feba606" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockMember_af2bea7d-4565-414e-8c50-1357a32876bf" 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_c0c219a2-dccb-42f4-bb7d-9b674278fe7c" xlink:to="loc_us-gaap_RestrictedStockMember_af2bea7d-4565-414e-8c50-1357a32876bf" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember_e6992407-84e8-488d-a7cb-c497c20ccb59" 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_c0c219a2-dccb-42f4-bb7d-9b674278fe7c" xlink:to="loc_us-gaap_PerformanceSharesMember_e6992407-84e8-488d-a7cb-c497c20ccb59" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VestingAxis_464ce6d2-45f4-4a7c-a645-44e8c86b288f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VestingAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1d0706dd-bd75-4fba-83b9-f8f3570d86e3" xlink:to="loc_us-gaap_VestingAxis_464ce6d2-45f4-4a7c-a645-44e8c86b288f" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VestingDomain_464ce6d2-45f4-4a7c-a645-44e8c86b288f_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VestingDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_VestingAxis_464ce6d2-45f4-4a7c-a645-44e8c86b288f" xlink:to="loc_us-gaap_VestingDomain_464ce6d2-45f4-4a7c-a645-44e8c86b288f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VestingDomain_aa83947f-7f4f-4a52-a3e8-779562fed592" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VestingDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_VestingAxis_464ce6d2-45f4-4a7c-a645-44e8c86b288f" xlink:to="loc_us-gaap_VestingDomain_aa83947f-7f4f-4a52-a3e8-779562fed592" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAwardTrancheOneMember_1ac7a801-a37b-4ce8-bece-e8b710451876" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAwardTrancheOneMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VestingDomain_aa83947f-7f4f-4a52-a3e8-779562fed592" xlink:to="loc_us-gaap_ShareBasedCompensationAwardTrancheOneMember_1ac7a801-a37b-4ce8-bece-e8b710451876" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAwardTrancheTwoMember_fe2b2ecd-4b0f-448d-8809-ff6da67ea92e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAwardTrancheTwoMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VestingDomain_aa83947f-7f4f-4a52-a3e8-779562fed592" xlink:to="loc_us-gaap_ShareBasedCompensationAwardTrancheTwoMember_fe2b2ecd-4b0f-448d-8809-ff6da67ea92e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAwardTrancheThreeMember_50a5ade7-de3a-4ac9-af03-423ac0ac4c42" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAwardTrancheThreeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VestingDomain_aa83947f-7f4f-4a52-a3e8-779562fed592" xlink:to="loc_us-gaap_ShareBasedCompensationAwardTrancheThreeMember_50a5ade7-de3a-4ac9-af03-423ac0ac4c42" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_SharebasedCompensationAwardTrancheFourMember_e260ba3a-22d9-42da-9832-ae2660e9330a" xlink:href="alg-20221231.xsd#alg_SharebasedCompensationAwardTrancheFourMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VestingDomain_aa83947f-7f4f-4a52-a3e8-779562fed592" xlink:to="loc_alg_SharebasedCompensationAwardTrancheFourMember_e260ba3a-22d9-42da-9832-ae2660e9330a" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_SharebasedCompensationAwardTrancheFiveMember_75dc5760-a2bc-4597-9596-d0ff876a6a14" xlink:href="alg-20221231.xsd#alg_SharebasedCompensationAwardTrancheFiveMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VestingDomain_aa83947f-7f4f-4a52-a3e8-779562fed592" xlink:to="loc_alg_SharebasedCompensationAwardTrancheFiveMember_75dc5760-a2bc-4597-9596-d0ff876a6a14" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardDateAxis_641d1a63-49f7-43fe-a48a-1de2752e8b1c" 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_1d0706dd-bd75-4fba-83b9-f8f3570d86e3" xlink:to="loc_us-gaap_AwardDateAxis_641d1a63-49f7-43fe-a48a-1de2752e8b1c" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardDateDomain_641d1a63-49f7-43fe-a48a-1de2752e8b1c_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_641d1a63-49f7-43fe-a48a-1de2752e8b1c" xlink:to="loc_us-gaap_AwardDateDomain_641d1a63-49f7-43fe-a48a-1de2752e8b1c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardDateDomain_28c89b42-2a8f-4406-88b7-a74e745cbb29" 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_641d1a63-49f7-43fe-a48a-1de2752e8b1c" xlink:to="loc_us-gaap_AwardDateDomain_28c89b42-2a8f-4406-88b7-a74e745cbb29" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_AwardDateTwoMember_6b00a45b-2260-4869-bb59-2ed827e704ad" xlink:href="alg-20221231.xsd#alg_AwardDateTwoMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AwardDateDomain_28c89b42-2a8f-4406-88b7-a74e745cbb29" xlink:to="loc_alg_AwardDateTwoMember_6b00a45b-2260-4869-bb59-2ed827e704ad" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_5e3d6a68-a10f-4401-b295-5e31fe47d508" 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_1d0706dd-bd75-4fba-83b9-f8f3570d86e3" xlink:to="loc_srt_RangeAxis_5e3d6a68-a10f-4401-b295-5e31fe47d508" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_5e3d6a68-a10f-4401-b295-5e31fe47d508_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_5e3d6a68-a10f-4401-b295-5e31fe47d508" xlink:to="loc_srt_RangeMember_5e3d6a68-a10f-4401-b295-5e31fe47d508_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_bc8d003d-ccf6-4635-8c17-db2e566c9dfc" 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_5e3d6a68-a10f-4401-b295-5e31fe47d508" xlink:to="loc_srt_RangeMember_bc8d003d-ccf6-4635-8c17-db2e566c9dfc" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_b803295b-5b79-420d-bba0-9d97373f68d2" 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_bc8d003d-ccf6-4635-8c17-db2e566c9dfc" xlink:to="loc_srt_MaximumMember_b803295b-5b79-420d-bba0-9d97373f68d2" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#StockOptionsScheduleofQualifiedStockOptionActivityDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails" xlink:type="extended" id="ic64e44146df94e0e90110d158749de95_StockOptionsScheduleofQualifiedStockOptionActivityDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_763f431b-c212-47b4-b81f-98149f72ae66" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_1415765c-6c97-48df-88f4-9ad6773fbf7b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_763f431b-c212-47b4-b81f-98149f72ae66" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_1415765c-6c97-48df-88f4-9ad6773fbf7b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_e8efc0e9-afd9-45a1-8f2c-99d81d7c335b" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_1415765c-6c97-48df-88f4-9ad6773fbf7b" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_e8efc0e9-afd9-45a1-8f2c-99d81d7c335b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_ddbec8ea-342a-4822-b0bd-7fafc028718c" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_1415765c-6c97-48df-88f4-9ad6773fbf7b" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_ddbec8ea-342a-4822-b0bd-7fafc028718c" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_b4399990-c271-4e5c-8be1-b69bdb4a0872" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_1415765c-6c97-48df-88f4-9ad6773fbf7b" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_b4399990-c271-4e5c-8be1-b69bdb4a0872" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_27d601df-2134-4371-b302-b807bdf19df4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_1415765c-6c97-48df-88f4-9ad6773fbf7b" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_27d601df-2134-4371-b302-b807bdf19df4" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_a48e397e-e6dc-4fbb-b8f4-a6d174f664cf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_34015693-aef7-4a52-8ad1-54e410dfaa0f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_763f431b-c212-47b4-b81f-98149f72ae66" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_34015693-aef7-4a52-8ad1-54e410dfaa0f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_f30f9557-5501-468c-a559-fb887ca30e2c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_34015693-aef7-4a52-8ad1-54e410dfaa0f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_f30f9557-5501-468c-a559-fb887ca30e2c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_985519ad-0d3d-4574-a165-61b5f136bf4e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_34015693-aef7-4a52-8ad1-54e410dfaa0f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_985519ad-0d3d-4574-a165-61b5f136bf4e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_7b3f7332-31d0-4f79-86c3-f45c6339a524" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_34015693-aef7-4a52-8ad1-54e410dfaa0f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_7b3f7332-31d0-4f79-86c3-f45c6339a524" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_c10b323b-0c42-4cf7-aa6d-0d6ab03c5883" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_34015693-aef7-4a52-8ad1-54e410dfaa0f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_c10b323b-0c42-4cf7-aa6d-0d6ab03c5883" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_4be98d00-d1e2-4321-85f4-f63f242e1e48" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_43370a30-d6ae-4123-b689-d89feb164847" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_763f431b-c212-47b4-b81f-98149f72ae66" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_43370a30-d6ae-4123-b689-d89feb164847" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_ef656343-b1a7-4b46-b4b5-e6005d068af5" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_763f431b-c212-47b4-b81f-98149f72ae66" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_ef656343-b1a7-4b46-b4b5-e6005d068af5" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_c6be27e0-aabb-45e7-8540-745e6ced0156" 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_763f431b-c212-47b4-b81f-98149f72ae66" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_c6be27e0-aabb-45e7-8540-745e6ced0156" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_86b5fd60-014f-4642-ade9-c19e9d0c7cfe" 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_763f431b-c212-47b4-b81f-98149f72ae66" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_86b5fd60-014f-4642-ade9-c19e9d0c7cfe" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_444dd7a1-6ca0-44d5-8f2c-b9b30c0c9b6f" 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_86b5fd60-014f-4642-ade9-c19e9d0c7cfe" xlink:to="loc_us-gaap_AwardTypeAxis_444dd7a1-6ca0-44d5-8f2c-b9b30c0c9b6f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_444dd7a1-6ca0-44d5-8f2c-b9b30c0c9b6f_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_444dd7a1-6ca0-44d5-8f2c-b9b30c0c9b6f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_444dd7a1-6ca0-44d5-8f2c-b9b30c0c9b6f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2356e5d9-4f91-4194-986e-c5fc7a2c2223" 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_444dd7a1-6ca0-44d5-8f2c-b9b30c0c9b6f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2356e5d9-4f91-4194-986e-c5fc7a2c2223" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_QualifiedStockOptionsMember_1c3ea0de-43af-49d9-a049-768d2d954f95" xlink:href="alg-20221231.xsd#alg_QualifiedStockOptionsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2356e5d9-4f91-4194-986e-c5fc7a2c2223" xlink:to="loc_alg_QualifiedStockOptionsMember_1c3ea0de-43af-49d9-a049-768d2d954f95" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails" xlink:type="extended" id="id8ae9975ed8c4271a356136623f9eb26_StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_88eb048f-a4ea-470a-a3ab-77e1e0124a39" 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_0ff2aedf-88b1-467e-8fa2-9d459d92c110" 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_88eb048f-a4ea-470a-a3ab-77e1e0124a39" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_0ff2aedf-88b1-467e-8fa2-9d459d92c110" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_b4d3b0a7-bee7-4d20-ac50-ae5f473893eb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_88eb048f-a4ea-470a-a3ab-77e1e0124a39" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_b4d3b0a7-bee7-4d20-ac50-ae5f473893eb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_d622a8ca-3a6a-4958-aa8c-616722117950" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_88eb048f-a4ea-470a-a3ab-77e1e0124a39" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_d622a8ca-3a6a-4958-aa8c-616722117950" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_1b27e55b-226e-451a-91c1-b1dbe975f2de" 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_88eb048f-a4ea-470a-a3ab-77e1e0124a39" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_1b27e55b-226e-451a-91c1-b1dbe975f2de" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_fcd4be4b-2e69-4502-bb01-4863c7d33a37" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_88eb048f-a4ea-470a-a3ab-77e1e0124a39" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_fcd4be4b-2e69-4502-bb01-4863c7d33a37" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_9e47d34e-3ee4-44c4-8954-bcc969c17b35" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_88eb048f-a4ea-470a-a3ab-77e1e0124a39" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_9e47d34e-3ee4-44c4-8954-bcc969c17b35" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_46f14dc4-4403-4fcd-b0f5-215247c1a67f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_88eb048f-a4ea-470a-a3ab-77e1e0124a39" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_46f14dc4-4403-4fcd-b0f5-215247c1a67f" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_7d331c1e-f454-46fe-a24b-a8a5acbd304f" 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_88eb048f-a4ea-470a-a3ab-77e1e0124a39" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_7d331c1e-f454-46fe-a24b-a8a5acbd304f" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_a722751b-9bb5-4bf0-b790-9e04106fc8b2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_88eb048f-a4ea-470a-a3ab-77e1e0124a39" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_a722751b-9bb5-4bf0-b790-9e04106fc8b2" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_cc7b056c-c401-4976-badb-14c1eb2e98a5" 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_88eb048f-a4ea-470a-a3ab-77e1e0124a39" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_cc7b056c-c401-4976-badb-14c1eb2e98a5" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_4cbc98b2-8cb7-4ccc-9b8f-adad6e81f1a7" 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_cc7b056c-c401-4976-badb-14c1eb2e98a5" xlink:to="loc_us-gaap_AwardTypeAxis_4cbc98b2-8cb7-4ccc-9b8f-adad6e81f1a7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_4cbc98b2-8cb7-4ccc-9b8f-adad6e81f1a7_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_4cbc98b2-8cb7-4ccc-9b8f-adad6e81f1a7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_4cbc98b2-8cb7-4ccc-9b8f-adad6e81f1a7_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e451b720-4103-4a14-9062-f34591de1f79" 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_4cbc98b2-8cb7-4ccc-9b8f-adad6e81f1a7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e451b720-4103-4a14-9062-f34591de1f79" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_QualifiedStockOptionsMember_93ec7d78-8a55-4699-9ccc-b85098ed6d87" xlink:href="alg-20221231.xsd#alg_QualifiedStockOptionsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e451b720-4103-4a14-9062-f34591de1f79" xlink:to="loc_alg_QualifiedStockOptionsMember_93ec7d78-8a55-4699-9ccc-b85098ed6d87" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_9adcd907-c52b-45b5-9a0e-836b0c164a58" 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_cc7b056c-c401-4976-badb-14c1eb2e98a5" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_9adcd907-c52b-45b5-9a0e-836b0c164a58" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_9adcd907-c52b-45b5-9a0e-836b0c164a58_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_9adcd907-c52b-45b5-9a0e-836b0c164a58" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_9adcd907-c52b-45b5-9a0e-836b0c164a58_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_afbd7ff9-b07e-4c85-bf0c-d7ac72ee43c9" 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_9adcd907-c52b-45b5-9a0e-836b0c164a58" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_afbd7ff9-b07e-4c85-bf0c-d7ac72ee43c9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_QualifiedStockOptionsExercisePriceRangeOneMember_20d2208e-f70b-4205-a72b-2ddd21306001" xlink:href="alg-20221231.xsd#alg_QualifiedStockOptionsExercisePriceRangeOneMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_afbd7ff9-b07e-4c85-bf0c-d7ac72ee43c9" xlink:to="loc_alg_QualifiedStockOptionsExercisePriceRangeOneMember_20d2208e-f70b-4205-a72b-2ddd21306001" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_QualifiedStockOptionsExercisePriceRangeTwoMember_822584f4-7880-4cb1-a168-a407713cbf30" xlink:href="alg-20221231.xsd#alg_QualifiedStockOptionsExercisePriceRangeTwoMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_afbd7ff9-b07e-4c85-bf0c-d7ac72ee43c9" xlink:to="loc_alg_QualifiedStockOptionsExercisePriceRangeTwoMember_822584f4-7880-4cb1-a168-a407713cbf30" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_QualifiedStockOptionsExercisePriceRangeThreeMember_ec2df00a-fcdd-4c06-b668-8ece61d57379" xlink:href="alg-20221231.xsd#alg_QualifiedStockOptionsExercisePriceRangeThreeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_afbd7ff9-b07e-4c85-bf0c-d7ac72ee43c9" xlink:to="loc_alg_QualifiedStockOptionsExercisePriceRangeThreeMember_ec2df00a-fcdd-4c06-b668-8ece61d57379" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/StockOptionsEquityIncentivePlanDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#StockOptionsEquityIncentivePlanDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/StockOptionsEquityIncentivePlanDetails" xlink:type="extended" id="ia43d413299f244f1ac35bfb9320ce565_StockOptionsEquityIncentivePlanDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fac37a83-c1db-4904-8771-36500a35542c" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_152d29a6-f28c-4045-b5d3-b5ad644334d6" 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_fac37a83-c1db-4904-8771-36500a35542c" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_152d29a6-f28c-4045-b5d3-b5ad644334d6" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c26ec162-0009-4e5a-b6f3-d70f65461df7" 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_fac37a83-c1db-4904-8771-36500a35542c" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c26ec162-0009-4e5a-b6f3-d70f65461df7" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_70ae28b9-e9f3-45ca-8eea-f59fd9fc342c" 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_c26ec162-0009-4e5a-b6f3-d70f65461df7" xlink:to="loc_us-gaap_AwardTypeAxis_70ae28b9-e9f3-45ca-8eea-f59fd9fc342c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_70ae28b9-e9f3-45ca-8eea-f59fd9fc342c_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_70ae28b9-e9f3-45ca-8eea-f59fd9fc342c" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_70ae28b9-e9f3-45ca-8eea-f59fd9fc342c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_76bddc1c-6a32-45b8-af8e-1f0d127604f6" 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_70ae28b9-e9f3-45ca-8eea-f59fd9fc342c" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_76bddc1c-6a32-45b8-af8e-1f0d127604f6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_NonQualifiedOptionsMember_2b3892a3-8f52-4988-b7ef-0ef1bd244959" xlink:href="alg-20221231.xsd#alg_NonQualifiedOptionsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_76bddc1c-6a32-45b8-af8e-1f0d127604f6" xlink:to="loc_alg_NonQualifiedOptionsMember_2b3892a3-8f52-4988-b7ef-0ef1bd244959" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails" xlink:type="extended" id="ic2d20f2f2fea4597a44f6767666f5cfe_StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_16b2a92b-2b87-406e-84a9-e3cf6d15a0ea" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_35eed432-f36b-429c-b668-63e68d054ea1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_16b2a92b-2b87-406e-84a9-e3cf6d15a0ea" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_35eed432-f36b-429c-b668-63e68d054ea1" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_a214edc4-4089-48f9-b0ac-31b6858addef" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_35eed432-f36b-429c-b668-63e68d054ea1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_a214edc4-4089-48f9-b0ac-31b6858addef" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_aec8074e-b181-4151-8243-a1b9a44be502" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_35eed432-f36b-429c-b668-63e68d054ea1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_aec8074e-b181-4151-8243-a1b9a44be502" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_f1dcfb72-0aac-42e2-bbf1-3ca337d9c15a" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_35eed432-f36b-429c-b668-63e68d054ea1" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_f1dcfb72-0aac-42e2-bbf1-3ca337d9c15a" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_f4655774-f14e-4021-bc42-a8409bbe02fe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_35eed432-f36b-429c-b668-63e68d054ea1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_f4655774-f14e-4021-bc42-a8409bbe02fe" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_69cfd02a-2c80-4a72-8933-f8690d8e2a2c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_82e723e1-4072-4057-a081-da17be189214" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_16b2a92b-2b87-406e-84a9-e3cf6d15a0ea" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_82e723e1-4072-4057-a081-da17be189214" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_86d6d3f5-a6b8-4bf1-a1d5-c216b81d8b31" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_82e723e1-4072-4057-a081-da17be189214" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_86d6d3f5-a6b8-4bf1-a1d5-c216b81d8b31" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_3b1549a8-8249-4292-b787-4f916b82a185" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_82e723e1-4072-4057-a081-da17be189214" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_3b1549a8-8249-4292-b787-4f916b82a185" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_044323d7-72aa-4d52-8ab6-05132530ce86" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_82e723e1-4072-4057-a081-da17be189214" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_044323d7-72aa-4d52-8ab6-05132530ce86" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_1ce36a77-7324-4726-bb6c-d14596c00274" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_82e723e1-4072-4057-a081-da17be189214" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_1ce36a77-7324-4726-bb6c-d14596c00274" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_7f98bd18-dfcf-48cb-b929-bd5604b20f54" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_e9f52400-6ec2-4def-b408-9d2abbae4c14" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_16b2a92b-2b87-406e-84a9-e3cf6d15a0ea" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_e9f52400-6ec2-4def-b408-9d2abbae4c14" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_5d5e119b-dda2-4dcb-9645-eb795358d3b7" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_16b2a92b-2b87-406e-84a9-e3cf6d15a0ea" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_5d5e119b-dda2-4dcb-9645-eb795358d3b7" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_776cf7e0-53c5-418f-84f9-ead4874811d4" 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_16b2a92b-2b87-406e-84a9-e3cf6d15a0ea" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_776cf7e0-53c5-418f-84f9-ead4874811d4" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_479dc705-f9ca-47a4-89db-92d71f5b8494" 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_776cf7e0-53c5-418f-84f9-ead4874811d4" xlink:to="loc_us-gaap_AwardTypeAxis_479dc705-f9ca-47a4-89db-92d71f5b8494" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_479dc705-f9ca-47a4-89db-92d71f5b8494_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_479dc705-f9ca-47a4-89db-92d71f5b8494" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_479dc705-f9ca-47a4-89db-92d71f5b8494_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_afa1de5a-da33-4b73-b0dc-8a4196fe2e0b" 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_479dc705-f9ca-47a4-89db-92d71f5b8494" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_afa1de5a-da33-4b73-b0dc-8a4196fe2e0b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_NonQualifiedOptionsMember_6333de61-56b6-4034-9fd1-f38c4eda7b63" xlink:href="alg-20221231.xsd#alg_NonQualifiedOptionsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_afa1de5a-da33-4b73-b0dc-8a4196fe2e0b" xlink:to="loc_alg_NonQualifiedOptionsMember_6333de61-56b6-4034-9fd1-f38c4eda7b63" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails" xlink:type="extended" id="i3019676b597d40d9ba6cf86fa0c5fcee_StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_63a58844-ae69-438c-a324-efd1baff070c" 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_cd57d346-6387-47cf-ba2f-11facdbf58e2" 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_63a58844-ae69-438c-a324-efd1baff070c" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_cd57d346-6387-47cf-ba2f-11facdbf58e2" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_5c73c2d4-e8c9-476c-b64b-f1e56c6e2910" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_63a58844-ae69-438c-a324-efd1baff070c" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_5c73c2d4-e8c9-476c-b64b-f1e56c6e2910" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_55eec631-9df3-417f-8852-549a1d4ac5dd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_63a58844-ae69-438c-a324-efd1baff070c" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_55eec631-9df3-417f-8852-549a1d4ac5dd" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_6f8b89c2-e49b-4026-9e14-62ae32576faf" 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_63a58844-ae69-438c-a324-efd1baff070c" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_6f8b89c2-e49b-4026-9e14-62ae32576faf" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_cb01d462-32fb-4300-9807-75569c387bbf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_63a58844-ae69-438c-a324-efd1baff070c" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_cb01d462-32fb-4300-9807-75569c387bbf" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_6dba4f91-bd93-4af9-805e-16125dfb31b5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_63a58844-ae69-438c-a324-efd1baff070c" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_6dba4f91-bd93-4af9-805e-16125dfb31b5" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_8c73052b-7c25-4331-8a17-f483bf49c60f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_63a58844-ae69-438c-a324-efd1baff070c" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_8c73052b-7c25-4331-8a17-f483bf49c60f" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_e57078a9-22c1-4818-93ef-d302d1b54549" 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_63a58844-ae69-438c-a324-efd1baff070c" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_e57078a9-22c1-4818-93ef-d302d1b54549" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_af969e06-62d2-4e47-a6ae-eb68d9ac3071" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_63a58844-ae69-438c-a324-efd1baff070c" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_af969e06-62d2-4e47-a6ae-eb68d9ac3071" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_80f8e224-d4a1-4e9c-9825-2ef597aab943" 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_63a58844-ae69-438c-a324-efd1baff070c" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_80f8e224-d4a1-4e9c-9825-2ef597aab943" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_263831d1-f9c6-46ee-a038-5060dda9df70" 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_80f8e224-d4a1-4e9c-9825-2ef597aab943" xlink:to="loc_us-gaap_AwardTypeAxis_263831d1-f9c6-46ee-a038-5060dda9df70" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_263831d1-f9c6-46ee-a038-5060dda9df70_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_263831d1-f9c6-46ee-a038-5060dda9df70" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_263831d1-f9c6-46ee-a038-5060dda9df70_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_8baea75b-fb0c-4518-8778-090ccb06680f" 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_263831d1-f9c6-46ee-a038-5060dda9df70" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_8baea75b-fb0c-4518-8778-090ccb06680f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_NonQualifiedOptionsMember_b64c0b34-4d09-457f-aa48-0ef752b1c923" xlink:href="alg-20221231.xsd#alg_NonQualifiedOptionsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_8baea75b-fb0c-4518-8778-090ccb06680f" xlink:to="loc_alg_NonQualifiedOptionsMember_b64c0b34-4d09-457f-aa48-0ef752b1c923" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_d5c93eff-00b9-4634-9126-1d1392df8348" 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_80f8e224-d4a1-4e9c-9825-2ef597aab943" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_d5c93eff-00b9-4634-9126-1d1392df8348" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_d5c93eff-00b9-4634-9126-1d1392df8348_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_d5c93eff-00b9-4634-9126-1d1392df8348" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_d5c93eff-00b9-4634-9126-1d1392df8348_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_000b2321-14f7-4fb5-bd2c-6e1b31035af4" 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_d5c93eff-00b9-4634-9126-1d1392df8348" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_000b2321-14f7-4fb5-bd2c-6e1b31035af4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_NonQualifiedStockOptionsExercisePriceRangeThreeMember_94eaf6cd-9ba6-4f88-9c49-862ee129299d" xlink:href="alg-20221231.xsd#alg_NonQualifiedStockOptionsExercisePriceRangeThreeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_000b2321-14f7-4fb5-bd2c-6e1b31035af4" xlink:to="loc_alg_NonQualifiedStockOptionsExercisePriceRangeThreeMember_94eaf6cd-9ba6-4f88-9c49-862ee129299d" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#StockOptionsScheduleofRestrictedStockAwardActivityDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails" xlink:type="extended" id="i1d1121c8fa024655b6c9021d98b5f793_StockOptionsScheduleofRestrictedStockAwardActivityDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1331d774-f5e4-41e5-a461-843ed98017dd" 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_6a59a58d-9880-4e7a-8e22-9f18d12be944" 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_1331d774-f5e4-41e5-a461-843ed98017dd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_6a59a58d-9880-4e7a-8e22-9f18d12be944" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_f023f589-285e-4f61-b799-e7878c3c8231" 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_6a59a58d-9880-4e7a-8e22-9f18d12be944" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_f023f589-285e-4f61-b799-e7878c3c8231" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_de67db9e-0fdc-40a2-b4f2-9c7cb4aad751" 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_6a59a58d-9880-4e7a-8e22-9f18d12be944" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_de67db9e-0fdc-40a2-b4f2-9c7cb4aad751" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_8ef80e2f-14c8-4c17-804a-e1aecb18440f" 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_6a59a58d-9880-4e7a-8e22-9f18d12be944" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_8ef80e2f-14c8-4c17-804a-e1aecb18440f" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_9aaac74e-e259-42a7-82d7-7ee2fb5fec8f" 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_6a59a58d-9880-4e7a-8e22-9f18d12be944" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_9aaac74e-e259-42a7-82d7-7ee2fb5fec8f" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_2c3b2a45-21c2-4c10-b09e-2053c934de7a" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_a3156eb1-2b5e-4c04-b9b2-5a99183ed71e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1331d774-f5e4-41e5-a461-843ed98017dd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_a3156eb1-2b5e-4c04-b9b2-5a99183ed71e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_4fdfc099-d439-45ea-aa1d-599cb4d6c2a6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_a3156eb1-2b5e-4c04-b9b2-5a99183ed71e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_4fdfc099-d439-45ea-aa1d-599cb4d6c2a6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_9842e83a-8fc5-43c3-b761-658f5b710d71" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_a3156eb1-2b5e-4c04-b9b2-5a99183ed71e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_9842e83a-8fc5-43c3-b761-658f5b710d71" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_c06930bc-5e1b-47be-985d-7574363bdf5b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_a3156eb1-2b5e-4c04-b9b2-5a99183ed71e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_c06930bc-5e1b-47be-985d-7574363bdf5b" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_944f1cc8-afdb-440c-b1d7-6272a4d9a906" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_a3156eb1-2b5e-4c04-b9b2-5a99183ed71e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_944f1cc8-afdb-440c-b1d7-6272a4d9a906" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_4994feb2-e55d-4f7e-af08-c9742d078521" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_92df54c5-7a3d-4438-8b43-06ac62e84c4f" 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_1331d774-f5e4-41e5-a461-843ed98017dd" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_92df54c5-7a3d-4438-8b43-06ac62e84c4f" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_1e87a85d-fe0e-4e68-807a-5f02e5b49856" 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_92df54c5-7a3d-4438-8b43-06ac62e84c4f" xlink:to="loc_us-gaap_AwardTypeAxis_1e87a85d-fe0e-4e68-807a-5f02e5b49856" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1e87a85d-fe0e-4e68-807a-5f02e5b49856_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_1e87a85d-fe0e-4e68-807a-5f02e5b49856" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1e87a85d-fe0e-4e68-807a-5f02e5b49856_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_9760c52e-c917-4146-9f32-f4d0d5873591" 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_1e87a85d-fe0e-4e68-807a-5f02e5b49856" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_9760c52e-c917-4146-9f32-f4d0d5873591" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockMember_19d1e0c1-1986-4f62-b6c3-964fedac6f98" 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_9760c52e-c917-4146-9f32-f4d0d5873591" xlink:to="loc_us-gaap_RestrictedStockMember_19d1e0c1-1986-4f62-b6c3-964fedac6f98" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#RetirementBenefitPlansAdditionalInformationDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails" xlink:type="extended" id="ibeb0e45acb304a83a453ca0b6d26224c_RetirementBenefitPlansAdditionalInformationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" 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_alg_DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans_6ef1c6c0-992a-473f-9a75-0cba58b21f57" xlink:href="alg-20221231.xsd#alg_DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans_6ef1c6c0-992a-473f-9a75-0cba58b21f57" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_FormerEmployeesCoveredByPensionPlan_13d3c5fb-4d3e-4006-8427-90c545aa02ba" xlink:href="alg-20221231.xsd#alg_FormerEmployeesCoveredByPensionPlan"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_FormerEmployeesCoveredByPensionPlan_13d3c5fb-4d3e-4006-8427-90c545aa02ba" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_CurrentEmployeesCoveredByPensionPlan_29aeac8c-e716-4669-983f-c485b36546f5" xlink:href="alg-20221231.xsd#alg_CurrentEmployeesCoveredByPensionPlan"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_CurrentEmployeesCoveredByPensionPlan_29aeac8c-e716-4669-983f-c485b36546f5" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax_92120658-9781-4968-a4ab-aa611ba2b488" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax_92120658-9781-4968-a4ab-aa611ba2b488" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DeferredCompensationArrangementRequisiteServicePeriod_64c0a1de-fb32-42a3-8170-82f1b67aa157" xlink:href="alg-20221231.xsd#alg_DeferredCompensationArrangementRequisiteServicePeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_DeferredCompensationArrangementRequisiteServicePeriod_64c0a1de-fb32-42a3-8170-82f1b67aa157" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption_fed7c7e3-e9f0-405a-a28b-0a37551dae37" xlink:href="alg-20221231.xsd#alg_PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption_fed7c7e3-e9f0-405a-a28b-0a37551dae37" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit_d4b7bb37-1c49-4daf-a575-7f45e03ca11d" xlink:href="alg-20221231.xsd#alg_DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit_d4b7bb37-1c49-4daf-a575-7f45e03ca11d" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DeferredCompensationArrangementWithIndividualRetirementAge_ea51cc31-08c7-4bc2-b974-ccaf45e2cbf2" xlink:href="alg-20221231.xsd#alg_DeferredCompensationArrangementWithIndividualRetirementAge"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_DeferredCompensationArrangementWithIndividualRetirementAge_ea51cc31-08c7-4bc2-b974-ccaf45e2cbf2" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl_4920c0c1-1860-4a08-afb0-957a2d084ff7" xlink:href="alg-20221231.xsd#alg_DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl_4920c0c1-1860-4a08-afb0-957a2d084ff7" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DeferredCompensationArrangementMaximumContractualTerm_1314c588-0006-4c4a-a737-2e2b8d3d0c3d" xlink:href="alg-20221231.xsd#alg_DeferredCompensationArrangementMaximumContractualTerm"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_DeferredCompensationArrangementMaximumContractualTerm_1314c588-0006-4c4a-a737-2e2b8d3d0c3d" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DefinedBenefitPlanRetirementBenefitPercentage_4b7c72e1-fd20-40a4-be37-6da04f98b9b0" xlink:href="alg-20221231.xsd#alg_DefinedBenefitPlanRetirementBenefitPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_DefinedBenefitPlanRetirementBenefitPercentage_4b7c72e1-fd20-40a4-be37-6da04f98b9b0" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DefinedContributionPlanNumberOfPlans_969e5453-068f-48b0-8a76-156cc227f63f" xlink:href="alg-20221231.xsd#alg_DefinedContributionPlanNumberOfPlans"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_DefinedContributionPlanNumberOfPlans_969e5453-068f-48b0-8a76-156cc227f63f" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount_cb70213d-c3bf-4a8f-8ce0-d045d787b55c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount_cb70213d-c3bf-4a8f-8ce0-d045d787b55c" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DefinedContributionPlanNumberOfSubsidiaries_2be7378c-bd6d-44e9-b37b-0cb23030c919" xlink:href="alg-20221231.xsd#alg_DefinedContributionPlanNumberOfSubsidiaries"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_DefinedContributionPlanNumberOfSubsidiaries_2be7378c-bd6d-44e9-b37b-0cb23030c919" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_a4d2664b-a10f-4211-bcee-9bbea015c96f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_a4d2664b-a10f-4211-bcee-9bbea015c96f" xlink:type="arc" order="14"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_0fb0ba8f-a77f-4c18-a139-cc2806718567" 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_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_0fb0ba8f-a77f-4c18-a139-cc2806718567" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanSponsorLocationAxis_0668ff0e-013a-4b4c-969c-355f5415df6e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanSponsorLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_0fb0ba8f-a77f-4c18-a139-cc2806718567" xlink:to="loc_us-gaap_RetirementPlanSponsorLocationAxis_0668ff0e-013a-4b4c-969c-355f5415df6e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanSponsorLocationDomain_0668ff0e-013a-4b4c-969c-355f5415df6e_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanSponsorLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RetirementPlanSponsorLocationAxis_0668ff0e-013a-4b4c-969c-355f5415df6e" xlink:to="loc_us-gaap_RetirementPlanSponsorLocationDomain_0668ff0e-013a-4b4c-969c-355f5415df6e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanSponsorLocationDomain_f3b16a18-735f-405e-88f4-d87c78230c07" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanSponsorLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RetirementPlanSponsorLocationAxis_0668ff0e-013a-4b4c-969c-355f5415df6e" xlink:to="loc_us-gaap_RetirementPlanSponsorLocationDomain_f3b16a18-735f-405e-88f4-d87c78230c07" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DomesticPlanMember_f1d688c6-ef80-4a51-ad3e-38d8401975fe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DomesticPlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanSponsorLocationDomain_f3b16a18-735f-405e-88f4-d87c78230c07" xlink:to="loc_us-gaap_DomesticPlanMember_f1d688c6-ef80-4a51-ad3e-38d8401975fe" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_US_6d52c18a-6909-42bd-85d4-e6641cb01f24" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_US"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DomesticPlanMember_f1d688c6-ef80-4a51-ad3e-38d8401975fe" xlink:to="loc_country_US_6d52c18a-6909-42bd-85d4-e6641cb01f24" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignPlanMember_f557b929-ae18-45e6-a056-cc1810cadb4d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignPlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanSponsorLocationDomain_f3b16a18-735f-405e-88f4-d87c78230c07" xlink:to="loc_us-gaap_ForeignPlanMember_f557b929-ae18-45e6-a056-cc1810cadb4d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanNameAxis_00a63436-305d-42fa-8a23-81f4aea4ccac" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_0fb0ba8f-a77f-4c18-a139-cc2806718567" xlink:to="loc_us-gaap_RetirementPlanNameAxis_00a63436-305d-42fa-8a23-81f4aea4ccac" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanNameDomain_00a63436-305d-42fa-8a23-81f4aea4ccac_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RetirementPlanNameAxis_00a63436-305d-42fa-8a23-81f4aea4ccac" xlink:to="loc_us-gaap_RetirementPlanNameDomain_00a63436-305d-42fa-8a23-81f4aea4ccac_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanNameDomain_7a296fd4-ebbe-4d0e-a208-9245e02a3c03" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RetirementPlanNameAxis_00a63436-305d-42fa-8a23-81f4aea4ccac" xlink:to="loc_us-gaap_RetirementPlanNameDomain_7a296fd4-ebbe-4d0e-a208-9245e02a3c03" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_GradallCompanyEmployeesRetirementPlanMember_ac916d13-68cc-4e68-81ff-c0fd87b7eb3c" xlink:href="alg-20221231.xsd#alg_GradallCompanyEmployeesRetirementPlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanNameDomain_7a296fd4-ebbe-4d0e-a208-9245e02a3c03" xlink:to="loc_alg_GradallCompanyEmployeesRetirementPlanMember_ac916d13-68cc-4e68-81ff-c0fd87b7eb3c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember_9372e4ec-a1e8-49f9-bcc0-1ce55930cad7" xlink:href="alg-20221231.xsd#alg_InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanNameDomain_7a296fd4-ebbe-4d0e-a208-9245e02a3c03" xlink:to="loc_alg_InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember_9372e4ec-a1e8-49f9-bcc0-1ce55930cad7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_00a2361b-68f9-4c2d-87be-3c14369e7512" 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_0fb0ba8f-a77f-4c18-a139-cc2806718567" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_00a2361b-68f9-4c2d-87be-3c14369e7512" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_00a2361b-68f9-4c2d-87be-3c14369e7512_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_00a2361b-68f9-4c2d-87be-3c14369e7512" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_00a2361b-68f9-4c2d-87be-3c14369e7512_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_24c4ca06-4922-469d-980c-9d9062dcf108" 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_00a2361b-68f9-4c2d-87be-3c14369e7512" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_24c4ca06-4922-469d-980c-9d9062dcf108" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_b36bc0ad-a158-4815-98d0-9f934952471b" 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_24c4ca06-4922-469d-980c-9d9062dcf108" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_b36bc0ad-a158-4815-98d0-9f934952471b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_da734903-7df7-4b34-8336-01b89c9c8437" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_24c4ca06-4922-469d-980c-9d9062dcf108" xlink:to="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_da734903-7df7-4b34-8336-01b89c9c8437" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_d59f6617-2011-48ed-a351-d85a16896a2a" 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_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_0fb0ba8f-a77f-4c18-a139-cc2806718567" xlink:to="loc_srt_RangeAxis_d59f6617-2011-48ed-a351-d85a16896a2a" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_d59f6617-2011-48ed-a351-d85a16896a2a_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_d59f6617-2011-48ed-a351-d85a16896a2a" xlink:to="loc_srt_RangeMember_d59f6617-2011-48ed-a351-d85a16896a2a_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_08f9a068-53a1-4382-8805-78361c211930" 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_d59f6617-2011-48ed-a351-d85a16896a2a" xlink:to="loc_srt_RangeMember_08f9a068-53a1-4382-8805-78361c211930" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_591129fa-ff50-446c-aade-7790656e73b8" 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_08f9a068-53a1-4382-8805-78361c211930" xlink:to="loc_srt_MinimumMember_591129fa-ff50-446c-aade-7790656e73b8" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_86f7c7a6-9d8d-4da1-bd1b-6a27dce0ec5a" 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_08f9a068-53a1-4382-8805-78361c211930" xlink:to="loc_srt_MaximumMember_86f7c7a6-9d8d-4da1-bd1b-6a27dce0ec5a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementScenarioAxis_65552f30-dc88-4921-894a-a76494ec550c" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementScenarioAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_0fb0ba8f-a77f-4c18-a139-cc2806718567" xlink:to="loc_srt_StatementScenarioAxis_65552f30-dc88-4921-894a-a76494ec550c" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain_65552f30-dc88-4921-894a-a76494ec550c_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementScenarioAxis_65552f30-dc88-4921-894a-a76494ec550c" xlink:to="loc_srt_ScenarioUnspecifiedDomain_65552f30-dc88-4921-894a-a76494ec550c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain_1c45b786-ddc9-467e-8937-22221a4c072b" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementScenarioAxis_65552f30-dc88-4921-894a-a76494ec550c" xlink:to="loc_srt_ScenarioUnspecifiedDomain_1c45b786-ddc9-467e-8937-22221a4c072b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioForecastMember_d2b857b7-fedd-45df-b89c-0ecdc474bb2f" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioForecastMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ScenarioUnspecifiedDomain_1c45b786-ddc9-467e-8937-22221a4c072b" xlink:to="loc_srt_ScenarioForecastMember_d2b857b7-fedd-45df-b89c-0ecdc474bb2f" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails" xlink:type="extended" id="i5c600e5c5d3c41f78fd46d6b25b89289_RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_23efec39-bec9-44cd-bcc7-1b05f1b0f3ee" 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_DefinedBenefitPlanChangeInBenefitObligationRollForward_0a2ce67c-c71d-44a0-96f2-32ff12b6b30d" 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_DefinedBenefitPlanDisclosureLineItems_23efec39-bec9-44cd-bcc7-1b05f1b0f3ee" xlink:to="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_0a2ce67c-c71d-44a0-96f2-32ff12b6b30d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanBenefitObligation_e44fa7bd-b131-4fb5-9f57-1bed8ca2b8d8" 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_0a2ce67c-c71d-44a0-96f2-32ff12b6b30d" xlink:to="loc_us-gaap_DefinedBenefitPlanBenefitObligation_e44fa7bd-b131-4fb5-9f57-1bed8ca2b8d8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanServiceCost_5e37543b-2fe1-4f53-b0f5-3a0abb7d6727" 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_0a2ce67c-c71d-44a0-96f2-32ff12b6b30d" xlink:to="loc_us-gaap_DefinedBenefitPlanServiceCost_5e37543b-2fe1-4f53-b0f5-3a0abb7d6727" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanInterestCost_d4a7840b-a4c6-4171-8971-298c4d453621" 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_0a2ce67c-c71d-44a0-96f2-32ff12b6b30d" xlink:to="loc_us-gaap_DefinedBenefitPlanInterestCost_d4a7840b-a4c6-4171-8971-298c4d453621" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanActuarialGainLoss_73790f1c-7633-41af-9c08-65ae98e3cbdf" 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_0a2ce67c-c71d-44a0-96f2-32ff12b6b30d" xlink:to="loc_us-gaap_DefinedBenefitPlanActuarialGainLoss_73790f1c-7633-41af-9c08-65ae98e3cbdf" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid_0c5c98b2-d65a-463a-aaf6-3c6fb4c4937a" 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_0a2ce67c-c71d-44a0-96f2-32ff12b6b30d" xlink:to="loc_us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid_0c5c98b2-d65a-463a-aaf6-3c6fb4c4937a" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanBenefitObligation_2817d903-d9f1-4c8f-a18b-860c836fb6ab" 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_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward_41bca57f-ff39-4fc0-8651-590f605c1cdf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_23efec39-bec9-44cd-bcc7-1b05f1b0f3ee" xlink:to="loc_us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward_41bca57f-ff39-4fc0-8651-590f605c1cdf" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_15bc85da-e70d-4a7e-a929-31268718fe8e" 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_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward_41bca57f-ff39-4fc0-8651-590f605c1cdf" xlink:to="loc_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_15bc85da-e70d-4a7e-a929-31268718fe8e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets_8d588fed-0016-4cd8-bf7c-aab4a21a0769" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward_41bca57f-ff39-4fc0-8651-590f605c1cdf" xlink:to="loc_us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets_8d588fed-0016-4cd8-bf7c-aab4a21a0769" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanContributionsByEmployer_6f2476b0-1e86-4576-8f65-f64518212839" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanContributionsByEmployer"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward_41bca57f-ff39-4fc0-8651-590f605c1cdf" xlink:to="loc_us-gaap_DefinedBenefitPlanContributionsByEmployer_6f2476b0-1e86-4576-8f65-f64518212839" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid_75f244be-790b-446c-b771-ea1fa061dd2b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward_41bca57f-ff39-4fc0-8651-590f605c1cdf" xlink:to="loc_us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid_75f244be-790b-446c-b771-ea1fa061dd2b" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_928739e2-a4eb-4634-ba9a-2145bac46839" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanFundedStatusOfPlan_a41c98b2-bedf-4d0c-8652-40295a4d03d5" 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_DefinedBenefitPlanDisclosureLineItems_23efec39-bec9-44cd-bcc7-1b05f1b0f3ee" xlink:to="loc_us-gaap_DefinedBenefitPlanFundedStatusOfPlan_a41c98b2-bedf-4d0c-8652-40295a4d03d5" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_0d5adc9e-3347-4067-b14e-bfa50b190053" 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_23efec39-bec9-44cd-bcc7-1b05f1b0f3ee" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_0d5adc9e-3347-4067-b14e-bfa50b190053" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_1846b9e7-7bf8-450d-9226-1d6a6573ac90" 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_0d5adc9e-3347-4067-b14e-bfa50b190053" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_1846b9e7-7bf8-450d-9226-1d6a6573ac90" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_1846b9e7-7bf8-450d-9226-1d6a6573ac90_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_1846b9e7-7bf8-450d-9226-1d6a6573ac90" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_1846b9e7-7bf8-450d-9226-1d6a6573ac90_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_3483ae73-e0af-4fbe-bc42-9543028afd96" 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_1846b9e7-7bf8-450d-9226-1d6a6573ac90" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_3483ae73-e0af-4fbe-bc42-9543028afd96" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_1df04353-da77-458f-9938-8896c1dfb900" 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_3483ae73-e0af-4fbe-bc42-9543028afd96" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_1df04353-da77-458f-9938-8896c1dfb900" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_71271af6-a3ac-47bd-9393-ad117ba52303" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_3483ae73-e0af-4fbe-bc42-9543028afd96" xlink:to="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_71271af6-a3ac-47bd-9393-ad117ba52303" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofAssumptionsUsedDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#RetirementBenefitPlansScheduleofAssumptionsUsedDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofAssumptionsUsedDetails" xlink:type="extended" id="id7f54ca849ce4c229c5ac91862bd466a_RetirementBenefitPlansScheduleofAssumptionsUsedDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_7bc63f66-e222-4aa3-a03c-77632080fb79" 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_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate_70db4a47-e713-4106-8584-108f098ca36b" 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_DefinedBenefitPlanDisclosureLineItems_7bc63f66-e222-4aa3-a03c-77632080fb79" xlink:to="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate_70db4a47-e713-4106-8584-108f098ca36b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease_0c8b2678-9c28-4fa0-87c4-6f34f84b5391" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_7bc63f66-e222-4aa3-a03c-77632080fb79" xlink:to="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease_0c8b2678-9c28-4fa0-87c4-6f34f84b5391" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate_2bae1632-ef55-4317-b81d-f9cfc1b4450b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_7bc63f66-e222-4aa3-a03c-77632080fb79" xlink:to="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate_2bae1632-ef55-4317-b81d-f9cfc1b4450b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease_4527be56-32a5-4998-8feb-232fdfdf0986" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_7bc63f66-e222-4aa3-a03c-77632080fb79" xlink:to="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease_4527be56-32a5-4998-8feb-232fdfdf0986" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets_c3e64e34-80fb-48b7-a69b-4ae9ddeafa94" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_7bc63f66-e222-4aa3-a03c-77632080fb79" xlink:to="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets_c3e64e34-80fb-48b7-a69b-4ae9ddeafa94" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_3f881ec5-ff31-44ab-a62a-c0e11f6520ea" 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_7bc63f66-e222-4aa3-a03c-77632080fb79" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_3f881ec5-ff31-44ab-a62a-c0e11f6520ea" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_829ca27d-38fa-477e-a8af-6135429cd838" 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_3f881ec5-ff31-44ab-a62a-c0e11f6520ea" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_829ca27d-38fa-477e-a8af-6135429cd838" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_829ca27d-38fa-477e-a8af-6135429cd838_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_829ca27d-38fa-477e-a8af-6135429cd838" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_829ca27d-38fa-477e-a8af-6135429cd838_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_98d2a852-3416-47e9-be1e-59db4f0b90f3" 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_829ca27d-38fa-477e-a8af-6135429cd838" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_98d2a852-3416-47e9-be1e-59db4f0b90f3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_7b4563a9-8633-48ea-b3d0-cbf612d5be68" 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_98d2a852-3416-47e9-be1e-59db4f0b90f3" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_7b4563a9-8633-48ea-b3d0-cbf612d5be68" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_ab9ac360-c237-497e-a9ee-f9fa52b070bb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_98d2a852-3416-47e9-be1e-59db4f0b90f3" xlink:to="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_ab9ac360-c237-497e-a9ee-f9fa52b070bb" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails" xlink:type="extended" id="i50e67a9a820f4b92a43df2b45a42fdfa_RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_805cc496-264f-42df-8dec-eacb23e05328" 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_DefinedBenefitPlanServiceCost_a1e6ed6e-b5d3-456a-a07a-c84e148b04a2" 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_DefinedBenefitPlanDisclosureLineItems_805cc496-264f-42df-8dec-eacb23e05328" xlink:to="loc_us-gaap_DefinedBenefitPlanServiceCost_a1e6ed6e-b5d3-456a-a07a-c84e148b04a2" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanInterestCost_6c0583f2-5588-4810-9123-99dfcd342016" 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_DefinedBenefitPlanDisclosureLineItems_805cc496-264f-42df-8dec-eacb23e05328" xlink:to="loc_us-gaap_DefinedBenefitPlanInterestCost_6c0583f2-5588-4810-9123-99dfcd342016" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets_c5bcba88-9e03-41a2-93f5-e3bb6087b276" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_805cc496-264f-42df-8dec-eacb23e05328" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets_c5bcba88-9e03-41a2-93f5-e3bb6087b276" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_9cfe43b3-ed06-4775-9c44-3632dedf2823" 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_DefinedBenefitPlanDisclosureLineItems_805cc496-264f-42df-8dec-eacb23e05328" xlink:to="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_9cfe43b3-ed06-4775-9c44-3632dedf2823" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses_774bb641-28b3-49e1-9957-a6b9a2455529" 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_DefinedBenefitPlanDisclosureLineItems_805cc496-264f-42df-8dec-eacb23e05328" xlink:to="loc_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses_774bb641-28b3-49e1-9957-a6b9a2455529" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_f3b202bc-6d03-461e-96cb-ac27fe10f12e" 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_DefinedBenefitPlanDisclosureLineItems_805cc496-264f-42df-8dec-eacb23e05328" xlink:to="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_f3b202bc-6d03-461e-96cb-ac27fe10f12e" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_31572194-5358-46a5-99fc-fde46489d0ea" 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_805cc496-264f-42df-8dec-eacb23e05328" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_31572194-5358-46a5-99fc-fde46489d0ea" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_a1cc7108-fd81-4e5b-b777-dbc54d19d7ab" 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_31572194-5358-46a5-99fc-fde46489d0ea" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_a1cc7108-fd81-4e5b-b777-dbc54d19d7ab" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_a1cc7108-fd81-4e5b-b777-dbc54d19d7ab_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_a1cc7108-fd81-4e5b-b777-dbc54d19d7ab" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_a1cc7108-fd81-4e5b-b777-dbc54d19d7ab_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_513e7927-68f6-4edb-8c84-44940198fbd9" 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_a1cc7108-fd81-4e5b-b777-dbc54d19d7ab" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_513e7927-68f6-4edb-8c84-44940198fbd9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_1e844ba2-06cb-4e2e-a545-f7fa6afbcf67" 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_513e7927-68f6-4edb-8c84-44940198fbd9" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_1e844ba2-06cb-4e2e-a545-f7fa6afbcf67" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_357506ef-2b0a-4e26-a03a-bb391c3cb91c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_513e7927-68f6-4edb-8c84-44940198fbd9" xlink:to="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_357506ef-2b0a-4e26-a03a-bb391c3cb91c" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansWeightedAverageAssetAllocationsDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#RetirementBenefitPlansWeightedAverageAssetAllocationsDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/RetirementBenefitPlansWeightedAverageAssetAllocationsDetails" xlink:type="extended" id="i2cd256ee734647d4b07ab818ea024e70_RetirementBenefitPlansWeightedAverageAssetAllocationsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_867cc7a0-30c1-4308-8b67-6eea783e0a2c" 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_DefinedBenefitPlanWeightedAverageAssetAllocations_74c0b08a-3f76-42a3-a712-52e41a96d01a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_867cc7a0-30c1-4308-8b67-6eea783e0a2c" xlink:to="loc_us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations_74c0b08a-3f76-42a3-a712-52e41a96d01a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_d937855f-dd45-4263-825a-c7b5e22bdca3" 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_867cc7a0-30c1-4308-8b67-6eea783e0a2c" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_d937855f-dd45-4263-825a-c7b5e22bdca3" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_9d4f4f73-3435-4a24-b227-c9ad9d2bed40" 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_d937855f-dd45-4263-825a-c7b5e22bdca3" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_9d4f4f73-3435-4a24-b227-c9ad9d2bed40" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_9d4f4f73-3435-4a24-b227-c9ad9d2bed40_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_9d4f4f73-3435-4a24-b227-c9ad9d2bed40" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_9d4f4f73-3435-4a24-b227-c9ad9d2bed40_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_0376f105-46d9-4db6-9c54-08df24b0f769" 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_9d4f4f73-3435-4a24-b227-c9ad9d2bed40" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_0376f105-46d9-4db6-9c54-08df24b0f769" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_b1eaccb4-44b5-4ab2-bfcc-efdf68ff04f0" 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_0376f105-46d9-4db6-9c54-08df24b0f769" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_b1eaccb4-44b5-4ab2-bfcc-efdf68ff04f0" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis_3765bc43-d45e-4fc3-a667-ca97fb2d5479" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_d937855f-dd45-4263-825a-c7b5e22bdca3" xlink:to="loc_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis_3765bc43-d45e-4fc3-a667-ca97fb2d5479" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanAssetCategoriesDomain_3765bc43-d45e-4fc3-a667-ca97fb2d5479_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanAssetCategoriesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis_3765bc43-d45e-4fc3-a667-ca97fb2d5479" xlink:to="loc_us-gaap_PlanAssetCategoriesDomain_3765bc43-d45e-4fc3-a667-ca97fb2d5479_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanAssetCategoriesDomain_d698dccb-a766-4e9a-a68a-fc9a36ee3523" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanAssetCategoriesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis_3765bc43-d45e-4fc3-a667-ca97fb2d5479" xlink:to="loc_us-gaap_PlanAssetCategoriesDomain_d698dccb-a766-4e9a-a68a-fc9a36ee3523" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanEquitySecuritiesMember_ae9735f4-59ed-414b-a064-351ab46550fa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanEquitySecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d698dccb-a766-4e9a-a68a-fc9a36ee3523" xlink:to="loc_us-gaap_DefinedBenefitPlanEquitySecuritiesMember_ae9735f4-59ed-414b-a064-351ab46550fa" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDebtSecurityMember_b64f4ef3-c013-4543-9461-21f246b0a2ee" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanDebtSecurityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d698dccb-a766-4e9a-a68a-fc9a36ee3523" xlink:to="loc_us-gaap_DefinedBenefitPlanDebtSecurityMember_b64f4ef3-c013-4543-9461-21f246b0a2ee" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermInvestmentsMember_e12752fb-6461-4c58-b09c-742daa009588" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermInvestmentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d698dccb-a766-4e9a-a68a-fc9a36ee3523" xlink:to="loc_us-gaap_ShortTermInvestmentsMember_e12752fb-6461-4c58-b09c-742daa009588" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherInvestmentsMember_7b295101-5625-48e6-8d4e-430352ffd6d4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherInvestmentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d698dccb-a766-4e9a-a68a-fc9a36ee3523" xlink:to="loc_us-gaap_OtherInvestmentsMember_7b295101-5625-48e6-8d4e-430352ffd6d4" xlink:type="arc" order="3"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails" xlink:type="extended" id="i185dd91b5d8b4743a1545c1be4f973c1_RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_076df507-dab3-4e1b-95b8-09f9e75a4941" 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_DefinedBenefitPlanFairValueOfPlanAssets_e2deabc9-cbd0-4994-8eeb-7b0bc91ed478" 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_DefinedBenefitPlanDisclosureLineItems_076df507-dab3-4e1b-95b8-09f9e75a4941" xlink:to="loc_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_e2deabc9-cbd0-4994-8eeb-7b0bc91ed478" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_a2d7b477-bd7f-45e1-8df6-3dfd726c9f8d" 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_076df507-dab3-4e1b-95b8-09f9e75a4941" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_a2d7b477-bd7f-45e1-8df6-3dfd726c9f8d" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis_fd699d33-a843-462e-8176-991bf99edf92" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_a2d7b477-bd7f-45e1-8df6-3dfd726c9f8d" xlink:to="loc_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis_fd699d33-a843-462e-8176-991bf99edf92" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanAssetCategoriesDomain_fd699d33-a843-462e-8176-991bf99edf92_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanAssetCategoriesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis_fd699d33-a843-462e-8176-991bf99edf92" xlink:to="loc_us-gaap_PlanAssetCategoriesDomain_fd699d33-a843-462e-8176-991bf99edf92_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanAssetCategoriesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis_fd699d33-a843-462e-8176-991bf99edf92" xlink:to="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_MidCapMutualFundsMember_2b439e92-5a41-4939-bcb1-67d6eb2c3325" xlink:href="alg-20221231.xsd#alg_MidCapMutualFundsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_MidCapMutualFundsMember_2b439e92-5a41-4939-bcb1-67d6eb2c3325" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_InternationalMutualFundsMember_ba5f45d4-01b4-4ecd-b4de-d9e043c8a59d" xlink:href="alg-20221231.xsd#alg_InternationalMutualFundsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_InternationalMutualFundsMember_ba5f45d4-01b4-4ecd-b4de-d9e043c8a59d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_LiabilityDrivenSolutionCITIMember_39a53742-e427-4d18-8f95-e5d15ff0fcee" xlink:href="alg-20221231.xsd#alg_LiabilityDrivenSolutionCITIMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_LiabilityDrivenSolutionCITIMember_39a53742-e427-4d18-8f95-e5d15ff0fcee" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_LiabilityDrivenSolutionCITIIMember_1714062c-3556-4051-b801-2c6c00cccbe6" xlink:href="alg-20221231.xsd#alg_LiabilityDrivenSolutionCITIIMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_LiabilityDrivenSolutionCITIIMember_1714062c-3556-4051-b801-2c6c00cccbe6" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoInternationalEquityIndexFundMember_2795cdcc-403b-4272-b11f-4ad60baf1042" xlink:href="alg-20221231.xsd#alg_WellsFargoInternationalEquityIndexFundMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_WellsFargoInternationalEquityIndexFundMember_2795cdcc-403b-4272-b11f-4ad60baf1042" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoCausewayMember_e2285c71-6ea9-49cf-a09f-915388383dee" xlink:href="alg-20221231.xsd#alg_WellsFargoCausewayMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_WellsFargoCausewayMember_e2285c71-6ea9-49cf-a09f-915388383dee" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoLargeCapGrowthIndexFundMember_d8805e04-6817-4542-8564-f0af65443191" xlink:href="alg-20221231.xsd#alg_WellsFargoLargeCapGrowthIndexFundMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_WellsFargoLargeCapGrowthIndexFundMember_d8805e04-6817-4542-8564-f0af65443191" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoLargeCapValueIndexFundMember_67c9c297-e179-468e-9c93-639f5507fd26" xlink:href="alg-20221231.xsd#alg_WellsFargoLargeCapValueIndexFundMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_WellsFargoLargeCapValueIndexFundMember_67c9c297-e179-468e-9c93-639f5507fd26" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoMultiManagerSmallCapMember_6f1c9ca1-d941-44b8-af09-06cf6836a85f" xlink:href="alg-20221231.xsd#alg_WellsFargoMultiManagerSmallCapMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_WellsFargoMultiManagerSmallCapMember_6f1c9ca1-d941-44b8-af09-06cf6836a85f" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember_d38a9689-2acb-4d7c-83d5-dc312e679090" xlink:href="alg-20221231.xsd#alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember_d38a9689-2acb-4d7c-83d5-dc312e679090" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoStandardAndPoorsMidCapIndexFundMember_00e50094-92c2-4f48-a95f-81f1922b144c" xlink:href="alg-20221231.xsd#alg_WellsFargoStandardAndPoorsMidCapIndexFundMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_WellsFargoStandardAndPoorsMidCapIndexFundMember_00e50094-92c2-4f48-a95f-81f1922b144c" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoMFSValueCITFMember_e97e509b-a71d-46fb-ad99-967758121c14" xlink:href="alg-20221231.xsd#alg_WellsFargoMFSValueCITFMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_WellsFargoMFSValueCITFMember_e97e509b-a71d-46fb-ad99-967758121c14" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember_268746b5-0fba-4214-966f-a9fa09122216" xlink:href="alg-20221231.xsd#alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember_268746b5-0fba-4214-966f-a9fa09122216" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_TRowePriceEquityIncomeMember_7618d823-5e80-4816-b367-9296a4e3187d" xlink:href="alg-20221231.xsd#alg_TRowePriceEquityIncomeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_TRowePriceEquityIncomeMember_7618d823-5e80-4816-b367-9296a4e3187d" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoVoyaLargeCapGrowthCITFMember_4c2615af-8f78-4edf-88e8-cc607a123085" xlink:href="alg-20221231.xsd#alg_WellsFargoVoyaLargeCapGrowthCITFMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_WellsFargoVoyaLargeCapGrowthCITFMember_4c2615af-8f78-4edf-88e8-cc607a123085" xlink:type="arc" order="14"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_CashAndShortTermInvestmentsMember_64249f6a-1265-4f7c-ab69-1da346572079" xlink:href="alg-20221231.xsd#alg_CashAndShortTermInvestmentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_CashAndShortTermInvestmentsMember_64249f6a-1265-4f7c-ab69-1da346572079" xlink:type="arc" order="15"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_dfa7ce8a-97ab-4911-8142-00b760da2332" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_a2d7b477-bd7f-45e1-8df6-3dfd726c9f8d" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_dfa7ce8a-97ab-4911-8142-00b760da2332" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_dfa7ce8a-97ab-4911-8142-00b760da2332_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_dfa7ce8a-97ab-4911-8142-00b760da2332" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_dfa7ce8a-97ab-4911-8142-00b760da2332_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_26110155-d7eb-42b3-af85-ced42c7b53ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_dfa7ce8a-97ab-4911-8142-00b760da2332" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_26110155-d7eb-42b3-af85-ced42c7b53ae" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_32b70385-80d0-41ac-9732-cb1b7bb29a00" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_26110155-d7eb-42b3-af85-ced42c7b53ae" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_32b70385-80d0-41ac-9732-cb1b7bb29a00" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_3f95ad57-4e36-4ee2-92d3-8c4539d98cad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_26110155-d7eb-42b3-af85-ced42c7b53ae" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_3f95ad57-4e36-4ee2-92d3-8c4539d98cad" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_83d94e5e-bebd-47f5-b109-fc6ef423aad1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_26110155-d7eb-42b3-af85-ced42c7b53ae" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_83d94e5e-bebd-47f5-b109-fc6ef423aad1" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails" xlink:type="extended" id="i87fc792ff2a04f6785d32fdf767f441b_RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_c3b398b8-90a0-4e08-8d6d-b278f8354233" 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_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths_6dcd5d85-78ff-4242-bf8e-ecd3ac8559f4" 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_DefinedBenefitPlanDisclosureLineItems_c3b398b8-90a0-4e08-8d6d-b278f8354233" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths_6dcd5d85-78ff-4242-bf8e-ecd3ac8559f4" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo_6b7e59bb-e9f8-4949-9511-eda99ce70b70" 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_DefinedBenefitPlanDisclosureLineItems_c3b398b8-90a0-4e08-8d6d-b278f8354233" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo_6b7e59bb-e9f8-4949-9511-eda99ce70b70" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree_d549b50c-b33a-4625-84b1-d51c2b3257c0" 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_DefinedBenefitPlanDisclosureLineItems_c3b398b8-90a0-4e08-8d6d-b278f8354233" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree_d549b50c-b33a-4625-84b1-d51c2b3257c0" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour_5b94bfc3-7008-4059-a0f5-c43bf1c6a064" 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_DefinedBenefitPlanDisclosureLineItems_c3b398b8-90a0-4e08-8d6d-b278f8354233" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour_5b94bfc3-7008-4059-a0f5-c43bf1c6a064" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive_00598bbd-88f7-494c-a45b-9781ae026269" 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_DefinedBenefitPlanDisclosureLineItems_c3b398b8-90a0-4e08-8d6d-b278f8354233" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive_00598bbd-88f7-494c-a45b-9781ae026269" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter_62e877fb-669d-44b8-9228-fa9b12491f18" 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_DefinedBenefitPlanDisclosureLineItems_c3b398b8-90a0-4e08-8d6d-b278f8354233" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter_62e877fb-669d-44b8-9228-fa9b12491f18" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_361ae17c-c951-471f-a9ab-789acabc7396" 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_c3b398b8-90a0-4e08-8d6d-b278f8354233" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_361ae17c-c951-471f-a9ab-789acabc7396" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_63df2229-fdce-4389-8906-5aab7f6e020b" 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_361ae17c-c951-471f-a9ab-789acabc7396" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_63df2229-fdce-4389-8906-5aab7f6e020b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_63df2229-fdce-4389-8906-5aab7f6e020b_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_63df2229-fdce-4389-8906-5aab7f6e020b" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_63df2229-fdce-4389-8906-5aab7f6e020b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_ba7c96fb-0c69-49d1-a77f-ed2fef032f0e" 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_63df2229-fdce-4389-8906-5aab7f6e020b" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_ba7c96fb-0c69-49d1-a77f-ed2fef032f0e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_6b34f98d-0551-414c-b887-176bb27779a3" 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_ba7c96fb-0c69-49d1-a77f-ed2fef032f0e" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_6b34f98d-0551-414c-b887-176bb27779a3" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_3a8b2573-d53b-4241-9e9d-a2c1e11c05f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_ba7c96fb-0c69-49d1-a77f-ed2fef032f0e" xlink:to="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_3a8b2573-d53b-4241-9e9d-a2c1e11c05f4" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#RevenueandSegmentReportingScheduleofSegmentReportingDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails" xlink:type="extended" id="i6cb437e7f3284332b54c97bfb2579861_RevenueandSegmentReportingScheduleofSegmentReportingDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_b12cdb73-fa5b-44b7-818c-88d9143c1e6d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_cc5e7913-4742-41d3-92e0-7b090341c33b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_b12cdb73-fa5b-44b7-818c-88d9143c1e6d" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_cc5e7913-4742-41d3-92e0-7b090341c33b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_701b7caf-e222-4085-8c13-9ffee5bcd947" 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_SegmentReportingInformationLineItems_b12cdb73-fa5b-44b7-818c-88d9143c1e6d" xlink:to="loc_us-gaap_OperatingIncomeLoss_701b7caf-e222-4085-8c13-9ffee5bcd947" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_f8db21cf-9e50-4285-a624-95d0568f80b9" 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_SegmentReportingInformationLineItems_b12cdb73-fa5b-44b7-818c-88d9143c1e6d" xlink:to="loc_us-gaap_Goodwill_f8db21cf-9e50-4285-a624-95d0568f80b9" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_a93421c1-93bc-4e47-a721-c92b62f14582" 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_SegmentReportingInformationLineItems_b12cdb73-fa5b-44b7-818c-88d9143c1e6d" xlink:to="loc_us-gaap_Assets_a93421c1-93bc-4e47-a721-c92b62f14582" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_ef232385-435f-43b1-af42-9692dabfdcad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_b12cdb73-fa5b-44b7-818c-88d9143c1e6d" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_ef232385-435f-43b1-af42-9692dabfdcad" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_a83c66f5-952a-4a83-b050-2c43be72de14" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductOrServiceAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_ef232385-435f-43b1-af42-9692dabfdcad" xlink:to="loc_srt_ProductOrServiceAxis_a83c66f5-952a-4a83-b050-2c43be72de14" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_a83c66f5-952a-4a83-b050-2c43be72de14_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_a83c66f5-952a-4a83-b050-2c43be72de14" xlink:to="loc_srt_ProductsAndServicesDomain_a83c66f5-952a-4a83-b050-2c43be72de14_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_a62c638c-e3de-4fb4-8598-6193b72a9ff6" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_a83c66f5-952a-4a83-b050-2c43be72de14" xlink:to="loc_srt_ProductsAndServicesDomain_a62c638c-e3de-4fb4-8598-6193b72a9ff6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WholegoodUnitsMember_2eb971de-ec84-4ddd-a581-5e6368e02bf5" xlink:href="alg-20221231.xsd#alg_WholegoodUnitsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_a62c638c-e3de-4fb4-8598-6193b72a9ff6" xlink:to="loc_alg_WholegoodUnitsMember_2eb971de-ec84-4ddd-a581-5e6368e02bf5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_PartsMember_19fbaccc-b4e3-41d3-97e4-9b3fd6f4294a" xlink:href="alg-20221231.xsd#alg_PartsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_a62c638c-e3de-4fb4-8598-6193b72a9ff6" xlink:to="loc_alg_PartsMember_19fbaccc-b4e3-41d3-97e4-9b3fd6f4294a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductAndServiceOtherMember_4594198d-9a45-41c0-894b-2e448867ae6f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductAndServiceOtherMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_a62c638c-e3de-4fb4-8598-6193b72a9ff6" xlink:to="loc_us-gaap_ProductAndServiceOtherMember_4594198d-9a45-41c0-894b-2e448867ae6f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_d6073915-66ac-4a10-96a9-a7a3e71ee8e5" 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_ScheduleOfSegmentReportingInformationBySegmentTable_ef232385-435f-43b1-af42-9692dabfdcad" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_d6073915-66ac-4a10-96a9-a7a3e71ee8e5" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_d6073915-66ac-4a10-96a9-a7a3e71ee8e5_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_d6073915-66ac-4a10-96a9-a7a3e71ee8e5" xlink:to="loc_us-gaap_SegmentDomain_d6073915-66ac-4a10-96a9-a7a3e71ee8e5_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_712eb5f1-0a71-42ca-a873-b1ed0c860bc8" 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_d6073915-66ac-4a10-96a9-a7a3e71ee8e5" xlink:to="loc_us-gaap_SegmentDomain_712eb5f1-0a71-42ca-a873-b1ed0c860bc8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_VegetationManagementMember_ee9f4619-9d4d-4f4b-8a3d-d209ba551381" xlink:href="alg-20221231.xsd#alg_VegetationManagementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_712eb5f1-0a71-42ca-a873-b1ed0c860bc8" xlink:to="loc_alg_VegetationManagementMember_ee9f4619-9d4d-4f4b-8a3d-d209ba551381" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_IndustrialManagementMember_77ebdfff-5372-44fc-8393-a8d09a5e2795" xlink:href="alg-20221231.xsd#alg_IndustrialManagementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_712eb5f1-0a71-42ca-a873-b1ed0c860bc8" xlink:to="loc_alg_IndustrialManagementMember_77ebdfff-5372-44fc-8393-a8d09a5e2795" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#AccumulatedOtherComprehensiveLossDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossDetails" xlink:type="extended" id="i142ad078955d4997a227c16c19f1f012_AccumulatedOtherComprehensiveLossDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_32310723-2644-4710-a08c-abddbfd13481" 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_AOCIAttributableToParentNetOfTaxRollForward_d40eb41c-611a-41d0-9b7e-3e0e11d074d4" 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_32310723-2644-4710-a08c-abddbfd13481" xlink:to="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_d40eb41c-611a-41d0-9b7e-3e0e11d074d4" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_22149c5a-fbe8-42ae-bafe-4e9bc938f44c" 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_AOCIAttributableToParentNetOfTaxRollForward_d40eb41c-611a-41d0-9b7e-3e0e11d074d4" xlink:to="loc_us-gaap_StockholdersEquity_22149c5a-fbe8-42ae-bafe-4e9bc938f44c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent_90370194-ebab-41b0-a2b9-1add21dae9d2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_d40eb41c-611a-41d0-9b7e-3e0e11d074d4" xlink:to="loc_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent_90370194-ebab-41b0-a2b9-1add21dae9d2" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent_322ad0f6-d29e-4eb5-a840-c9801db9d4fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_d40eb41c-611a-41d0-9b7e-3e0e11d074d4" xlink:to="loc_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent_322ad0f6-d29e-4eb5-a840-c9801db9d4fd" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_9d75718a-6eb1-473e-8ba9-aa840d44ab5a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_d40eb41c-611a-41d0-9b7e-3e0e11d074d4" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_9d75718a-6eb1-473e-8ba9-aa840d44ab5a" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_c567589f-ef19-4dd8-a872-baa4d29afc24" 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_AccumulatedOtherComprehensiveIncomeLossTable_afded7ac-49e5-4109-a383-d51ee383d3c4" 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_32310723-2644-4710-a08c-abddbfd13481" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_afded7ac-49e5-4109-a383-d51ee383d3c4" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_bb68faff-4e77-47b6-9cdf-1518ef726a19" 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_afded7ac-49e5-4109-a383-d51ee383d3c4" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_bb68faff-4e77-47b6-9cdf-1518ef726a19" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_bb68faff-4e77-47b6-9cdf-1518ef726a19_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_bb68faff-4e77-47b6-9cdf-1518ef726a19" xlink:to="loc_us-gaap_EquityComponentDomain_bb68faff-4e77-47b6-9cdf-1518ef726a19_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_708f3bcf-54cc-4724-b0a7-5cad080a09d9" 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_bb68faff-4e77-47b6-9cdf-1518ef726a19" xlink:to="loc_us-gaap_EquityComponentDomain_708f3bcf-54cc-4724-b0a7-5cad080a09d9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedTranslationAdjustmentMember_47f377f1-6663-44dd-be7d-7b98c081238a" 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_708f3bcf-54cc-4724-b0a7-5cad080a09d9" xlink:to="loc_us-gaap_AccumulatedTranslationAdjustmentMember_47f377f1-6663-44dd-be7d-7b98c081238a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember_9e129d95-ed21-484a-93d6-9cf41f79997b" 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_708f3bcf-54cc-4724-b0a7-5cad080a09d9" xlink:to="loc_us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember_9e129d95-ed21-484a-93d6-9cf41f79997b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember_2bf14a98-a1ea-4225-a1ec-996a61e88fe0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_708f3bcf-54cc-4724-b0a7-5cad080a09d9" xlink:to="loc_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember_2bf14a98-a1ea-4225-a1ec-996a61e88fe0" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_7dd49e04-682e-40bf-91a0-d3ed04664c51" 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_708f3bcf-54cc-4724-b0a7-5cad080a09d9" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_7dd49e04-682e-40bf-91a0-d3ed04664c51" xlink:type="arc" order="3"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofInternationalOperationsDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#InternationalOperationsandGeographicInformationScheduleofInternationalOperationsDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofInternationalOperationsDetails" xlink:type="extended" id="i9a2e658a39844035a7504d9fd44dd7c1_InternationalOperationsandGeographicInformationScheduleofInternationalOperationsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_d400549e-7ab5-4023-bb78-0feca38f7114" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Revenues_c4754ed8-a01c-41a0-ba46-14fee97985d4" 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_SegmentReportingInformationLineItems_d400549e-7ab5-4023-bb78-0feca38f7114" xlink:to="loc_us-gaap_Revenues_c4754ed8-a01c-41a0-ba46-14fee97985d4" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_e43a62da-3685-461b-ae36-ad249889aa7e" 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_SegmentReportingInformationLineItems_d400549e-7ab5-4023-bb78-0feca38f7114" xlink:to="loc_us-gaap_OperatingIncomeLoss_e43a62da-3685-461b-ae36-ad249889aa7e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_7d0554cf-a414-498f-90b5-1d82d5c8ad4f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_d400549e-7ab5-4023-bb78-0feca38f7114" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_7d0554cf-a414-498f-90b5-1d82d5c8ad4f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_89277b50-28d0-45dd-8068-ff63e32a0bde" 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_SegmentReportingInformationLineItems_d400549e-7ab5-4023-bb78-0feca38f7114" xlink:to="loc_us-gaap_Assets_89277b50-28d0-45dd-8068-ff63e32a0bde" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_30d06afa-a57f-4c6c-b55f-f3c429d055d0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_d400549e-7ab5-4023-bb78-0feca38f7114" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_30d06afa-a57f-4c6c-b55f-f3c429d055d0" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis_34289ce1-21be-4f02-a5c2-af93788ba0c6" 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_ScheduleOfSegmentReportingInformationBySegmentTable_30d06afa-a57f-4c6c-b55f-f3c429d055d0" xlink:to="loc_srt_StatementGeographicalAxis_34289ce1-21be-4f02-a5c2-af93788ba0c6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_34289ce1-21be-4f02-a5c2-af93788ba0c6_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_34289ce1-21be-4f02-a5c2-af93788ba0c6" xlink:to="loc_srt_SegmentGeographicalDomain_34289ce1-21be-4f02-a5c2-af93788ba0c6_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_85ac9db8-527c-49aa-9160-d0f8113e5ac8" 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_34289ce1-21be-4f02-a5c2-af93788ba0c6" xlink:to="loc_srt_SegmentGeographicalDomain_85ac9db8-527c-49aa-9160-d0f8113e5ac8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NonUsMember_94e9914a-f4d4-403c-9db0-597e3b34b476" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonUsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_85ac9db8-527c-49aa-9160-d0f8113e5ac8" xlink:to="loc_us-gaap_NonUsMember_94e9914a-f4d4-403c-9db0-597e3b34b476" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails"/>
  <link:definitionLink xlink:role="http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails" xlink:type="extended" id="i749cce47c66d4d919f358b6bcaf40345_InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_6ffa8f67-1aa2-488d-b799-49b147287abf" 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_339c085d-950d-4197-827d-819386614c2f" 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_6ffa8f67-1aa2-488d-b799-49b147287abf" xlink:to="loc_us-gaap_Revenues_339c085d-950d-4197-827d-819386614c2f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncurrentAssets_58914d6a-7cff-43de-84a7-f1144057a844" 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_6ffa8f67-1aa2-488d-b799-49b147287abf" xlink:to="loc_us-gaap_NoncurrentAssets_58914d6a-7cff-43de-84a7-f1144057a844" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_ccecd82e-0e48-4649-811f-2772e9fed79c" 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_6ffa8f67-1aa2-488d-b799-49b147287abf" xlink:to="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_ccecd82e-0e48-4649-811f-2772e9fed79c" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis_18b5bf45-4adf-4c67-80f5-80a41d10862d" 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_ccecd82e-0e48-4649-811f-2772e9fed79c" xlink:to="loc_srt_StatementGeographicalAxis_18b5bf45-4adf-4c67-80f5-80a41d10862d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_18b5bf45-4adf-4c67-80f5-80a41d10862d_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_18b5bf45-4adf-4c67-80f5-80a41d10862d" xlink:to="loc_srt_SegmentGeographicalDomain_18b5bf45-4adf-4c67-80f5-80a41d10862d_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" 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_18b5bf45-4adf-4c67-80f5-80a41d10862d" xlink:to="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_US_8593e53c-2ca6-4d37-b59c-fc971da4671b" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_US"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" xlink:to="loc_country_US_8593e53c-2ca6-4d37-b59c-fc971da4671b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_FR_c02eb4e4-7439-4e92-85a8-b16b367eb93c" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_FR"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" xlink:to="loc_country_FR_c02eb4e4-7439-4e92-85a8-b16b367eb93c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_CA_1519d762-77f1-4a90-b54e-ed2c6764778b" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_CA"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" xlink:to="loc_country_CA_1519d762-77f1-4a90-b54e-ed2c6764778b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_GB_425ca351-2bc0-48da-bb16-0de0bc2ba778" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_GB"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" xlink:to="loc_country_GB_425ca351-2bc0-48da-bb16-0de0bc2ba778" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_BR_f8258981-a417-48d0-8120-1614ea668b94" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_BR"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" xlink:to="loc_country_BR_f8258981-a417-48d0-8120-1614ea668b94" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_NL_1f0879f6-980a-4b63-b2f0-9edd68c1cf5e" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_NL"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" xlink:to="loc_country_NL_1f0879f6-980a-4b63-b2f0-9edd68c1cf5e" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_DE_cdfbb22c-21ef-4765-a3ca-050451a54c00" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_DE"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" xlink:to="loc_country_DE_cdfbb22c-21ef-4765-a3ca-050451a54c00" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_AU_0f0c8d72-a4c8-4390-9e67-f217ded6d6b0" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_AU"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" xlink:to="loc_country_AU_0f0c8d72-a4c8-4390-9e67-f217ded6d6b0" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_OtherGeographicalAreasMember_20c029fb-a233-48d1-bdd5-53268d827aab" xlink:href="alg-20221231.xsd#alg_OtherGeographicalAreasMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" xlink:to="loc_alg_OtherGeographicalAreasMember_20c029fb-a233-48d1-bdd5-53268d827aab" xlink:type="arc" order="8"/>
  </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_AssetsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsAbstract"/>
    <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:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsAbstract" xlink:to="loc_us-gaap_OtherAssetsNoncurrent" 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:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:type="arc" order="2"/>
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>11
<FILENAME>alg-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:7e490c47-366a-4d14-b516-70bcfe20753e,g:370dcb37-b2fc-4837-9d03-6da297616798-->
<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_us-gaap_BusinessAcquisitionAxis_13c9ec22-ccd9-4160-b703-fa6d0fa5456f_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_d7687573-22e3-4a17-ba6d-efbac84d5437_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_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease_0c9021e5-8995-48d9-a46e-99c7883bab5e_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Composite rate of compensation increase</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease" xlink: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 Net Periodic Benefit Cost, Rate of Compensation Increase</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease" xlink:to="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CurrentForeignTaxExpenseBenefit_b795aebf-5604-40f0-afea-a25438b5f694_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_LesseeOperatingLeaseLiabilityPaymentsDue_f46a803a-1850-4fde-af09-85951af26bb5_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 minimum 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_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_39d44a08-b856-4446-b323-bef2dfa5c52a_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</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_IncreaseDecreaseInOtherNoncurrentLiabilities_0d62819e-31a1-4c5f-af5f-a178cef72cdd_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink: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 and liabilities, net</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink: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 Noncurrent Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:to="lab_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProvisionForDoubtfulAccounts_ddc04177-c131-4d43-8212-893a41d0fbbc_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">Provision for doubtful accounts</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_DeferredIncomeTaxAssetsNet_e27bfe60-8077-4517-8e79-a007b3dc28ec_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxAssetsNet" xlink: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 income taxes</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxAssetsNet_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxAssetsNet" xlink: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 Assets, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxAssetsNet" xlink:to="lab_us-gaap_DeferredIncomeTaxAssetsNet" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressPostalZipCode_fdce6b8b-d685-4ef6-a931-a69c645a901e_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_alg_AccountingPoliciesTable_7df96c68-2f0f-4b4b-9ffc-befc85cb195c_terseLabel_en-US" xlink:label="lab_alg_AccountingPoliciesTable" xlink: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 [Table]</link:label>
    <link:label id="lab_alg_AccountingPoliciesTable_label_en-US" xlink:label="lab_alg_AccountingPoliciesTable" xlink: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 [Table]</link:label>
    <link:label id="lab_alg_AccountingPoliciesTable_documentation_en-US" xlink:label="lab_alg_AccountingPoliciesTable" 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">Accounting Policies [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_AccountingPoliciesTable" xlink:href="alg-20221231.xsd#alg_AccountingPoliciesTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_AccountingPoliciesTable" xlink:to="lab_alg_AccountingPoliciesTable" xlink:type="arc" order="1"/>
    <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_alg_GradallCompanyEmployeesRetirementPlanMember_8cfa3a94-4778-4e2e-ab40-f1d05d642bd5_terseLabel_en-US" xlink:label="lab_alg_GradallCompanyEmployeesRetirementPlanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Employees&#8217; Retirement Plan</link:label>
    <link:label id="lab_alg_GradallCompanyEmployeesRetirementPlanMember_label_en-US" xlink:label="lab_alg_GradallCompanyEmployeesRetirementPlanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gradall Company Employees Retirement Plan [Member]</link:label>
    <link:label id="lab_alg_GradallCompanyEmployeesRetirementPlanMember_documentation_en-US" xlink:label="lab_alg_GradallCompanyEmployeesRetirementPlanMember" 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">Gradall Company Employees Retirement Plan</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_GradallCompanyEmployeesRetirementPlanMember" xlink:href="alg-20221231.xsd#alg_GradallCompanyEmployeesRetirementPlanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_GradallCompanyEmployeesRetirementPlanMember" xlink:to="lab_alg_GradallCompanyEmployeesRetirementPlanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_42bb6aad-3edb-48a0-a570-e3be37f9a25d_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_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_4f2fca75-50b1-428a-914f-5fff83cff439_terseLabel_en-US" xlink:label="lab_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink: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 Unrecognized Tax Benefits, Excluding Amounts Pertaining to Examined Tax Returns [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_label_en-US" xlink:label="lab_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink: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 Unrecognized Tax Benefits, Excluding Amounts Pertaining to Examined Tax Returns [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:to="lab_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_1a2f1c87-cbad-4d46-8953-60625e41bd81_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink: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_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_label_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink: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, Maturity, Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:to="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentAxis_79473c25-0b13-48cd-8c8e-58dd3c634ee1_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_ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock_8d678b43-fb54-4bb7-83a3-acda62379c29_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock" xlink: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 Indefinite-Lived Intangible Assets</link:label>
    <link:label id="lab_us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock" xlink: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 Indefinite-Lived Intangible Assets [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiability_fe055c14-209d-4234-b6eb-a1274104be81_verboseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiability" 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">Capital lease obligations</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiability_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiability" xlink:to="lab_us-gaap_FinanceLeaseLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsOfDividendsCommonStock_0410c2d9-a433-47fb-a677-3964c5aa25db_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsOfDividendsCommonStock" 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">Dividends paid</link:label>
    <link:label id="lab_us-gaap_PaymentsOfDividendsCommonStock_label_en-US" xlink:label="lab_us-gaap_PaymentsOfDividendsCommonStock" xlink: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 Ordinary Dividends, Common Stock</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDividendsCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDividendsCommonStock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsOfDividendsCommonStock" xlink:to="lab_us-gaap_PaymentsOfDividendsCommonStock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_7321c617-878e-4172-a6d6-ccb74165a2ee_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">Aggregate commitments</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_InventoryValuationReserveMember_f0071bb7-22bd-41b1-b658-f7343b2cfefd_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryValuationReserveMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reserve for inventory obsolescence</link:label>
    <link:label id="lab_us-gaap_InventoryValuationReserveMember_label_en-US" xlink:label="lab_us-gaap_InventoryValuationReserveMember" xlink: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, Reserve, Inventory [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryValuationReserveMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryValuationReserveMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryValuationReserveMember" xlink:to="lab_us-gaap_InventoryValuationReserveMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock_4b29300a-df46-42f9-8191-61cabe10a168_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" xlink: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</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" xlink: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 Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" xlink:to="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" xlink:type="arc" order="1"/>
    <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_LongTermDebtAndCapitalLeaseObligationsCurrent_d45c81f1-39b5-4c8d-82e1-2afabfc7204e_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink: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 maturities of long-term debt and finance lease obligations</link:label>
    <link:label id="lab_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_135a6428-15e8-42b0-9071-fabbd1c2c61e_verboseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" 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">Less current maturities</link:label>
    <link:label id="lab_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_label_en-US" xlink:label="lab_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink: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 and Lease Obligation, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:to="lab_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_98c79b9a-f9ac-45e7-b951-e76b13bf5ab2_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" 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">Rental equipment and Property, plant and equipment</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_44ac703f-a265-4e71-a4b4-45bc14d3acfb_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesDeductions" 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">&#160;Net Write-Offs or Discounts Taken</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_SoftwareAndSoftwareDevelopmentCostsMember_cde7af5a-10c4-4b3d-b5c3-d04b06b35fea_terseLabel_en-US" xlink:label="lab_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Computer software</link:label>
    <link:label id="lab_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_label_en-US" xlink:label="lab_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Software and Software Development Costs [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SoftwareAndSoftwareDevelopmentCostsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember" xlink:to="lab_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedEmployeeBenefitsCurrent_6654e7b2-895a-4636-a0f6-b9b356a658d6_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedEmployeeBenefitsCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Salaries, wages and bonuses</link:label>
    <link:label id="lab_us-gaap_AccruedEmployeeBenefitsCurrent_label_en-US" xlink:label="lab_us-gaap_AccruedEmployeeBenefitsCurrent" xlink: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 Employee Benefits, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedEmployeeBenefitsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedEmployeeBenefitsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedEmployeeBenefitsCurrent" xlink:to="lab_us-gaap_AccruedEmployeeBenefitsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_ProductWarrantyPeriod_c16bc6e6-b76f-4ad1-bd6f-d23170bcf145_terseLabel_en-US" xlink:label="lab_alg_ProductWarrantyPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product warranty period</link:label>
    <link:label id="lab_alg_ProductWarrantyPeriod_label_en-US" xlink:label="lab_alg_ProductWarrantyPeriod" xlink: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 Period</link:label>
    <link:label id="lab_alg_ProductWarrantyPeriod_documentation_en-US" xlink:label="lab_alg_ProductWarrantyPeriod" 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">Product Warranty Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_ProductWarrantyPeriod" xlink:href="alg-20221231.xsd#alg_ProductWarrantyPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_ProductWarrantyPeriod" xlink:to="lab_alg_ProductWarrantyPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy_2f0bfe61-9759-41b3-93a4-838f47ce90b0_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink: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 Financial Instruments</link:label>
    <link:label id="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy_label_en-US" xlink:label="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink: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 of Financial Instruments, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:to="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_QualifiedStockOptionsMember_1de53693-73ce-4c9b-a93b-61a5d052f8fb_verboseLabel_en-US" xlink:label="lab_alg_QualifiedStockOptionsMember" 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">Qualified Stock Options</link:label>
    <link:label id="lab_alg_QualifiedStockOptionsMember_09742946-cd4f-4abb-9e87-6005d6b58340_terseLabel_en-US" xlink:label="lab_alg_QualifiedStockOptionsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Qualified Stock Options</link:label>
    <link:label id="lab_alg_QualifiedStockOptionsMember_label_en-US" xlink:label="lab_alg_QualifiedStockOptionsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Qualified Stock Options [Member]</link:label>
    <link:label id="lab_alg_QualifiedStockOptionsMember_documentation_en-US" xlink:label="lab_alg_QualifiedStockOptionsMember" 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">Qualified Stock Options [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_QualifiedStockOptionsMember" xlink:href="alg-20221231.xsd#alg_QualifiedStockOptionsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_QualifiedStockOptionsMember" xlink:to="lab_alg_QualifiedStockOptionsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RangeMember_9e6bb69b-736d-4ff3-b7ac-bfddb1bb7a77_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">Range [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_alg_InternationalOperationsAndGeographicInformationTextBlock_068a47e4-84c0-48ac-9c16-daee06a1c7cf_terseLabel_en-US" xlink:label="lab_alg_InternationalOperationsAndGeographicInformationTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">INTERNATIONAL OPERATIONS AND GEOGRAPHIC INFORMATION</link:label>
    <link:label id="lab_alg_InternationalOperationsAndGeographicInformationTextBlock_label_en-US" xlink:label="lab_alg_InternationalOperationsAndGeographicInformationTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">International Operations And Geographic Information [Text Block]</link:label>
    <link:label id="lab_alg_InternationalOperationsAndGeographicInformationTextBlock_documentation_en-US" xlink:label="lab_alg_InternationalOperationsAndGeographicInformationTextBlock" 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">International Operations And Geographic Information</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_InternationalOperationsAndGeographicInformationTextBlock" xlink:href="alg-20221231.xsd#alg_InternationalOperationsAndGeographicInformationTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_InternationalOperationsAndGeographicInformationTextBlock" xlink:to="lab_alg_InternationalOperationsAndGeographicInformationTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_1d80937a-0b8a-4816-89cb-2054e32f915a_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_54e84ef8-fbd1-4803-a5f8-13eb0be6e547_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 - PP&amp;E</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_e2a22283-cb58-4471-ac41-67ea70b49200_verboseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" 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">Stock-based compensation transactions (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_1cea4770-846c-442a-969a-0253fd96f56b_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">Exercise of stock options (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_a986c165-842e-4729-bb3f-360f0a9cdf67_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" 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">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_us-gaap_DebtInstrumentInterestRateStatedPercentage_6ff15d04-6461-4912-89dd-2435ae476a59_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink: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, interest rate, stated percentage</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_OperatingLeaseWeightedAverageDiscountRatePercent_bcbe8f40-d66d-4699-bf85-0b29b1aeda44_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">Operating leases, weighted average remaining discount rate</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_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock_68d4c6b1-1f18-4f41-9fe0-d1119f7a7517_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">Schedule of Selected Geographic Financial Information</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_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_label_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink: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 [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromRepaymentsOfOtherLongTermDebt_6b372994-65d1-4029-b22f-ee13a61f685c_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromRepaymentsOfOtherLongTermDebt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Principal payments on long-term debt and capital leases</link:label>
    <link:label id="lab_us-gaap_ProceedsFromRepaymentsOfOtherLongTermDebt_label_en-US" xlink:label="lab_us-gaap_ProceedsFromRepaymentsOfOtherLongTermDebt" xlink: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 (Repayments of) Other Long-Term Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromRepaymentsOfOtherLongTermDebt" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromRepaymentsOfOtherLongTermDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromRepaymentsOfOtherLongTermDebt" xlink:to="lab_us-gaap_ProceedsFromRepaymentsOfOtherLongTermDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit_7c71239a-440b-4258-bc45-ba0467274097_terseLabel_en-US" xlink:label="lab_alg_DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit" xlink: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 final years in which the Retirement Benefit is based</link:label>
    <link:label id="lab_alg_DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit_label_en-US" xlink:label="lab_alg_DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit" xlink: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 Compensation Arrangement with Individual, Term Of Final Average Salary Used To Determine Retirement Benefit</link:label>
    <link:label id="lab_alg_DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit_documentation_en-US" xlink:label="lab_alg_DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit" 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 Compensation Arrangement with Individual, Term Of Final Average Salary Used To Determine Retirement Benefit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit" xlink:href="alg-20221231.xsd#alg_DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit" xlink:to="lab_alg_DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_6bc643ee-22fb-462a-aad0-9f13a7859edb_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" 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">Decreases due to lapse of statute of limitations</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink: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, Reduction Resulting from Lapse of Applicable Statute of Limitations</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalCommonStock_5f1b34d1-6a9e-4075-bb1a-98e7f175bf3b_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xlink: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_AdditionalPaidInCapitalCommonStock_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xlink: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, Common Stock</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:to="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NoncurrentAssets_cd87ce7f-7fa5-4ae9-8b9a-2a4a8aef929a_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">Total 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_211fa4c7-a21b-4aa9-a675-59e0d3aab62f_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 benefit 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_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_a793844d-65cd-481c-a7c1-16f91f68457e_terseLabel_en-US" xlink:label="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink: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_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_label_en-US" xlink:label="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink: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, Including Disposal Group and Discontinued Operations</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:to="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_6d799aef-abf7-40c0-896b-49dfa090a4a7_totalLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" 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 property, plant and equipment, net</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" xlink: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 and Finance Lease Right-of-Use Asset, after Accumulated Depreciation and Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_14a094e6-0a47-446b-b9cd-351bec167e76_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_NetIncomeLoss_e0685d55-8d2b-46d3-9eaf-86fc25b6f3d4_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_c4564c10-08e2-4cf5-a44b-66887d526bfc_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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_1d2d11e5-0fd7-4a52-bec9-a0a120d5ac84_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">Stock options excluded from diluted earnings per share calculation (in 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_LesseeFinanceLeasesTextBlock_660940b7-eafa-4f4f-a6ed-8105b8bb99be_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeFinanceLeasesTextBlock" xlink: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_LesseeFinanceLeasesTextBlock_label_en-US" xlink:label="lab_us-gaap_LesseeFinanceLeasesTextBlock" xlink: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, Finance Leases [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeFinanceLeasesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeFinanceLeasesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeFinanceLeasesTextBlock" xlink:to="lab_us-gaap_LesseeFinanceLeasesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_bd05e24c-abc1-424b-a0be-215d820f6130_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 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_SubsequentEventTypeAxis_e11a522f-7372-4b47-8f06-5bb63bd62478_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event Type [Axis]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventTypeAxis_label_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTypeAxis" xlink:to="lab_us-gaap_SubsequentEventTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanEquitySecuritiesMember_47e66ba4-6ebd-401f-8b2c-5878a77ec0fb_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanEquitySecuritiesMember" xlink: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 securities</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanEquitySecuritiesMember_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanEquitySecuritiesMember" xlink: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, Equity Securities [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanEquitySecuritiesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanEquitySecuritiesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanEquitySecuritiesMember" xlink:to="lab_us-gaap_DefinedBenefitPlanEquitySecuritiesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_3747204a-71c6-4210-99af-d97bcc568a85_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink: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 Leases</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink: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 [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="lab_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease_1771b8d1-cbe4-4922-8e6c-3fc5b196f8e3_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Composite rate of compensation increase</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease" xlink: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, Rate of Compensation Increase</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease" xlink:to="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_76fff401-60c0-473e-846e-9655cd0760bc_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">Thereafter</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_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock_7bda7cc4-5d12-4011-bf79-b24c998f2e3f_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock" xlink: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, Shares Authorized under Stock Option Plans, by Exercise Price Range</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock" xlink: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 Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityComponentDomain_eb9448e0-997b-4a4e-8b2d-dee7b0aec091_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_SubsequentEventTypeDomain_33953493-0b09-43be-b906-35cfdc705667_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event Type [Domain]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventTypeDomain_label_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTypeDomain" xlink:to="lab_us-gaap_SubsequentEventTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_StatementScenarioAxis_05a92278-c447-4651-9e72-3ee7a2952b3d_terseLabel_en-US" xlink:label="lab_srt_StatementScenarioAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Scenario [Axis]</link:label>
    <link:label id="lab_srt_StatementScenarioAxis_label_en-US" xlink:label="lab_srt_StatementScenarioAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Scenario [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementScenarioAxis" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementScenarioAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_StatementScenarioAxis" xlink:to="lab_srt_StatementScenarioAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_99cd2dd3-dc61-4930-b1fe-9f793ce8f6b7_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" xlink: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, exercise price range (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" xlink: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, Shares Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" xlink:to="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_3b39135d-00e1-4866-99c6-0a8962f3b6bb_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink: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 vesting percentage of award</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink: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 Rights, Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_0402d8fa-260c-4401-a2cc-6f541bf3d0fa_terseLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increases for tax positions related to the current year</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink: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, Increase Resulting from Current Period Tax Positions</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeasesTextBlock_28db7725-313e-4b7d-be5b-cf08ae7db96a_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_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_1fd0bb08-9e2f-4219-983d-723904d05fe1_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" xlink: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, exercise price (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" xlink: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, Outstanding, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" xlink:to="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseRightOfUseAssetAmortization_882de74d-0c48-4be5-a62a-7bbe77e95123_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink: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 right-of-use assets</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseRightOfUseAssetAmortization_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Right-of-Use Asset, Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:to="lab_us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PlanNameAxis_db56e51f-1997-40fd-b948-c7b1b20c2938_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_us-gaap_StandbyLettersOfCreditMember_e55155d7-e091-4f40-8568-5b6d11c85128_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_us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities_c0d1d246-8569-45f1-9c87-560d3914a6bb_totalLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities" 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_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities_label_en-US" xlink:label="lab_us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities" xlink: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 and Lease Obligation, Including Current Maturities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities" xlink:to="lab_us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_4be12b54-1858-431d-94d5-85147f2e4092_periodStartLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" 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">Fair value of plan assets at beginning of year</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_1802fa25-cea3-4cea-805d-d1a4d16bfb6a_periodEndLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" 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">Fair value of plan assets at end of year</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_d0bce446-f52c-4eff-96dc-02d09e91c264_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_486057e0-66de-4ce6-9fa1-b4b8ab274f2c_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 Enumeration]</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_SupplementalCashFlowInformationAbstract_e273f004-0c9f-4fca-81cf-879d0f3343a9_terseLabel_en-US" xlink:label="lab_us-gaap_SupplementalCashFlowInformationAbstract" xlink: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 during the year for:</link:label>
    <link:label id="lab_us-gaap_SupplementalCashFlowInformationAbstract_label_en-US" xlink:label="lab_us-gaap_SupplementalCashFlowInformationAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Supplemental Cash Flow Information [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplementalCashFlowInformationAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalCashFlowInformationAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="lab_us-gaap_SupplementalCashFlowInformationAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_05a0653a-6ea2-465f-9e7a-ecc4fa9040d3_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">Canceled, exercise price (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_PlanNameDomain_8f2f61d7-da7c-49f9-8c28-bac91f93623e_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_us-gaap_GoodwillLineItems_03600e4b-db73-4590-81c5-d396a5e98fe6_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_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_2ccd83f0-f5e9-4edb-86b7-e2cf82f5dd98_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_FairValueInputsLevel1Member_79dca2ad-a879-4656-bddc-24dd9a503c46_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel1Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Quoted Prices in Active Markets for Identical Assets (Level 1)</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel1Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel1Member" xlink: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, Inputs, Level 1 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel1Member" xlink:to="lab_us-gaap_FairValueInputsLevel1Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AwardTypeAxis_9211cbc9-a08d-47c6-baaf-c73251e0f7e1_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_us-gaap_DefinedBenefitPlanActuarialGainLoss_146c109a-bc6b-4ebd-9e33-748dba515cfb_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanActuarialGainLoss" 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">Liability actuarial (gain) loss</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_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive_cf8b265a-0af2-4857-807d-a369dfc5c6b7_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_alg_EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount_1eb222cf-23c5-4e91-a487-fa3bde32b951_negatedTerseLabel_en-US" xlink:label="lab_alg_EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount" 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">Previously unrecognized tax (benefit)/expense</link:label>
    <link:label id="lab_alg_EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount_label_en-US" xlink:label="lab_alg_EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount" xlink: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, Previously Unrecognized Tax Benefit, Amount</link:label>
    <link:label id="lab_alg_EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount_documentation_en-US" xlink:label="lab_alg_EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount" 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, Previously Unrecognized Tax Benefit, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount" xlink:href="alg-20221231.xsd#alg_EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount" xlink:to="lab_alg_EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_DefinedBenefitPlanRetirementBenefitPercentage_4d88475d-7890-454a-8a7c-77e59d8aa5d2_terseLabel_en-US" xlink:label="lab_alg_DefinedBenefitPlanRetirementBenefitPercentage" xlink: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 retirement benefit percentage</link:label>
    <link:label id="lab_alg_DefinedBenefitPlanRetirementBenefitPercentage_label_en-US" xlink:label="lab_alg_DefinedBenefitPlanRetirementBenefitPercentage" xlink: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, Retirement Benefit Percentage</link:label>
    <link:label id="lab_alg_DefinedBenefitPlanRetirementBenefitPercentage_documentation_en-US" xlink:label="lab_alg_DefinedBenefitPlanRetirementBenefitPercentage" 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, Retirement Benefit Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DefinedBenefitPlanRetirementBenefitPercentage" xlink:href="alg-20221231.xsd#alg_DefinedBenefitPlanRetirementBenefitPercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_DefinedBenefitPlanRetirementBenefitPercentage" xlink:to="lab_alg_DefinedBenefitPlanRetirementBenefitPercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_4c4d77fa-749c-4d3c-9d5f-2b151007d6c2_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_bcb6b218-b615-46e6-9833-7f207e57dfd6_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">Accrued liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_3cdb2188-4123-478b-9238-1c648c45f663_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" 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">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_25450677-8833-46e2-9e96-d4954ca4e2fd_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_67fda0c5-49ec-4ab3-95a0-5d3b2dcedb8b_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">Schedule of Share-based Compensation, Restricted Stock and Restricted Stock Units Activity</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_c3366515-503b-4a83-892e-3619abbcbae8_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_alg_QualifiedStockOptionsExercisePriceRangeThreeMember_b8eec89f-9436-4d62-9ac0-fd48d8b51608_terseLabel_en-US" xlink:label="lab_alg_QualifiedStockOptionsExercisePriceRangeThreeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">$156.38 - $234.57</link:label>
    <link:label id="lab_alg_QualifiedStockOptionsExercisePriceRangeThreeMember_label_en-US" xlink:label="lab_alg_QualifiedStockOptionsExercisePriceRangeThreeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Qualified Stock Options Exercise Price Range Three [Member]</link:label>
    <link:label id="lab_alg_QualifiedStockOptionsExercisePriceRangeThreeMember_documentation_en-US" xlink:label="lab_alg_QualifiedStockOptionsExercisePriceRangeThreeMember" 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">Qualified Stock Options Exercise Price Range Three [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_QualifiedStockOptionsExercisePriceRangeThreeMember" xlink:href="alg-20221231.xsd#alg_QualifiedStockOptionsExercisePriceRangeThreeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_QualifiedStockOptionsExercisePriceRangeThreeMember" xlink:to="lab_alg_QualifiedStockOptionsExercisePriceRangeThreeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_ProductWarrantyAccrualLagPeriod_721ad99a-f475-44fe-94c0-ced52465714a_terseLabel_en-US" xlink:label="lab_alg_ProductWarrantyAccrualLagPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product warranty accrual lag period</link:label>
    <link:label id="lab_alg_ProductWarrantyAccrualLagPeriod_label_en-US" xlink:label="lab_alg_ProductWarrantyAccrualLagPeriod" xlink: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 Lag Period</link:label>
    <link:label id="lab_alg_ProductWarrantyAccrualLagPeriod_documentation_en-US" xlink:label="lab_alg_ProductWarrantyAccrualLagPeriod" 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">Product Warranty Accrual Lag Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_ProductWarrantyAccrualLagPeriod" xlink:href="alg-20221231.xsd#alg_ProductWarrantyAccrualLagPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_ProductWarrantyAccrualLagPeriod" xlink:to="lab_alg_ProductWarrantyAccrualLagPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_af3eeca5-f948-4aeb-8aa4-bef0deee3a33_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" 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">Canceled (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_SupplementalEmployeeRetirementPlanDefinedBenefitMember_37e09c34-ca98-4968-9f80-61224bb761ea_terseLabel_en-US" xlink:label="lab_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Supplemental Employee Retirement Plan</link:label>
    <link:label id="lab_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_label_en-US" xlink:label="lab_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Supplemental Employee Retirement Plan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember" xlink:to="lab_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember" xlink:type="arc" order="1"/>
    <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_DefinedBenefitPlanDebtSecurityMember_3b554dd0-266e-4612-90bd-e83f4b55eb54_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanDebtSecurityMember" xlink: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 securities</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanDebtSecurityMember_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanDebtSecurityMember" xlink: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, Debt Security [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDebtSecurityMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanDebtSecurityMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanDebtSecurityMember" xlink:to="lab_us-gaap_DefinedBenefitPlanDebtSecurityMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentAnnualReport_a6c774f6-6dde-4718-b364-61d50f5452ff_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_dei_LegalEntityAxis_1458e9ca-6d09-407f-bfa3-b8fcca9df112_terseLabel_en-US" xlink:label="lab_dei_LegalEntityAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Legal Entity [Axis]</link:label>
    <link:label id="lab_dei_LegalEntityAxis_label_en-US" xlink:label="lab_dei_LegalEntityAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Legal Entity [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_LegalEntityAxis" xlink:to="lab_dei_LegalEntityAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_89870f6a-08c8-467f-ab93-7530157d9dc5_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">VALUATION AND QUALIFYING ACCOUNTS</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_OperatingLeaseWeightedAverageRemainingLeaseTerm1_99091a78-c609-4ab0-83bf-bed0234aeef0_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">Operating leases, weighted average remaining lease term</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_1248cbef-6f19-492c-963a-401d3855955e_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_232e17c1-630d-4f8c-beab-c39b04f7153d_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_77795c17-9533-4adc-bc1c-c586a005dd1d_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillPurchaseAccountingAdjustments" xlink: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 adjustment</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_c12c4298-eaa3-4e0a-8b47-5e19f7e5d474_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">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_BusinessAcquisitionPercentageOfVotingInterestsAcquired_288f182c-0eca-4226-a7e1-7397351cf46b_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Percentage of outstanding capital shares acquired</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink: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, Percentage of Voting Interests Acquired</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:to="lab_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock_a63619bd-5de8-4435-a709-0bfa46c57b04_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock" xlink: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 Expected Benefit Payments</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_alg_IncreaseDecreaseInRentalEquipment_6a44b676-4a91-465c-9d39-510b7be6e44c_negatedTerseLabel_en-US" xlink:label="lab_alg_IncreaseDecreaseInRentalEquipment" 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">Rental equipment</link:label>
    <link:label id="lab_alg_IncreaseDecreaseInRentalEquipment_label_en-US" xlink:label="lab_alg_IncreaseDecreaseInRentalEquipment" xlink: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 Rental Equipment</link:label>
    <link:label id="lab_alg_IncreaseDecreaseInRentalEquipment_documentation_en-US" xlink:label="lab_alg_IncreaseDecreaseInRentalEquipment" 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">Increase (Decrease) In Rental Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_IncreaseDecreaseInRentalEquipment" xlink:href="alg-20221231.xsd#alg_IncreaseDecreaseInRentalEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_IncreaseDecreaseInRentalEquipment" xlink:to="lab_alg_IncreaseDecreaseInRentalEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock_8fabd61a-0f70-4d4e-8ff7-7c61187d00eb_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock" xlink: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 Changes in Projected Benefit Obligations</link:label>
    <link:label id="lab_us-gaap_ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock" xlink: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 Changes in Projected Benefit Obligations [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountingChangesAndErrorCorrectionsAbstract_label_en-US" xlink:label="lab_us-gaap_AccountingChangesAndErrorCorrectionsAbstract" xlink: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 Changes and Error Corrections [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingChangesAndErrorCorrectionsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingChangesAndErrorCorrectionsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountingChangesAndErrorCorrectionsAbstract" xlink:to="lab_us-gaap_AccountingChangesAndErrorCorrectionsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017_3b4e15b1-e10d-4b87-ad2d-24ec80628656_totalLabel_en-US" xlink:label="lab_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017" 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_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017_label_en-US" xlink:label="lab_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017" xlink: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), Before Tax Cuts And Jobs Act Of 2017</link:label>
    <link:label id="lab_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017_documentation_en-US" xlink:label="lab_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017" 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 Expense (Benefit), Before Tax Cuts And Jobs Act Of 2017</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017" xlink:href="alg-20221231.xsd#alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017" xlink:to="lab_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_5c7e4fe1-0b3a-4ec3-974a-8f2d04f24fab_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_FairValueMeasurementsFairValueHierarchyDomain_63509b71-af2e-4817-8a04-1eb501b01b55_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink: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, Fair Value Hierarchy [Domain]</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink: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 Hierarchy and NAV [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock_20bcfffa-edc4-492d-9403-273297ef4448_terseLabel_en-US" xlink:label="lab_alg_RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shipping and Handling Costs</link:label>
    <link:label id="lab_alg_RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock_label_en-US" xlink:label="lab_alg_RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock" xlink: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, Shipping And Handling Costs [Policy Text Block]</link:label>
    <link:label id="lab_alg_RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock_documentation_en-US" xlink:label="lab_alg_RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock" 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">Revenue From Contract With Customer, Shipping And Handling Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock" xlink:href="alg-20221231.xsd#alg_RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock" xlink:to="lab_alg_RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_a492daa8-736b-4b6c-9732-05127c9be4d4_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">Schedule 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_RevenueFromContractWithCustomerPolicyTextBlock_77a18a58-ac0c-42da-a61c-34286c5df19d_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_a5689418-ffd1-4c98-9d3b-b8eac237e226_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_893a05e3-be26-47dd-b5f5-b89b463cf65e_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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_02b2b739-bce8-4477-b1d0-37488e7e9104_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">Exercise Price</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_us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember_e9f3bc20-a9f7-4108-9fa8-24cf28d3cfb9_terseLabel_en-US" xlink:label="lab_us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember" xlink: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_us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember_label_en-US" xlink:label="lab_us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember" xlink: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) Overnight Index Swap Rate [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember" xlink:to="lab_us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife_1ef90717-b882-4f78-b2ec-0240b7a2c83a_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">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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_6017703d-9eaa-40f2-9cd3-28df0b9f5d9a_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">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_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree_bf00f5ae-6682-4429-8f07-85c35812d22e_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_FiniteLivedIntangibleAssetsMajorClassNameDomain_eb2b19f7-a48b-4fa3-beaf-17e5d2d0b3ff_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_DebtDisclosureTextBlock_cda58cf4-a903-4bce-b4bd-ff746220500a_terseLabel_en-US" xlink:label="lab_us-gaap_DebtDisclosureTextBlock" xlink: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_DebtDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_DebtDisclosureTextBlock" xlink: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 Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtDisclosureTextBlock" xlink:to="lab_us-gaap_DebtDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementBusinessSegmentsAxis_adcfb998-d2f6-46e1-a3b4-e46f75a66e37_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">Business Segments [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementBusinessSegmentsAxis_7c28240e-484d-4bd4-849e-dc13788bde94_verboseLabel_en-US" xlink:label="lab_us-gaap_StatementBusinessSegmentsAxis" 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">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_srt_ProductsAndServicesDomain_175ef305-9fc3-486e-863f-63c69f7ce37b_terseLabel_en-US" xlink:label="lab_srt_ProductsAndServicesDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Domain]</link:label>
    <link:label id="lab_srt_ProductsAndServicesDomain_label_en-US" xlink:label="lab_srt_ProductsAndServicesDomain" xlink: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 and Service [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductsAndServicesDomain" xlink:to="lab_srt_ProductsAndServicesDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityShellCompany_6e1414bf-75db-4b0d-911e-560f90bb03dd_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_94251c01-407d-478c-b37c-f013223502ae_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink: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 deferred income tax (benefit) expense</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_214e74fb-0f4c-481f-b6d1-b8dd08f2cfe3_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">Provision for deferred income tax expense (benefit)</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_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_3856c4cb-a1c7-4a3f-b3c6-6fa7dd4470a5_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_ScheduleOfAllocationOfPlanAssetsTableTextBlock_b13377cf-9c5b-479d-8dec-cc8e1a1340f1_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock" xlink: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 Plan Assets</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock" xlink: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 Allocation of Plan Assets [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_8293218d-2431-45b3-97ae-f48dc71b67fc_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_6004fa04-8b49-458b-b78b-90134101f681_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 debt</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_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_1d0c2618-0f44-4a60-a10b-86e41c72d011_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink: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_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_label_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink: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, Maturity, Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:to="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList_8cb092f3-b389-42e1-8876-f0841c7c7f4c_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink: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, Noncurrent, Statement of Financial Position [Extensible Enumeration]</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink: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, Statement of Financial Position [Extensible Enumeration]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:to="lab_us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_TRowePriceEquityIncomeMember_de1addce-88e0-4e9e-84e3-8ae9d31ba907_terseLabel_en-US" xlink:label="lab_alg_TRowePriceEquityIncomeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo/T. Rowe Price Equity Income Managed CIT</link:label>
    <link:label id="lab_alg_TRowePriceEquityIncomeMember_label_en-US" xlink:label="lab_alg_TRowePriceEquityIncomeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">T Rowe Price Equity Income [Member]</link:label>
    <link:label id="lab_alg_TRowePriceEquityIncomeMember_documentation_en-US" xlink:label="lab_alg_TRowePriceEquityIncomeMember" 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">T Rowe Price Equity Income [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_TRowePriceEquityIncomeMember" xlink:href="alg-20221231.xsd#alg_TRowePriceEquityIncomeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_TRowePriceEquityIncomeMember" xlink:to="lab_alg_TRowePriceEquityIncomeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesDomain_4eb15b96-2b5e-44a1-82d0-80d17c7f73c9_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_SubsequentEventMember_fc28eef2-2c7a-4c8b-a091-7736ff025eda_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event</link:label>
    <link:label id="lab_us-gaap_SubsequentEventMember_label_en-US" xlink:label="lab_us-gaap_SubsequentEventMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventMember" xlink:to="lab_us-gaap_SubsequentEventMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentPeriodEndDate_a3d9dc6a-e30b-4a61-a51f-7b2060bba3fb_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_ShareBasedCompensationAwardTrancheOneMember_548a6a09-389f-4eea-b4f4-ffd0ac4907b6_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Year One after Grant Date</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationAwardTrancheOneMember_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink: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, Tranche One [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAwardTrancheOneMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink:to="lab_us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetirementPlanNameDomain_1e0ee01d-5eeb-4651-8c0b-cf1a9aa83afa_terseLabel_en-US" xlink:label="lab_us-gaap_RetirementPlanNameDomain" xlink: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 Name [Domain]</link:label>
    <link:label id="lab_us-gaap_RetirementPlanNameDomain_label_en-US" xlink:label="lab_us-gaap_RetirementPlanNameDomain" xlink: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 Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetirementPlanNameDomain" xlink:to="lab_us-gaap_RetirementPlanNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherInvestmentsMember_07b3efb0-6114-4e8e-9687-cbf32c9b6521_terseLabel_en-US" xlink:label="lab_us-gaap_OtherInvestmentsMember" xlink: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_OtherInvestmentsMember_label_en-US" xlink:label="lab_us-gaap_OtherInvestmentsMember" xlink: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 Investments [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherInvestmentsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherInvestmentsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherInvestmentsMember" xlink:to="lab_us-gaap_OtherInvestmentsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_f0f17a6e-dcf9-4d5b-8fce-b3f385e62347_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 Compensation, Shares Authorized under Stock Option Plans, 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_41f8b8da-7de0-45aa-8a45-4c3458ac3ea6_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">Warranty</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_alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember_dba16d82-18e0-4154-800c-5187d26bb291_terseLabel_en-US" xlink:label="lab_alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo/T. Rowe Price Large-Cap Growth Managed CIT</link:label>
    <link:label id="lab_alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember_label_en-US" xlink:label="lab_alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo T Rowe Price I Large Cap Growth Managed CIT [Member]</link:label>
    <link:label id="lab_alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember_documentation_en-US" xlink:label="lab_alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember" 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">Wells Fargo T Rowe Price I Large Cap Growth Managed CIT [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember" xlink:href="alg-20221231.xsd#alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember" xlink:to="lab_alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock_06616bac-b5cc-41c8-a79d-510132943c63_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 Accumulated Other Comprehensive 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_cb8bbb04-c657-414f-8b1c-ef87dda6ed33_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_4a0528cc-a89a-45ca-abed-0f52e747932b_verboseLabel_en-US" xlink:label="lab_us-gaap_Assets" 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">Identifiable Assets</link:label>
    <link:label id="lab_us-gaap_Assets_89ef3396-c766-4af0-8e5a-52f1eb4a51f8_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">Identifiable 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_DebtDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_DebtDisclosureAbstract" xlink: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 Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtDisclosureAbstract" xlink:to="lab_us-gaap_DebtDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_28d34e88-1a27-4b1e-aee3-55d22450267a_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 income per common share:</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_IncomeStatementLocationAxis_f1976bad-c71b-41c6-b88e-e342f7fbc246_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_DefinedBenefitPlanContributionsByEmployer_37b1be71-7624-477a-80f7-a4fb446b3daa_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanContributionsByEmployer" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Employer contributions</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanContributionsByEmployer_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanContributionsByEmployer" xlink: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, Contributions by Employer</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanContributionsByEmployer" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanContributionsByEmployer"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanContributionsByEmployer" xlink:to="lab_us-gaap_DefinedBenefitPlanContributionsByEmployer" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationAwardTrancheThreeMember_0c0f88d2-50ff-4308-ab70-8b7f649b8079_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationAwardTrancheThreeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Year Three after Grant Date</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationAwardTrancheThreeMember_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationAwardTrancheThreeMember" xlink: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, Tranche Three [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAwardTrancheThreeMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAwardTrancheThreeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationAwardTrancheThreeMember" xlink:to="lab_us-gaap_ShareBasedCompensationAwardTrancheThreeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PerformanceSharesMember_3a9145e3-8f01-4e75-8c9a-28544e12f272_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 Shares</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_AccruedLiabilitiesCurrent_cf653b23-5361-4195-95cd-cd70de7c9b76_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 liabilities</link:label>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrent_f77b3cc2-2bb6-4272-a589-45325d6cf796_totalLabel_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent" 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">Accrued liabilities</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_UnsecuredDebtMember_9548cc6e-734e-4bff-8dd2-00e59ba25c6b_terseLabel_en-US" xlink:label="lab_us-gaap_UnsecuredDebtMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Bank revolving credit facility</link:label>
    <link:label id="lab_us-gaap_UnsecuredDebtMember_label_en-US" xlink:label="lab_us-gaap_UnsecuredDebtMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unsecured Debt [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnsecuredDebtMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnsecuredDebtMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnsecuredDebtMember" xlink:to="lab_us-gaap_UnsecuredDebtMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_129efabd-53d7-4e49-badb-696ac9adb672_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, exercise price (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_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_eb067b1b-3bb0-46ae-9ae7-fdb9d1c96970_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_NetCashProvidedByUsedInFinancingActivities_6f290d13-118d-41a9-b1e5-4be756b8cf7f_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 provided (used) in 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_alg_WellsFargoCausewayMember_fce47fd6-c5a9-4801-8299-d921bb696f30_terseLabel_en-US" xlink:label="lab_alg_WellsFargoCausewayMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo/Causeway International Value</link:label>
    <link:label id="lab_alg_WellsFargoCausewayMember_label_en-US" xlink:label="lab_alg_WellsFargoCausewayMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo Causeway [Member]</link:label>
    <link:label id="lab_alg_WellsFargoCausewayMember_documentation_en-US" xlink:label="lab_alg_WellsFargoCausewayMember" 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">Wells Fargo Causeway [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoCausewayMember" xlink:href="alg-20221231.xsd#alg_WellsFargoCausewayMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_WellsFargoCausewayMember" xlink:to="lab_alg_WellsFargoCausewayMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountingPoliciesAbstract_847517da-8b0b-4569-82c2-4e15bdd2a0a3_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_StockRepurchaseProgramAuthorizedAmount1_612d9096-2a3c-4013-9535-fdb994cbc358_terseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink: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 repurchase program, authorized amount</link:label>
    <link:label id="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1_label_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink: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 Repurchase Program, Authorized Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:to="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent_38f3dc01-dc7a-40eb-b0a8-8b16902b24ae_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" 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">Recognition of deferred pension and other post-retirement benefits, net of tax (expense) benefit of $(194), $(356), and $230, respectively</link:label>
    <link:label id="lab_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent_98f2d2f9-07ee-4dcb-9185-3c3b02c59215_negatedLabel_en-US" xlink:label="lab_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" 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">Amounts reclassified from accumulated other comprehensive loss</link:label>
    <link:label id="lab_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent_label_en-US" xlink:label="lab_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reclassification from AOCI, Current Period, Net of Tax, Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" xlink:to="lab_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount_77f65d02-cafd-4041-9671-ce6a918606d4_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount" xlink: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, unused borrowing capacity, amount</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount" xlink: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, Unused Borrowing Capacity, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount" xlink:to="lab_us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditMember_cab58476-e0e6-4ae1-af0e-a5b3c60faaf8_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">Line of Credit</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_VariableLeaseCost_70639531-faee-4d70-a33a-555b33e82777_terseLabel_en-US" xlink:label="lab_us-gaap_VariableLeaseCost" xlink: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 lease cost</link:label>
    <link:label id="lab_us-gaap_VariableLeaseCost_label_en-US" xlink:label="lab_us-gaap_VariableLeaseCost" xlink: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 Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableLeaseCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableLeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VariableLeaseCost" xlink:to="lab_us-gaap_VariableLeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_877bde4a-7e95-4b9e-becc-533dab5f3b11_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 income taxes</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_3356796e-5ce0-4007-8d31-639d6e95bc23_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink: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 before income 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_StockholdersEquityAbstract_4c6ff813-60e4-4066-b707-d42b60fc8732_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_PrepaidExpenseAndOtherAssetsCurrent_f6fbc297-4263-4b67-bb1b-fe7c9bd4e1ce_terseLabel_en-US" xlink:label="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink: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_PrepaidExpenseAndOtherAssetsCurrent_label_en-US" xlink:label="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prepaid Expense and Other Assets, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentDomain_21b251d0-f6e6-4dd6-a110-be95c779937f_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">Segment [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_us-gaap_ScheduleOfGoodwillTable_e75b9998-bb68-4c66-80d0-a5c791f34cff_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_EarningsPerShareTextBlock_3d0164e8-7cad-453e-a1c3-3f902fa5f39c_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_570e8284-4508-450f-8d8a-15f7040a682d_negatedLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesOther" 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">Expenses not currently deductible for book purposes</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_us-gaap_DefinedBenefitPlanInterestCost_df6ab341-c8a6-41a1-9f70-0b4a2e8c43c7_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_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_13d3d957-858b-4f2e-af4a-adbd158457ac_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink: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 Payment Award, Stock Options, Valuation Assumptions</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink: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 Payment Award, Stock Options, Valuation Assumptions [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WarrantyReservesMember_c6f84e5c-ab8a-4f32-baa0-fb95b1abf8cc_terseLabel_en-US" xlink:label="lab_us-gaap_WarrantyReservesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reserve for warranty</link:label>
    <link:label id="lab_us-gaap_WarrantyReservesMember_label_en-US" xlink:label="lab_us-gaap_WarrantyReservesMember" xlink: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, Reserve, Warranty [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WarrantyReservesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantyReservesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WarrantyReservesMember" xlink:to="lab_us-gaap_WarrantyReservesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock_1f6bec80-7254-4060-96b1-5cdb4a3949d5_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 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_ShortTermInvestmentsMember_4341b373-8a05-4fdf-9ced-2e70be2aa774_terseLabel_en-US" xlink:label="lab_us-gaap_ShortTermInvestmentsMember" xlink: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 investments</link:label>
    <link:label id="lab_us-gaap_ShortTermInvestmentsMember_label_en-US" xlink:label="lab_us-gaap_ShortTermInvestmentsMember" xlink: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 Investments [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermInvestmentsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermInvestmentsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortTermInvestmentsMember" xlink:to="lab_us-gaap_ShortTermInvestmentsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_4f5e614f-42a9-492c-9728-b224a85f678f_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">Schedule of Components of Income Tax Expense (Benefit)</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_68e7c543-0cad-470f-ac3b-5cc7810d9424_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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_f2114b39-ce87-43fc-938e-4881b7f2591b_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">Period cost is expected to be recognized (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_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_72819290-b04a-4a38-8833-7b6ab03e7ee2_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink: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</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink: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 Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxesReceivable_cafb3b67-a925-434f-a4a9-6cde1c488635_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxesReceivable" xlink: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 receivable&#160;</link:label>
    <link:label id="lab_us-gaap_IncomeTaxesReceivable_label_en-US" xlink:label="lab_us-gaap_IncomeTaxesReceivable" xlink: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 Receivable, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxesReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxesReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxesReceivable" xlink:to="lab_us-gaap_IncomeTaxesReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GrossProfit_bdd3b00b-672a-4ee8-a4bb-31ad01926653_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_dei_EntityRegistrantName_01bcdff8-8eaa-4e8a-84a3-3c57a70390d5_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_73dfe15b-92cb-4f70-8159-e10194ae23b7_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue" xlink: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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue" xlink: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, Intrinsic Value, Amount Per Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_DefinedContributionPlanNumberOfPlans_269eedd3-5199-4292-b010-2c4d58a5b050_terseLabel_en-US" xlink:label="lab_alg_DefinedContributionPlanNumberOfPlans" xlink: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 defined contribution plans</link:label>
    <link:label id="lab_alg_DefinedContributionPlanNumberOfPlans_label_en-US" xlink:label="lab_alg_DefinedContributionPlanNumberOfPlans" xlink: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 Contribution Plan, Number Of Plans</link:label>
    <link:label id="lab_alg_DefinedContributionPlanNumberOfPlans_documentation_en-US" xlink:label="lab_alg_DefinedContributionPlanNumberOfPlans" 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 Contribution Plan, Number Of Plans</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DefinedContributionPlanNumberOfPlans" xlink:href="alg-20221231.xsd#alg_DefinedContributionPlanNumberOfPlans"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_DefinedContributionPlanNumberOfPlans" xlink:to="lab_alg_DefinedContributionPlanNumberOfPlans" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour_a2ff1e10-bc67-47eb-ae8e-5a3d008787b7_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_GoodwillAndIntangibleAssetsGoodwillPolicy_5b4763bf-d3ae-4850-8ce8-c7ab54380851_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink: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_GoodwillAndIntangibleAssetsGoodwillPolicy_label_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink: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, Goodwill, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_f5701396-7b59-420f-9b4a-dc55544e81db_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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_0088e758-1448-432e-b54a-168808b6b568_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividend yield</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink: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, Fair Value Assumptions, Expected Dividend Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_c82cfbbf-bb92-4112-a3e9-cb37e402d0d6_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Range of exercise price, upper range limit (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" xlink: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, Upper Range Limit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" xlink:to="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_c37441da-37c0-4459-8634-6f6204fecad8_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Translation adjustment</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_f1439722-f38c-4904-b8e5-d1b190ce3a2a_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_646404db-3670-4cb1-b1a5-2fcdcc141180_negatedLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid" 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">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_5f83a952-cffa-41c1-ac30-10e356955c3e_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 and dealer 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_alg_IncomeTaxRateReconciliationForeignTaxExpense_a1990f3d-05b8-4a35-a5d6-0dcd8bab00fe_terseLabel_en-US" xlink:label="lab_alg_IncomeTaxRateReconciliationForeignTaxExpense" xlink: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 expense</link:label>
    <link:label id="lab_alg_IncomeTaxRateReconciliationForeignTaxExpense_label_en-US" xlink:label="lab_alg_IncomeTaxRateReconciliationForeignTaxExpense" xlink: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 Rate Reconciliation, Foreign Tax Expense</link:label>
    <link:label id="lab_alg_IncomeTaxRateReconciliationForeignTaxExpense_documentation_en-US" xlink:label="lab_alg_IncomeTaxRateReconciliationForeignTaxExpense" 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 Rate Reconciliation, Foreign Tax Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_IncomeTaxRateReconciliationForeignTaxExpense" xlink:href="alg-20221231.xsd#alg_IncomeTaxRateReconciliationForeignTaxExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_IncomeTaxRateReconciliationForeignTaxExpense" xlink:to="lab_alg_IncomeTaxRateReconciliationForeignTaxExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressCityOrTown_f6e55ce7-f100-42ca-b212-834029ad725b_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_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_305fb5af-d6d7-407c-b0f8-9448474c952f_terseLabel_en-US" xlink:label="lab_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink: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 BENEFIT PLANS</link:label>
    <link:label id="lab_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink: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 Benefits [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:to="lab_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember_9736e27c-5c85-40e5-85c0-2310715643db_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gains (Losses) on Cash Flow Hedges</link:label>
    <link:label id="lab_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember_label_en-US" xlink:label="lab_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" xlink: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 Gain (Loss), Net, Cash Flow Hedge, Parent [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" xlink:to="lab_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_WellsFargoStandardAndPoorsMidCapIndexFundMember_ab2162dc-90ef-497a-a370-6769f9770b63_terseLabel_en-US" xlink:label="lab_alg_WellsFargoStandardAndPoorsMidCapIndexFundMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo BlackRock S&amp;P Mid Cap Index Fund</link:label>
    <link:label id="lab_alg_WellsFargoStandardAndPoorsMidCapIndexFundMember_label_en-US" xlink:label="lab_alg_WellsFargoStandardAndPoorsMidCapIndexFundMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo Standard And Poors Mid Cap Index Fund [Member]</link:label>
    <link:label id="lab_alg_WellsFargoStandardAndPoorsMidCapIndexFundMember_documentation_en-US" xlink:label="lab_alg_WellsFargoStandardAndPoorsMidCapIndexFundMember" 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">Wells Fargo Standard And Poors Mid Cap Index Fund [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoStandardAndPoorsMidCapIndexFundMember" xlink:href="alg-20221231.xsd#alg_WellsFargoStandardAndPoorsMidCapIndexFundMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_WellsFargoStandardAndPoorsMidCapIndexFundMember" xlink:to="lab_alg_WellsFargoStandardAndPoorsMidCapIndexFundMember" xlink:type="arc" order="1"/>
    <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_ConsolidationPolicyTextBlock_eda16e3f-d3c4-4e69-9bd6-3229edd11ba1_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">Basis of Presentation and 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_country_DE_a82c7e00-dbf4-451a-9911-e9bc6ba4141d_terseLabel_en-US" xlink:label="lab_country_DE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Germany</link:label>
    <link:label id="lab_country_DE_label_en-US" xlink:label="lab_country_DE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">GERMANY</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_country_DE" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_DE"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_DE" xlink:to="lab_country_DE" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter_73a6107f-2cbb-4a05-a4ac-f38493950556_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Years 2028 through 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_da068dd6-ee01-41f8-a41c-4f3932ff6c28_verboseLabel_en-US" xlink:label="lab_srt_MinimumMember" 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">Minimum</link:label>
    <link:label id="lab_srt_MinimumMember_107e6b60-482d-4efa-bfe5-7fb7ac9b38c1_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">Low</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_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_d9368d91-f423-4fae-8269-d266b632517c_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_alg_InventoryUsagePeriod_2896cc29-f8c4-4b3c-8135-6ec674ca909e_terseLabel_en-US" xlink:label="lab_alg_InventoryUsagePeriod" xlink: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 usage period</link:label>
    <link:label id="lab_alg_InventoryUsagePeriod_label_en-US" xlink:label="lab_alg_InventoryUsagePeriod" xlink: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 Usage Period</link:label>
    <link:label id="lab_alg_InventoryUsagePeriod_documentation_en-US" xlink:label="lab_alg_InventoryUsagePeriod" 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 Usage Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_InventoryUsagePeriod" xlink:href="alg-20221231.xsd#alg_InventoryUsagePeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_InventoryUsagePeriod" xlink:to="lab_alg_InventoryUsagePeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_b70eaa38-5e67-4f1f-8003-03c5db55da4b_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_us-gaap_InventoryRawMaterialsNetOfReserves_d593edf1-38af-4935-86f0-20f1e298c68d_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Raw materials</link:label>
    <link:label id="lab_us-gaap_InventoryRawMaterialsNetOfReserves_label_en-US" xlink:label="lab_us-gaap_InventoryRawMaterialsNetOfReserves" xlink: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, Net of Reserves</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterialsNetOfReserves"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:to="lab_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_WellsFargoLargeCapValueIndexFundMember_26cdce8b-550a-4340-884c-28f75255490e_terseLabel_en-US" xlink:label="lab_alg_WellsFargoLargeCapValueIndexFundMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo BlackRock Large Cap Value Index Fund</link:label>
    <link:label id="lab_alg_WellsFargoLargeCapValueIndexFundMember_label_en-US" xlink:label="lab_alg_WellsFargoLargeCapValueIndexFundMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo Large Cap Value Index Fund [Member]</link:label>
    <link:label id="lab_alg_WellsFargoLargeCapValueIndexFundMember_documentation_en-US" xlink:label="lab_alg_WellsFargoLargeCapValueIndexFundMember" 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">Wells Fargo Large Cap Value Index Fund [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoLargeCapValueIndexFundMember" xlink:href="alg-20221231.xsd#alg_WellsFargoLargeCapValueIndexFundMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_WellsFargoLargeCapValueIndexFundMember" xlink:to="lab_alg_WellsFargoLargeCapValueIndexFundMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost_bc53a8de-8a40-49b0-bd68-c47e47ef5b76_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink: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 based compensation</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink: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, Nondeductible Expense, Share-Based Payment Arrangement, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:to="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign_36da7f03-3d02-4c4c-836a-662e6abfca22_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign" xlink: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 net operating loss</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign" xlink: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, Foreign</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign" xlink:to="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ValuationAndQualifyingAccountsDisclosureTable_49f3ecf7-5a80-471c-8c70-7bacc27b91a6_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_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_country_BR_6c708af8-54ba-4065-94e4-43f3751d0ff8_terseLabel_en-US" xlink:label="lab_country_BR" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Brazil</link:label>
    <link:label id="lab_country_BR_label_en-US" xlink:label="lab_country_BR" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">BRAZIL</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_country_BR" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_BR"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_BR" xlink:to="lab_country_BR" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_b708d08a-f955-4d31-86ca-cd1480f39bf6_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink: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 Segment Reporting Information, by Segment [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink: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 Segment Reporting Information, by Segment [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_AwardDateTwoMember_aa456f49-3253-4bf7-b2a3-53a7479dccd9_terseLabel_en-US" xlink:label="lab_alg_AwardDateTwoMember" xlink: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 after 2020</link:label>
    <link:label id="lab_alg_AwardDateTwoMember_label_en-US" xlink:label="lab_alg_AwardDateTwoMember" xlink: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 Two [Member]</link:label>
    <link:label id="lab_alg_AwardDateTwoMember_documentation_en-US" xlink:label="lab_alg_AwardDateTwoMember" 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">Award Date Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_AwardDateTwoMember" xlink:href="alg-20221231.xsd#alg_AwardDateTwoMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_AwardDateTwoMember" xlink:to="lab_alg_AwardDateTwoMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_AuditorName_e8f346ba-8060-450f-8598-c428e59bc1e0_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_fe8246fb-d1b5-48fa-a848-e207d1dd98e6_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">Pension Plan</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_24292212-c815-42c1-92e6-bd690c3154c6_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 OF FINANCIAL INSTRUMENTS</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_751c9064-70a2-4282-aab8-abfb0085a20b_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">Net operating loss carryforwards</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_dei_TradingSymbol_259e7ca0-1e1c-40de-af1e-a88fd7de852c_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_a33e827c-36da-4b75-9226-6dfaec144cc1_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_us-gaap_IntangibleAssetsDisclosureTextBlock_22419095-49fe-417e-b1a6-6a4ddbcdd90f_terseLabel_en-US" xlink:label="lab_us-gaap_IntangibleAssetsDisclosureTextBlock" xlink: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_IntangibleAssetsDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_IntangibleAssetsDisclosureTextBlock" xlink: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 Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:to="lab_us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_LiabilityDrivenSolutionCITIMember_eff1a552-257f-4985-901b-95b742faefdd_terseLabel_en-US" xlink:label="lab_alg_LiabilityDrivenSolutionCITIMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo Liability Driven Solution CIT I</link:label>
    <link:label id="lab_alg_LiabilityDrivenSolutionCITIMember_label_en-US" xlink:label="lab_alg_LiabilityDrivenSolutionCITIMember" xlink: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 Driven Solution CIT I [Member]</link:label>
    <link:label id="lab_alg_LiabilityDrivenSolutionCITIMember_documentation_en-US" xlink:label="lab_alg_LiabilityDrivenSolutionCITIMember" 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">Liability Driven Solution CIT I [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_LiabilityDrivenSolutionCITIMember" xlink:href="alg-20221231.xsd#alg_LiabilityDrivenSolutionCITIMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_LiabilityDrivenSolutionCITIMember" xlink:to="lab_alg_LiabilityDrivenSolutionCITIMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_f965662f-0528-4c20-b340-9ed871fc4187_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_21514baa-be32-4868-a23c-8b5347d32bd6_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink: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_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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_8d5371ac-d620-4dee-af12-746bc1d79197_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" xlink: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, remaining contractual life</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" xlink: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, Outstanding, Weighted Average Remaining Contractual Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" xlink:to="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpense_2376be62-c997-450c-8b7a-5d11f4eeab09_terseLabel_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product development and engineering costs</link:label>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpense_label_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Research and Development Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpense" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_country_CA_d8399139-4093-473d-8b50-1694fe383af6_terseLabel_en-US" xlink:label="lab_country_CA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Canada</link:label>
    <link:label id="lab_country_CA_label_en-US" xlink:label="lab_country_CA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">CANADA</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_country_CA" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_CA"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_CA" xlink:to="lab_country_CA" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquipmentMember_f8170f3f-694e-40ad-aa36-18d7c714b669_terseLabel_en-US" xlink:label="lab_us-gaap_EquipmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Rental Equipment</link:label>
    <link:label id="lab_us-gaap_EquipmentMember_label_en-US" xlink:label="lab_us-gaap_EquipmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equipment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquipmentMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquipmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquipmentMember" xlink:to="lab_us-gaap_EquipmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_74252a63-f286-4bac-b76a-ddefc015e44c_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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_f9a5655e-9a55-4bfd-90bf-edfa0aec97f5_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">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_us-gaap_RestrictedStockUnitsRSUMember_35826a83-1f15-4ad8-be2e-ccf36f4d5cdf_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 (RSUs)</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_ProceedsFromLinesOfCredit_22833aad-b28d-4e4c-b08d-a6da88250f6c_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromLinesOfCredit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Borrowings on bank revolving credit facility</link:label>
    <link:label id="lab_us-gaap_ProceedsFromLinesOfCredit_label_en-US" xlink:label="lab_us-gaap_ProceedsFromLinesOfCredit" xlink: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 Lines of Credit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromLinesOfCredit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromLinesOfCredit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromLinesOfCredit" xlink:to="lab_us-gaap_ProceedsFromLinesOfCredit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationTaxCreditsResearch_ce40b1ca-d8e4-435a-92b6-958afcfe4de4_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxCreditsResearch" 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">R&amp;D credit</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationTaxCreditsResearch_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxCreditsResearch" xlink: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, Research, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxCreditsResearch" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationTaxCreditsResearch"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationTaxCreditsResearch" xlink:to="lab_us-gaap_IncomeTaxReconciliationTaxCreditsResearch" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UseOfEstimates_47386b36-4839-48f2-b828-41b82dee4672_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_f2869816-9ac6-4a9f-8774-3ca47cb2578a_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationDisclosureTextBlock" xlink: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</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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_ef3c82ee-fe4b-4261-b21c-c3f6884f70ea_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 income (loss), net of tax:</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_alg_EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent_c77beecb-7bc7-44b6-a62c-18801f624bd4_terseLabel_en-US" xlink:label="lab_alg_EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent" xlink: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 tax rate</link:label>
    <link:label id="lab_alg_EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent_label_en-US" xlink:label="lab_alg_EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent" xlink: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, Before Tax Cuts And Jobs Act Of 2017, Percent</link:label>
    <link:label id="lab_alg_EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent_documentation_en-US" xlink:label="lab_alg_EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent" 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, Before Tax Cuts And Jobs Act Of 2017, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent" xlink:href="alg-20221231.xsd#alg_EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent" xlink:to="lab_alg_EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock_47676f08-7453-4390-9ee7-7b20c3df08f6_terseLabel_en-US" xlink:label="lab_alg_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Supplemental Cash Flow Information Related to Leases</link:label>
    <link:label id="lab_alg_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock_label_en-US" xlink:label="lab_alg_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Supplemental Cash Flow Information Related to Leases [Table Text Block]</link:label>
    <link:label id="lab_alg_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock_documentation_en-US" xlink:label="lab_alg_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock" 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">Supplemental Cash Flow Information Related to Leases</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock" xlink:href="alg-20221231.xsd#alg_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock" xlink:to="lab_alg_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_country_AU_2e27e458-f46b-4f29-86dd-56c464a8a1ae_terseLabel_en-US" xlink:label="lab_country_AU" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Australia</link:label>
    <link:label id="lab_country_AU_label_en-US" xlink:label="lab_country_AU" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">AUSTRALIA</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_country_AU" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_AU"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_AU" xlink:to="lab_country_AU" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Revenues_281deb59-c634-453a-b451-e602dfb58bc4_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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_06ead3dd-aa58-4f61-b45d-53609aa65507_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrealized income (loss) on derivative instruments, net of tax (expense) benefit of $(497), $(1,405), and $1,842, respectively</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink: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), Cash Flow Hedge, Gain (Loss), after Reclassification and Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_AccountingPoliciesLineItems_5df35c04-3a66-4465-802f-96262ce6df4b_terseLabel_en-US" xlink:label="lab_alg_AccountingPoliciesLineItems" xlink: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 [Line Items]</link:label>
    <link:label id="lab_alg_AccountingPoliciesLineItems_label_en-US" xlink:label="lab_alg_AccountingPoliciesLineItems" xlink: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 [Line Items]</link:label>
    <link:label id="lab_alg_AccountingPoliciesLineItems_documentation_en-US" xlink:label="lab_alg_AccountingPoliciesLineItems" 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">[Line Items] for Accounting Policies [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_AccountingPoliciesLineItems" xlink:href="alg-20221231.xsd#alg_AccountingPoliciesLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_AccountingPoliciesLineItems" xlink:to="lab_alg_AccountingPoliciesLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_a1cae0f4-81af-42b3-b67a-d348cac60cef_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink: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 payable and accrued liabilities</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink: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 and Accrued Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureTextBlock_dc5fd90e-181d-4d59-a51f-2232b36aa0cc_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_DebtInstrumentPeriodicPayment_e2f7d9ac-d1a7-4b63-8c43-4d207a8381d3_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentPeriodicPayment" xlink: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, periodic payment</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentPeriodicPayment_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentPeriodicPayment" xlink: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, Periodic Payment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentPeriodicPayment" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentPeriodicPayment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentPeriodicPayment" xlink:to="lab_us-gaap_DebtInstrumentPeriodicPayment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_8db83b23-e3c5-4caa-aca9-0e2ba9d592ea_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_InventoryFinishedGoodsNetOfReserves_17093b84-3b71-43a5-966d-8228b4e53156_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finished goods and parts</link:label>
    <link:label id="lab_us-gaap_InventoryFinishedGoodsNetOfReserves_label_en-US" xlink:label="lab_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink: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, Net of Reserves</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:to="lab_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CreditFacilityDomain_624d8b4e-9211-484d-8c1f-0ff5b13947e6_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_AmortizationOfIntangibleAssets_bc17a6a2-4f6c-4c39-88ea-b8a7481190d2_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 intangibles</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_ScheduleOfGoodwillTextBlock_3f21daa3-9152-4eb0-b2bb-c0a72c596811_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTextBlock" xlink: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</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_InterestPaidNet_969ae521-f3e7-4296-8b97-366c04c58964_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">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_alg_DutchPowerCompanyBVMember_ac929667-f4ef-4f5e-b98c-9d0b5ac77daa_terseLabel_en-US" xlink:label="lab_alg_DutchPowerCompanyBVMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dutch Power</link:label>
    <link:label id="lab_alg_DutchPowerCompanyBVMember_label_en-US" xlink:label="lab_alg_DutchPowerCompanyBVMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dutch Power Company B.V. [Member]</link:label>
    <link:label id="lab_alg_DutchPowerCompanyBVMember_documentation_en-US" xlink:label="lab_alg_DutchPowerCompanyBVMember" 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">Dutch Power Company B.V.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DutchPowerCompanyBVMember" xlink:href="alg-20221231.xsd#alg_DutchPowerCompanyBVMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_DutchPowerCompanyBVMember" xlink:to="lab_alg_DutchPowerCompanyBVMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_d9089419-3299-485b-bec5-db723d114a48_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Basic (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_44f1597c-864c-4fec-9906-974fd35a2631_verboseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic" 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">Basic earnings per share (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_alg_DeferredCompensationArrangementWithIndividualRetirementAge_5b6f4c2b-4d65-4224-90c4-169a1ee9b3ad_terseLabel_en-US" xlink:label="lab_alg_DeferredCompensationArrangementWithIndividualRetirementAge" xlink: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 age</link:label>
    <link:label id="lab_alg_DeferredCompensationArrangementWithIndividualRetirementAge_label_en-US" xlink:label="lab_alg_DeferredCompensationArrangementWithIndividualRetirementAge" xlink: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 Compensation Arrangement With Individual, Retirement Age</link:label>
    <link:label id="lab_alg_DeferredCompensationArrangementWithIndividualRetirementAge_documentation_en-US" xlink:label="lab_alg_DeferredCompensationArrangementWithIndividualRetirementAge" 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 Compensation Arrangement With Individual, Retirement Age</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DeferredCompensationArrangementWithIndividualRetirementAge" xlink:href="alg-20221231.xsd#alg_DeferredCompensationArrangementWithIndividualRetirementAge"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_DeferredCompensationArrangementWithIndividualRetirementAge" xlink:to="lab_alg_DeferredCompensationArrangementWithIndividualRetirementAge" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1_7f7b0e9e-baec-4a34-9dc6-8fe1091601f2_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1" xlink: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 period</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1" xlink: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 Requisite Service Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_0b9bde5f-3c20-409b-8c73-dfede01f3651_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_DefinedBenefitPlanDisclosureLineItems_3ac7cf2d-040c-4cfc-98c5-bbf7b493541f_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_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_38bf327f-befb-4c51-8f6f-b9d7e8217ced_verboseLabel_en-US" xlink:label="lab_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" 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">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_AccumulatedDefinedBenefitPlansAdjustmentMember_64f8bf08-9020-4012-8ee0-c24fccd184ae_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">Defined Benefit Plans Items</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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_aee50320-d6a8-4a71-b75f-91249b4a3382_terseLabel_en-US" xlink:label="lab_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable" xlink: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 Indefinite-lived and Finite Intangible Assets by Major Class [Table]</link:label>
    <link:label id="lab_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_label_en-US" xlink:label="lab_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable" xlink: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 Indefinite-lived and Finite Intangible Assets by Major Class [Table]</link:label>
    <link:label id="lab_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_documentation_en-US" xlink:label="lab_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable" 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 Acquired Indefinite-lived and Finite Intangible Assets by Major Class [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable" xlink:href="alg-20221231.xsd#alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable" xlink:to="lab_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryPolicyTextBlock_c9630806-7198-484e-aa88-d7602831f03e_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">Inventory Valuation</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_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_1dba45f9-d68d-426c-a504-227f893a7918_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_c7eeb1b7-ca70-4bc1-bfee-7f2b45c0626d_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_3e634d52-9d24-4cc3-b7f0-a08058ba49b3_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 by Major Class [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_dab415bb-eb2a-416a-8ce4-ac973ea2b6ca_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_410f0a54-6f7f-4d41-a87b-e4020b18402d_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">Beginning balance</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_aa573839-84ff-4214-8c02-bc9868a82748_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">Ending balance</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_VestingDomain_db21c984-8e0b-4273-84f8-78b3cebd12d8_terseLabel_en-US" xlink:label="lab_us-gaap_VestingDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vesting [Domain]</link:label>
    <link:label id="lab_us-gaap_VestingDomain_label_en-US" xlink:label="lab_us-gaap_VestingDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vesting [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VestingDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VestingDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VestingDomain" xlink:to="lab_us-gaap_VestingDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsOther_2523576e-124b-4824-9142-b50b132cba90_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsOther" xlink: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_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_2c44688d-c430-427d-a6d7-259915ca48e4_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_bafb1110-6e29-4292-89cd-c4f09e4891d4_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" 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 accumulated amortization</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_831c9583-f607-43a3-b1f2-b94767d93d80_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</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_ScheduleOfPropertyPlantAndEquipmentTable_f981d056-61db-44c1-8b8f-53a2b7c90a6c_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink: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 Property, Plant and Equipment [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink: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]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_ccc27c43-7ee7-475f-bffe-649013eb444b_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, net 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_49fc0c1a-0660-4be2-8873-ffe72e7a3623_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink: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_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_3304f1d0-c0e2-42ef-95fa-da6f2e275ac9_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_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_1aa43147-7d56-4f5e-87da-da5fc12a1440_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink: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_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_label_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink: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, Maturity, Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:to="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetainedEarningsMember_4fae96af-cee2-4c48-92f5-7e1b0e1b6e32_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_SegmentReportingInformationLineItems_1fcb3e2c-0e7d-4b3c-afec-2ca9971f9ce8_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingInformationLineItems" xlink: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 [Line Items]</link:label>
    <link:label id="lab_us-gaap_SegmentReportingInformationLineItems_label_en-US" xlink:label="lab_us-gaap_SegmentReportingInformationLineItems" xlink: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 [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems" xlink:to="lab_us-gaap_SegmentReportingInformationLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseCost_49d52c05-ef6e-4967-ab23-544faaad525c_totalLabel_en-US" xlink:label="lab_us-gaap_LeaseCost" 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 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_us-gaap_CommonStockMember_e4380dbd-9c0d-412b-ae3b-c7ae219037c6_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_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_f20c2663-6b83-40a3-b020-bb9fffd5f564_totalLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" 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, net of tax</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_c7d3fb00-20d9-471b-b275-247ceba02143_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink: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 (loss)</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink: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</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent_790f13ba-4ede-4a07-a014-e38440812d73_verboseLabel_en-US" xlink:label="lab_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent" 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 adjustment, net of tax (expense) benefit of $1,069, $(344), and $810</link:label>
    <link:label id="lab_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent_337a8d18-05a4-41e2-845d-ad41a0a651b8_terseLabel_en-US" xlink:label="lab_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent" xlink: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 (loss) before reclassifications</link:label>
    <link:label id="lab_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent_label_en-US" xlink:label="lab_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">OCI, before Reclassifications, Net of Tax, Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent" xlink:to="lab_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NumberOfReportableSegments_4d751ddc-3348-48c0-afe5-6dc7da3b5391_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 principal reporting 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_3a56ccff-1a76-4f71-8b78-682c63e4aa59_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">Components of Lease Expense</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_29e39722-5b05-4ebf-a6a2-876efe2e0fd6_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsForRepurchaseOfCommonStock" 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</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_alg_DeferredCompensationArrangementMaximumContractualTerm_af1575ff-9bc3-4ec9-8b0b-76fdbdb3e42d_terseLabel_en-US" xlink:label="lab_alg_DeferredCompensationArrangementMaximumContractualTerm" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Years of monthly installments associated with SERP disability</link:label>
    <link:label id="lab_alg_DeferredCompensationArrangementMaximumContractualTerm_label_en-US" xlink:label="lab_alg_DeferredCompensationArrangementMaximumContractualTerm" xlink: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 Compensation Arrangement Maximum Contractual Term</link:label>
    <link:label id="lab_alg_DeferredCompensationArrangementMaximumContractualTerm_documentation_en-US" xlink:label="lab_alg_DeferredCompensationArrangementMaximumContractualTerm" 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 Compensation Arrangement Maximum Contractual Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DeferredCompensationArrangementMaximumContractualTerm" xlink:href="alg-20221231.xsd#alg_DeferredCompensationArrangementMaximumContractualTerm"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_DeferredCompensationArrangementMaximumContractualTerm" xlink:to="lab_alg_DeferredCompensationArrangementMaximumContractualTerm" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_2fe8b981-5a0f-4045-b4e8-8fd0e6009f9a_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" 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">Options available for grant at end of year (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_18ddf025-a3da-47a2-b67a-5ef8fc35335f_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">Options available for grant at end of year (in shares)</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_LineOfCreditFacilityCapacityAvailableForTradePurchases_cc396bb6-2965-482c-93a6-bb204162de74_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityCapacityAvailableForTradePurchases" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amount of capacity</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityCapacityAvailableForTradePurchases_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityCapacityAvailableForTradePurchases" xlink: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, Capacity Available for Trade Purchases</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityCapacityAvailableForTradePurchases" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityCapacityAvailableForTradePurchases"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityCapacityAvailableForTradePurchases" xlink:to="lab_us-gaap_LineOfCreditFacilityCapacityAvailableForTradePurchases" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive_127c6dfa-a1fc-4440-8e8e-ccc21ce85dbc_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Thereafter</link:label>
    <link:label id="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive_label_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive" xlink: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, Maturity, after Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive" xlink:to="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxPolicyTextBlock_9c063c2a-3e67-4dc9-9acd-6cddacc41bd4_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_8c3c432d-4afe-4d04-add0-8beb76976bb2_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_2a017a52-5711-4414-aa43-82f791d1fefa_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_RetirementPlanSponsorLocationAxis_2053aa05-29de-4e6d-9aac-7f49519ba9e0_terseLabel_en-US" xlink:label="lab_us-gaap_RetirementPlanSponsorLocationAxis" xlink: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 Sponsor Location [Axis]</link:label>
    <link:label id="lab_us-gaap_RetirementPlanSponsorLocationAxis_label_en-US" xlink:label="lab_us-gaap_RetirementPlanSponsorLocationAxis" xlink: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 Sponsor Location [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanSponsorLocationAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanSponsorLocationAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetirementPlanSponsorLocationAxis" xlink:to="lab_us-gaap_RetirementPlanSponsorLocationAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl_9eb310ce-51e9-4a38-be68-9c149274b85a_terseLabel_en-US" xlink:label="lab_alg_DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Period of time that vested retirement benefit will be paid after death or change in control</link:label>
    <link:label id="lab_alg_DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl_label_en-US" xlink:label="lab_alg_DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl" xlink: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 Compensation Arrangement With Individual, Duration Limit Vested Retirement Benefit Will Be Paid After Death Or Change In Control</link:label>
    <link:label id="lab_alg_DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl_documentation_en-US" xlink:label="lab_alg_DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl" 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 Compensation Arrangement With Individual, Duration Limit Vested Retirement Benefit Will Be Paid After Death Or Change In Control</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl" xlink:href="alg-20221231.xsd#alg_DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl" xlink:to="lab_alg_DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FurnitureAndFixturesMember_41f85f79-dbe3-460c-ba89-f8b79648b293_terseLabel_en-US" xlink:label="lab_us-gaap_FurnitureAndFixturesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Office furniture and equipment</link:label>
    <link:label id="lab_us-gaap_FurnitureAndFixturesMember_label_en-US" xlink:label="lab_us-gaap_FurnitureAndFixturesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Furniture and Fixtures [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FurnitureAndFixturesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FurnitureAndFixturesMember" xlink:to="lab_us-gaap_FurnitureAndFixturesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_45e857d1-4f8b-45de-9a0e-f97617f3afc3_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_OperatingLeaseLiabilityNoncurrent_89720479-e008-438f-af52-a92051b2c0ec_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">Other long-term 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_alg_AuditInformationAbstract_label_en-US" xlink:label="lab_alg_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_alg_AuditInformationAbstract_documentation_en-US" xlink:label="lab_alg_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</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_AuditInformationAbstract" xlink:href="alg-20221231.xsd#alg_AuditInformationAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_AuditInformationAbstract" xlink:to="lab_alg_AuditInformationAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RangeAxis_de55f816-fa6b-4762-8773-ccd9a3bfedb3_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">Range [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_TreasuryStockSharesAcquired_bb16e21b-3789-4bfc-8296-a26c4f047ef9_terseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockSharesAcquired" xlink: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 repurchased (in shares)</link:label>
    <link:label id="lab_us-gaap_TreasuryStockSharesAcquired_label_en-US" xlink:label="lab_us-gaap_TreasuryStockSharesAcquired" xlink: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, Acquired</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockSharesAcquired"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockSharesAcquired" xlink:to="lab_us-gaap_TreasuryStockSharesAcquired" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_06e3e194-70b6-4fbe-9c8d-3d8de75b1e67_terseLabel_en-US" xlink:label="lab_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink: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</link:label>
    <link:label id="lab_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_308b694c-d30b-4682-b374-a7162609810e_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">Carrying values of indefinite lived trade names</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_8083b4c8-8574-45fe-932b-f6486d6d845c_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_country_FR_4729b57f-46ca-4f84-a7e9-15ab25830951_terseLabel_en-US" xlink:label="lab_country_FR" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">France</link:label>
    <link:label id="lab_country_FR_label_en-US" xlink:label="lab_country_FR" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">FRANCE</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_country_FR" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_FR"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_FR" xlink:to="lab_country_FR" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_d882fd94-9251-4a3a-8506-22b546ae68cc_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</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_StatementEquityComponentsAxis_4c5edc7a-58fe-4cc5-992b-8d04d20b453d_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_srt_ScenarioUnspecifiedDomain_11c5f961-4926-4539-b5e9-12a3d8e72b99_terseLabel_en-US" xlink:label="lab_srt_ScenarioUnspecifiedDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Scenario, Unspecified [Domain]</link:label>
    <link:label id="lab_srt_ScenarioUnspecifiedDomain_label_en-US" xlink:label="lab_srt_ScenarioUnspecifiedDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Scenario [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ScenarioUnspecifiedDomain" xlink:to="lab_srt_ScenarioUnspecifiedDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_792ffe0e-438d-4f27-8bc1-44f39fcaeef6_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink: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 reserve</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink: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 Asset, Tax Deferred Expense, Reserve and Accrual, Accounts Receivable, Allowance for Credit Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:to="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_c97eaa0e-872c-48fb-b0d2-11d417c926b1_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">Exercisable at end of year, exercise price (in dollars per share)</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_dei_DocumentFiscalYearFocus_534b4c46-bf12-4fa5-b799-af9bcbbb4577_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_ForeignPlanMember_b54f9c7b-f9ea-4f72-9bbb-2444cc10d071_terseLabel_en-US" xlink:label="lab_us-gaap_ForeignPlanMember" xlink: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 Plan</link:label>
    <link:label id="lab_us-gaap_ForeignPlanMember_label_en-US" xlink:label="lab_us-gaap_ForeignPlanMember" xlink: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 Plan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignPlanMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignPlanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignPlanMember" xlink:to="lab_us-gaap_ForeignPlanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_916faed1-967d-4f7c-b364-a53b3d9ec306_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward" xlink: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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward" xlink: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, Intrinsic Value, Amount Per Share [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PlanAssetCategoriesDomain_bb4a2514-55ca-4056-b114-fceb334e8142_terseLabel_en-US" xlink:label="lab_us-gaap_PlanAssetCategoriesDomain" xlink: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, Plan Assets, Category [Domain]</link:label>
    <link:label id="lab_us-gaap_PlanAssetCategoriesDomain_label_en-US" xlink:label="lab_us-gaap_PlanAssetCategoriesDomain" xlink: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, Category [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanAssetCategoriesDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanAssetCategoriesDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain" xlink:to="lab_us-gaap_PlanAssetCategoriesDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_country_GB_b46e44a9-6add-4d18-85e0-8bf490f5f9c9_terseLabel_en-US" xlink:label="lab_country_GB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">United Kingdom</link:label>
    <link:label id="lab_country_GB_label_en-US" xlink:label="lab_country_GB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">UNITED KINGDOM</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_country_GB" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_GB"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_GB" xlink:to="lab_country_GB" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_7663abdd-13be-4ff8-9d06-624ba9bfd969_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">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_us-gaap_StatementLineItems_97822acb-7bb8-4aaa-9860-cfeac45be929_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_alg_CashAndShortTermInvestmentsMember_8e0f96d7-5b02-4649-9647-dcb53ca5fd35_terseLabel_en-US" xlink:label="lab_alg_CashAndShortTermInvestmentsMember" xlink: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 &amp; Short-term Investments</link:label>
    <link:label id="lab_alg_CashAndShortTermInvestmentsMember_label_en-US" xlink:label="lab_alg_CashAndShortTermInvestmentsMember" xlink: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 Short Term Investments [Member]</link:label>
    <link:label id="lab_alg_CashAndShortTermInvestmentsMember_documentation_en-US" xlink:label="lab_alg_CashAndShortTermInvestmentsMember" 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 And Short Term Investments [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_CashAndShortTermInvestmentsMember" xlink:href="alg-20221231.xsd#alg_CashAndShortTermInvestmentsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_CashAndShortTermInvestmentsMember" xlink:to="lab_alg_CashAndShortTermInvestmentsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_c1e6bbcf-1515-4e0a-9aba-8395b99851ac_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">Outstanding at beginning of year (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_c043105e-5f4a-487d-a464-be91143bc0f9_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">Outstanding at end of year (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_DeferredTaxAssetsInProcessResearchAndDevelopment_06baf1cc-9c31-4a77-9c32-5c3dd34049e0_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capitalized R&amp;D 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_VariableRateDomain_5ce8d8d5-775f-420d-9337-effb3a6fc6fe_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_FairValueByFairValueHierarchyLevelAxis_f6d6e92a-ca1d-4586-8c9d-29a01f48eec2_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink: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 Hierarchy and NAV [Axis]</link:label>
    <link:label id="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_label_en-US" xlink:label="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink: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 Hierarchy and NAV [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsGross_609fc346-d875-40a7-b514-9f43c436202d_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Definite</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_us-gaap_SellingGeneralAndAdministrativeExpense_9dd2c97a-6738-4562-94f4-ec24dee4c4de_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 expenses</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_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_b46834be-4622-4dd6-a19a-34a4a7da2d0c_terseLabel_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink: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 PRONOUNCEMENTS</link:label>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_label_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink: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 Standards Update and Change in Accounting Principle [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:to="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillDisclosureTextBlock_ea60e115-907c-4408-a04b-ec98f5d70808_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillDisclosureTextBlock" xlink: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_GoodwillDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_GoodwillDisclosureTextBlock" xlink: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 Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillDisclosureTextBlock" xlink:to="lab_us-gaap_GoodwillDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CurrentIncomeTaxExpenseBenefit_52e24761-ef5f-42df-91a3-c6b540cc687f_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">Provision for current income tax expense (benefit)</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_b355289d-a91d-4480-8577-85a7831a51a5_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">Other non-current 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_ea1f54e9-23a6-48a1-8ef4-7e8350064fbe_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">Repurchased shares</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_85692b96-9408-4e20-a1b4-721ce5db6806_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 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_us-gaap_ComprehensiveIncomeNoteTextBlock_aa4cab3c-6d39-4fed-8755-7c6681ca8c60_terseLabel_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNoteTextBlock" xlink: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</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_dei_AuditorFirmId_b02260b8-6c2a-41db-b500-dfc284ca3f6f_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_alg_PaymentsForRepurchaseOfTreasuryStock_49e12558-4c48-4a74-a746-63478075b1ba_negatedTerseLabel_en-US" xlink:label="lab_alg_PaymentsForRepurchaseOfTreasuryStock" 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">Treasury stock repurchased</link:label>
    <link:label id="lab_alg_PaymentsForRepurchaseOfTreasuryStock_label_en-US" xlink:label="lab_alg_PaymentsForRepurchaseOfTreasuryStock" xlink: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 Treasury Stock</link:label>
    <link:label id="lab_alg_PaymentsForRepurchaseOfTreasuryStock_documentation_en-US" xlink:label="lab_alg_PaymentsForRepurchaseOfTreasuryStock" 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 for Repurchase of Treasury Stock</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_PaymentsForRepurchaseOfTreasuryStock" xlink:href="alg-20221231.xsd#alg_PaymentsForRepurchaseOfTreasuryStock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_PaymentsForRepurchaseOfTreasuryStock" xlink:to="lab_alg_PaymentsForRepurchaseOfTreasuryStock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesAbstract_61b46c34-cc6f-4ea7-a391-6ded7a4fc592_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesAbstract" xlink: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 income tax liabilities:</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesAbstract_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesAbstract" xlink: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 [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_e5186387-9dc1-47a0-af09-13546f5fa4ee_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration]</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:to="lab_us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseExpense_eeb41d0c-6913-4199-ba6c-dc1ac8781d31_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseExpense" xlink: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 expense</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseExpense_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseExpense" xlink: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, Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseExpense" xlink:to="lab_us-gaap_OperatingLeaseExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentTransitionReport_6808afbf-8dd4-4c18-8f47-edd2dcbfc415_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_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo_10a0b3f7-1c4d-4f40-96bb-b1862c6118e6_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_us-gaap_ForeignCountryMember_a16d38ad-21f0-4386-82fc-b41c6f58153d_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</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_dei_LocalPhoneNumber_bbe232b4-2c07-4bfc-adcf-bd5cc1c07f06_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_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_67d3a3f5-a165-48fb-af6c-f5fdee7b9489_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">Schedule of Share-based Compensation, Stock Options, Activity</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_63db833e-142c-41b3-b176-bd10fffe00ce_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_bfe28026-c8a1-4338-acc3-81a9da9c64c8_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss" 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 Operations</link:label>
    <link:label id="lab_us-gaap_OperatingIncomeLoss_034101d1-920c-4240-98d6-bba58c8fbbc9_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_DeferredTaxAssetsInventory_e09d7ab3-0a7e-429a-bba3-88058e12374e_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsInventory" xlink: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 basis difference</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsInventory_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsInventory" xlink: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, Inventory</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsInventory" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsInventory"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsInventory" xlink:to="lab_us-gaap_DeferredTaxAssetsInventory" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInInventories_2b63e055-437a-4ff6-83bb-b783d510fb11_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories" 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">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_alg_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount_ccaf148d-538b-455d-9cec-1c60720e5e4e_terseLabel_en-US" xlink:label="lab_alg_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">GILTI</link:label>
    <link:label id="lab_alg_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount_label_en-US" xlink:label="lab_alg_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount" xlink: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, Global Intangible Low-Taxed Income, Amount</link:label>
    <link:label id="lab_alg_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount_documentation_en-US" xlink:label="lab_alg_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount" 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, Global Intangible Low-Taxed Income, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount" xlink:href="alg-20221231.xsd#alg_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount" xlink:to="lab_alg_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_867f2126-4afa-4862-bafe-3c142fecc0cf_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">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_97f05e74-6b56-47f8-8261-6abb170e7f8f_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink: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 based 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_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_a7d21907-8ada-477a-85dc-d9b852831cc8_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" 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">Prepaid expenses and other</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink: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 Prepaid Expense and Other Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:to="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StateAndLocalJurisdictionMember_a3f4cf66-6491-4b69-94fa-d5b77900ae39_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_PensionAndOtherPostretirementPlansPensionsPolicy_d05392bb-214b-4618-937d-4b1074ec3c95_terseLabel_en-US" xlink:label="lab_us-gaap_PensionAndOtherPostretirementPlansPensionsPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pensions</link:label>
    <link:label id="lab_us-gaap_PensionAndOtherPostretirementPlansPensionsPolicy_label_en-US" xlink:label="lab_us-gaap_PensionAndOtherPostretirementPlansPensionsPolicy" xlink: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 and Other Postretirement Plans, Pensions, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionAndOtherPostretirementPlansPensionsPolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionAndOtherPostretirementPlansPensionsPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PensionAndOtherPostretirementPlansPensionsPolicy" xlink:to="lab_us-gaap_PensionAndOtherPostretirementPlansPensionsPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_a546885f-95ff-482c-be3d-c74a322b8418_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Average common shares:</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink: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 Reconciliation [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_c912a240-894a-4b06-b9ac-834748d848a9_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_Goodwill_33deaf05-2fbf-41cb-b389-c91b5b35bfbc_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_4ac0898f-b2c4-4deb-8445-02c8d236cf46_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">Goodwill, balance at the beginning of the period</link:label>
    <link:label id="lab_us-gaap_Goodwill_2520e925-069a-4874-a968-ca17293b66ca_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">Goodwill, balance at the end of the period</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_alg_LiabilityDrivenSolutionCITIIMember_da5a5eb3-4798-4540-82bd-6d9ed5771caf_terseLabel_en-US" xlink:label="lab_alg_LiabilityDrivenSolutionCITIIMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo Liability Driven Solution CIT II</link:label>
    <link:label id="lab_alg_LiabilityDrivenSolutionCITIIMember_label_en-US" xlink:label="lab_alg_LiabilityDrivenSolutionCITIIMember" xlink: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 Driven Solution CIT II [Member]</link:label>
    <link:label id="lab_alg_LiabilityDrivenSolutionCITIIMember_documentation_en-US" xlink:label="lab_alg_LiabilityDrivenSolutionCITIIMember" 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">Liability Driven Solution CIT II Member</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_LiabilityDrivenSolutionCITIIMember" xlink:href="alg-20221231.xsd#alg_LiabilityDrivenSolutionCITIIMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_LiabilityDrivenSolutionCITIIMember" xlink:to="lab_alg_LiabilityDrivenSolutionCITIIMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves_addbc532-57df-44a2-9597-e32804e5cc69_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product liability and warranty reserves</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves" xlink: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, Reserves and Accruals, Warranty Reserves</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves" xlink:to="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockShares_eabac4bc-ffe1-4296-824d-e55f4ffd2740_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 (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_bf213c8c-e218-4f7c-88df-ee6bc88978c0_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_DefinedBenefitPlanActualReturnOnPlanAssets_78ad73db-5e42-4117-b5e4-c58367abed0e_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets" xlink: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 plan assets</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets" xlink: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, Increase (Decrease) for Actual Return (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets" xlink:to="lab_us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax_35866635-e35d-4e1a-829d-a74a732cf1b1_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Estimate of amount of unrecognized actuarial expense</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax" xlink: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), Reclassification Adjustment from AOCI, before Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockRepurchasedDuringPeriodShares_725a3cd3-aedd-4581-82d4-a8f3fd02cc78_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">Repurchased shares (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_IncomeTaxReconciliationForeignIncomeTaxRateDifferential_e938f5f2-0a11-4e3e-85fa-91f4884f208d_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Jurisdictional rate differences</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink: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, Foreign Income Tax Rate Differential, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:to="lab_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_WholegoodUnitsMember_116ada33-27f0-4bba-a45b-70e193668394_terseLabel_en-US" xlink:label="lab_alg_WholegoodUnitsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wholegoods</link:label>
    <link:label id="lab_alg_WholegoodUnitsMember_label_en-US" xlink:label="lab_alg_WholegoodUnitsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wholegood Units [Member]</link:label>
    <link:label id="lab_alg_WholegoodUnitsMember_documentation_en-US" xlink:label="lab_alg_WholegoodUnitsMember" 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">Wholegood Units [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WholegoodUnitsMember" xlink:href="alg-20221231.xsd#alg_WholegoodUnitsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_WholegoodUnitsMember" xlink:to="lab_alg_WholegoodUnitsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_fb0d6987-0037-4439-91b9-bb75b8d4bfd1_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 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_us-gaap_IncomeTaxExpenseBenefit_3ac4825e-af4e-4373-a32a-fffa178ad952_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink: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</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_36e68d66-0862-4b96-8af5-e8f5bb1e7bbc_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 tax</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_c048d2f9-26b7-4ba9-b16e-4ff3bee4735a_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_645e6880-cfa3-434f-9d10-2682fa54e430_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsValuationAllowance" 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: Valuation allowance</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_8ac6f542-1d36-4e9e-830e-8d18c7bdda79_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_5d90d442-f13d-4b79-ab53-0368bdf63e92_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink: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 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_alg_NonQualifiedStockOptionsExercisePriceRangeThreeMember_6510fd42-0512-49ac-afd4-67807b12cc95_terseLabel_en-US" xlink:label="lab_alg_NonQualifiedStockOptionsExercisePriceRangeThreeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">$42.70 - $83.99</link:label>
    <link:label id="lab_alg_NonQualifiedStockOptionsExercisePriceRangeThreeMember_label_en-US" xlink:label="lab_alg_NonQualifiedStockOptionsExercisePriceRangeThreeMember" xlink: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- Qualified Stock Options Exercise Price Range Three [Member]</link:label>
    <link:label id="lab_alg_NonQualifiedStockOptionsExercisePriceRangeThreeMember_documentation_en-US" xlink:label="lab_alg_NonQualifiedStockOptionsExercisePriceRangeThreeMember" 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- Qualified Stock Options Exercise Price Range Three [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_NonQualifiedStockOptionsExercisePriceRangeThreeMember" xlink:href="alg-20221231.xsd#alg_NonQualifiedStockOptionsExercisePriceRangeThreeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_NonQualifiedStockOptionsExercisePriceRangeThreeMember" xlink:to="lab_alg_NonQualifiedStockOptionsExercisePriceRangeThreeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_4eaf79b8-2151-4cbc-ae5b-ca2a4aface88_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_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_49197fba-a214-4dae-9967-665fc6ff7e85_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_5c594422-7e33-4e4a-acd9-2f5312f8cc11_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_a6fa4636-bc84-4327-b82c-be2f48fd124a_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">Domestic</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_136c08a8-624b-42ca-b3d3-82adba14495f_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_dei_DocumentFiscalPeriodFocus_27be7c3c-64dd-402e-a51f-5eb9f4d5987e_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_LineOfCreditFacilityExpirationPeriod_19a0456f-8359-40c3-be43-7507394dbf53_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityExpirationPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Expiration period</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityExpirationPeriod_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityExpirationPeriod" xlink: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, Expiration Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityExpirationPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityExpirationPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityExpirationPeriod" xlink:to="lab_us-gaap_LineOfCreditFacilityExpirationPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_b4456066-5a55-4e36-9f26-1c88eb1f621a_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold" xlink: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_CostOfGoodsAndServicesSold_label_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold" xlink: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 Goods and Services Sold</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfGoodsAndServicesSold" xlink:to="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent_9f88e12e-52e6-43c4-8b4f-a56c6ac97d0c_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent" 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, tax expense</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent" xlink: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 Translation Adjustment, Tax, Portion Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent" xlink:to="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_a601fea1-b395-45b6-9886-f2e991c7bc02_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">Diluted (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_1134b432-ceae-4dfe-8fe6-1896346de3e2_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">Diluted (weighted-average outstanding shares) (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_bb7cebf0-c300-4d37-8073-043b85a15b26_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink: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 depreciation relating to rental equipment</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_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy_4aeec22f-295b-4a31-ad39-d839b7a3c91e_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy" xlink: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_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy_label_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy" xlink: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, Intangible Assets, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_2f25d98e-eb53-4035-99ac-88cd9da3286d_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_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_2c10b69d-1372-4ef7-8a5b-cd9b25fc7ee6_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink: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 expected life</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink: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, Fair Value Assumptions, Expected Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths_ce5876a8-d342-4b17-9db1-a48d3e82c14f_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_alg_DeferredTaxAssetsLeaseLiability_204360d9-a75e-4867-98e8-791473427bc5_terseLabel_en-US" xlink:label="lab_alg_DeferredTaxAssetsLeaseLiability" xlink: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 liability</link:label>
    <link:label id="lab_alg_DeferredTaxAssetsLeaseLiability_label_en-US" xlink:label="lab_alg_DeferredTaxAssetsLeaseLiability" xlink: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, Lease Liability</link:label>
    <link:label id="lab_alg_DeferredTaxAssetsLeaseLiability_documentation_en-US" xlink:label="lab_alg_DeferredTaxAssetsLeaseLiability" 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, Lease Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DeferredTaxAssetsLeaseLiability" xlink:href="alg-20221231.xsd#alg_DeferredTaxAssetsLeaseLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_DeferredTaxAssetsLeaseLiability" xlink:to="lab_alg_DeferredTaxAssetsLeaseLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BuildingAndBuildingImprovementsMember_834a4475-888a-4ee6-a85d-f080780db56c_terseLabel_en-US" xlink:label="lab_us-gaap_BuildingAndBuildingImprovementsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Buildings and improvements</link:label>
    <link:label id="lab_us-gaap_BuildingAndBuildingImprovementsMember_label_en-US" xlink:label="lab_us-gaap_BuildingAndBuildingImprovementsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Building and Building Improvements [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BuildingAndBuildingImprovementsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingAndBuildingImprovementsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BuildingAndBuildingImprovementsMember" xlink:to="lab_us-gaap_BuildingAndBuildingImprovementsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockDividendsPerShareCashPaid_5cd6efc1-6bd7-4fc3-87c1-aaaefe2fc3a7_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockDividendsPerShareCashPaid" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends paid (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_CommonStockDividendsPerShareCashPaid_label_en-US" xlink:label="lab_us-gaap_CommonStockDividendsPerShareCashPaid" xlink: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, Dividends, Per Share, Cash Paid</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockDividendsPerShareCashPaid" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockDividendsPerShareCashPaid"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockDividendsPerShareCashPaid" xlink:to="lab_us-gaap_CommonStockDividendsPerShareCashPaid" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_IcfrAuditorAttestationFlag_1586cd36-918c-41cc-b716-6ab437a1610b_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_6e2eb862-19d9-46be-84d0-46113a8ca2ef_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_9ef66302-24ea-45d8-bfe2-2103b02f3002_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockValue" xlink: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, $.10 par value, 20,000,000 shares authorized; 11,913,890 and 11,874,178 outstanding at December 31, 2022 and December 31, 2021, respectively</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_d7ac354e-4ba5-462d-985b-a56ad1e86252_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Canceled (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue" xlink: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, Intrinsic Value, Amount Per Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentNameDomain_1b3460d3-e8a4-46ef-986a-87fcd39e5b44_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_10d18c8f-ebe0-4882-9f6d-d6d13f68bb8e_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_DeferredTaxAssetsGrossAbstract_e221bacb-eb7a-45fe-a265-ee849dab924b_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsGrossAbstract" xlink: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 income tax assets:</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsGrossAbstract_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsGrossAbstract" xlink: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 [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGrossAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGrossAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsGrossAbstract" xlink:to="lab_us-gaap_DeferredTaxAssetsGrossAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesPolicyTextBlock_6865d4bb-a320-4e8c-81bd-2c9d8d3d9b09_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesPolicyTextBlock" xlink: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_CommitmentsAndContingenciesPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesPolicyTextBlock" xlink: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, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesPolicyTextBlock" xlink:to="lab_us-gaap_CommitmentsAndContingenciesPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities_3b40b176-d6d7-4d3f-9090-f87ddb61132a_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">Retirement provision</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_alg_DebtInstrumentNumberOfCovenants_9465a297-31d2-4cfb-b89b-1cbda78a541a_terseLabel_en-US" xlink:label="lab_alg_DebtInstrumentNumberOfCovenants" xlink: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 covenants</link:label>
    <link:label id="lab_alg_DebtInstrumentNumberOfCovenants_label_en-US" xlink:label="lab_alg_DebtInstrumentNumberOfCovenants" xlink: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 Covenants</link:label>
    <link:label id="lab_alg_DebtInstrumentNumberOfCovenants_documentation_en-US" xlink:label="lab_alg_DebtInstrumentNumberOfCovenants" 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 Covenants</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DebtInstrumentNumberOfCovenants" xlink:href="alg-20221231.xsd#alg_DebtInstrumentNumberOfCovenants"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_DebtInstrumentNumberOfCovenants" xlink:to="lab_alg_DebtInstrumentNumberOfCovenants" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShortTermLeaseCost_d94d514a-b3e4-4c8a-bd50-aea7e81de65e_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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_accad00f-0792-4800-b83a-4f75ae016988_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 the year</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_7c105092-79b5-4345-b6d6-fd3abb54b4fa_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 the 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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_8453049e-e105-47ba-acd0-7ba9c215cd9b_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_alg_RentalEquipmentNet_e138eef8-d037-49de-98ae-43ae1b32aa73_terseLabel_en-US" xlink:label="lab_alg_RentalEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Rental equipment, net</link:label>
    <link:label id="lab_alg_RentalEquipmentNet_label_en-US" xlink:label="lab_alg_RentalEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Rental Equipment, Net</link:label>
    <link:label id="lab_alg_RentalEquipmentNet_documentation_en-US" xlink:label="lab_alg_RentalEquipmentNet" 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">Rental Equipment, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_RentalEquipmentNet" xlink:href="alg-20221231.xsd#alg_RentalEquipmentNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_RentalEquipmentNet" xlink:to="lab_alg_RentalEquipmentNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_7162e435-c4eb-4206-bb9e-66e7f40cef15_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_LiabilitiesCurrentAbstract_6e3789be-5f2d-4116-9856-364e4876f4b6_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_us-gaap_ProceedsFromStockOptionsExercised_d4b7db71-24df-477f-9487-d1f487cefcbd_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromStockOptionsExercised" xlink: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 stock options exercised</link:label>
    <link:label id="lab_us-gaap_ProceedsFromStockOptionsExercised_label_en-US" xlink:label="lab_us-gaap_ProceedsFromStockOptionsExercised" xlink: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 Stock Options Exercised</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromStockOptionsExercised" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromStockOptionsExercised"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromStockOptionsExercised" xlink:to="lab_us-gaap_ProceedsFromStockOptionsExercised" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfLongTermDebt_2716d5e2-c791-4fa7-b1fb-a7ebfee690bb_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 issuance of 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_IncomeTaxReconciliationOtherAdjustments_6c60dcd5-fcf2-4351-9d24-375a24d76fee_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, net</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_55be2d8e-1233-49aa-a09c-04ac30865163_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">Customer deposits</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_us-gaap_FinanceLeaseInterestExpense_cf60ed97-2aac-4b6c-b75a-1ef18c4f1865_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseInterestExpense" xlink: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 on lease liabilities</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseInterestExpense_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseInterestExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Interest Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseInterestExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseInterestExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseInterestExpense" xlink:to="lab_us-gaap_FinanceLeaseInterestExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_54b463a6-089d-4380-b337-1f4a41e6add9_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Employer contribution percentage</link:label>
    <link:label id="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_label_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink: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 Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:to="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetirementPlanTypeDomain_bf9e314e-6f63-42fb-9fdc-e155386e7a56_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_IncomeStatementLocationDomain_35626a68-cbb2-442c-88bf-cfef659ec628_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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms_7f3b972b-394b-4fba-a408-f5b17f43aec0_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" xlink: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 (years)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" xlink: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, Outstanding, Weighted Average Remaining Contractual Terms</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_AmendmentFlag_7dd393c3-5556-44da-8fc0-69a896170f0f_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_FiniteLivedIntangibleAssetUsefulLife_4cd624f6-9a67-4cab-aa6f-12c11f8f28fc_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetUsefulLife" 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">Estimated useful lives</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetUsefulLife_3687fa83-a5fc-4ca3-a54f-4c2c3dbc93e0_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink: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_FiniteLivedIntangibleAssetUsefulLife_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink: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, Useful Life</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_fa61c397-35bd-4a45-a292-8ad4bb54a7f1_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 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_a9ccab6b-a692-4b21-9bc8-2063baba88a1_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_alg_OtherGeographicalAreasMember_7e672e1a-6605-4a55-b6b2-c05cf86f4299_terseLabel_en-US" xlink:label="lab_alg_OtherGeographicalAreasMember" xlink: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_alg_OtherGeographicalAreasMember_label_en-US" xlink:label="lab_alg_OtherGeographicalAreasMember" xlink: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 Geographical Areas [Member]</link:label>
    <link:label id="lab_alg_OtherGeographicalAreasMember_documentation_en-US" xlink:label="lab_alg_OtherGeographicalAreasMember" 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 Geographical Areas [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_OtherGeographicalAreasMember" xlink:href="alg-20221231.xsd#alg_OtherGeographicalAreasMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_OtherGeographicalAreasMember" xlink:to="lab_alg_OtherGeographicalAreasMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_85ecb632-3de4-41bf-9e34-9077a269bf0e_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Employee benefit accrual</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" xlink: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, Employee Benefits</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" xlink:to="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTax_8112f0f8-9cfd-448c-bbaf-cfd55a361d11_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink: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_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_efd594e0-0204-4de9-9f75-87fc41dcd012_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">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_90ee129d-1873-4d15-a507-502667162305_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAcquiredDuringPeriod" xlink: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 acquired</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_ScheduleOfSegmentReportingInformationBySegmentTextBlock_aa8a0b12-58e9-4797-ac42-636be11da63d_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink: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 Segment Reporting Information, by Segment</link:label>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink: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 Segment Reporting Information, by Segment [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:to="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCurrentReportingStatus_92335d62-934d-4f21-b466-1044dd6df4bf_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_alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember_daa02585-5d72-468b-83f7-99c505e5ccb8_terseLabel_en-US" xlink:label="lab_alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">the Credit Agreement</link:label>
    <link:label id="lab_alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember_label_en-US" xlink:label="lab_alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Second Amended And Restated Revolving Credit Agreement [Member]</link:label>
    <link:label id="lab_alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember_documentation_en-US" xlink:label="lab_alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember" 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">Second Amended And Restated Revolving Credit Agreement [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember" xlink:href="alg-20221231.xsd#alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember" xlink:to="lab_alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherLiabilitiesCurrent_45c1134f-f1e0-4f0e-ac9c-8bd3756e3a4e_terseLabel_en-US" xlink:label="lab_us-gaap_OtherLiabilitiesCurrent" xlink: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_OtherLiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_OtherLiabilitiesCurrent" xlink: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, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherLiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherLiabilitiesCurrent" xlink:to="lab_us-gaap_OtherLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <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_alg_InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember_1d3997fa-b1e0-4e6e-8a17-e6424e2e2aa3_terseLabel_en-US" xlink:label="lab_alg_InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">IAM Plan</link:label>
    <link:label id="lab_alg_InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember_label_en-US" xlink:label="lab_alg_InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">International Association Of Machinist And Aerospace Retirement Plan [Member]</link:label>
    <link:label id="lab_alg_InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember_documentation_en-US" xlink:label="lab_alg_InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember" 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">International Association Of Machinist And Aerospace Retirement Plan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember" xlink:href="alg-20221231.xsd#alg_InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember" xlink:to="lab_alg_InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_93fa5845-a1ac-407f-8b9a-30ab281d4d72_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedTaxesPayable" xlink: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 tax payable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedTaxesPayable" xlink: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 Accrued Taxes Payable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedTaxesPayable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccruedTaxesPayable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccruedTaxesPayable" xlink:to="lab_us-gaap_IncreaseDecreaseInAccruedTaxesPayable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrent_4b153197-aaa7-4f75-94b2-7fcf32261d51_terseLabel_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrent" xlink: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-current 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_DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration_b34684ca-ce9b-412e-a429-6855e43b3d70_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration" xlink: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 operating loss carryforwards with unlimited carryforward period</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration" xlink: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, Not Subject to Expiration</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration" xlink:to="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent_bc2f413c-027c-4468-a0eb-f17218b40fab_negatedLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent" 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">Unrealized gain (loss) on derivative instruments</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent" xlink: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), Cash Flow Hedge, Gain (Loss), after Reclassification, Tax, Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_AverageCommonSharesAbstract_3f4b0ee7-ecb6-45be-9ba0-0741a523cc8d_terseLabel_en-US" xlink:label="lab_alg_AverageCommonSharesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Average common shares:</link:label>
    <link:label id="lab_alg_AverageCommonSharesAbstract_label_en-US" xlink:label="lab_alg_AverageCommonSharesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Average Common Shares [Abstract]</link:label>
    <link:label id="lab_alg_AverageCommonSharesAbstract_documentation_en-US" xlink:label="lab_alg_AverageCommonSharesAbstract" 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">Average Common Shares [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_AverageCommonSharesAbstract" xlink:href="alg-20221231.xsd#alg_AverageCommonSharesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_AverageCommonSharesAbstract" xlink:to="lab_alg_AverageCommonSharesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_59e919e3-0e5a-41c6-aed8-332e72e5e31d_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 at end of year (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_7323aafd-74bd-43e3-8f9a-2e167a8e62fb_totalLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" 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">Options exercisable (in shares)</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_alg_PartsMember_e11b35a0-1110-4c09-873a-02d811718e32_terseLabel_en-US" xlink:label="lab_alg_PartsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Parts</link:label>
    <link:label id="lab_alg_PartsMember_label_en-US" xlink:label="lab_alg_PartsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Parts [Member]</link:label>
    <link:label id="lab_alg_PartsMember_documentation_en-US" xlink:label="lab_alg_PartsMember" 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">Parts [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_PartsMember" xlink:href="alg-20221231.xsd#alg_PartsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_PartsMember" xlink:to="lab_alg_PartsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_9eeeb94d-14fa-4651-9a84-cfae9a55fa2c_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">Commitment fee (percent)</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_alg_DefinedContributionPlanNumberOfSubsidiaries_971db78c-463b-4d8f-a49f-f6f6a59482c7_terseLabel_en-US" xlink:label="lab_alg_DefinedContributionPlanNumberOfSubsidiaries" xlink: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 international subsidiaries that participate in defined contribution and savings plan</link:label>
    <link:label id="lab_alg_DefinedContributionPlanNumberOfSubsidiaries_label_en-US" xlink:label="lab_alg_DefinedContributionPlanNumberOfSubsidiaries" xlink: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 Contribution Plan, Number Of Subsidiaries</link:label>
    <link:label id="lab_alg_DefinedContributionPlanNumberOfSubsidiaries_documentation_en-US" xlink:label="lab_alg_DefinedContributionPlanNumberOfSubsidiaries" 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 Contribution Plan, Number Of Subsidiaries</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DefinedContributionPlanNumberOfSubsidiaries" xlink:href="alg-20221231.xsd#alg_DefinedContributionPlanNumberOfSubsidiaries"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_DefinedContributionPlanNumberOfSubsidiaries" xlink:to="lab_alg_DefinedContributionPlanNumberOfSubsidiaries" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_32ce6c48-79c4-4126-b8a1-4d7c2e483bc1_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">Net Charged to Costs and Expenses</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_AccumulatedOtherComprehensiveIncomeLossTable_7ea5e20d-2b8e-4c02-8e0a-111eedf951ed_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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_55540efe-9019-482a-b9f5-602a14942e5d_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">Options outstanding at beginning of year (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_fe3bc9b6-6047-417c-979a-e8e22ca8d83d_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">Options outstanding at end of year (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_74c0f294-0809-46c9-b3f5-8df61c3677ba_totalLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" 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">Options outstanding (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_alg_InternationalMutualFundsMember_17a984ae-80d0-4f2a-940d-564d8aa82b1f_terseLabel_en-US" xlink:label="lab_alg_InternationalMutualFundsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">International</link:label>
    <link:label id="lab_alg_InternationalMutualFundsMember_label_en-US" xlink:label="lab_alg_InternationalMutualFundsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">International Mutual Funds [Member]</link:label>
    <link:label id="lab_alg_InternationalMutualFundsMember_documentation_en-US" xlink:label="lab_alg_InternationalMutualFundsMember" 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">International Mutual Funds [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_InternationalMutualFundsMember" xlink:href="alg-20221231.xsd#alg_InternationalMutualFundsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_InternationalMutualFundsMember" xlink:to="lab_alg_InternationalMutualFundsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfStockByClassTable_83767fba-4daf-44de-aadb-929e5d740bb8_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfStockByClassTable" xlink: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 Stock by Class [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfStockByClassTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfStockByClassTable" xlink: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 Stock by Class [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfStockByClassTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfStockByClassTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable" xlink:to="lab_us-gaap_ScheduleOfStockByClassTable" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_dfa3271c-e00a-4bdd-86c0-de954ea5a89a_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_alg_AssetsAndLiabilitiesLesseeTableTextBlock_c47f6e99-30af-4cf9-924f-1508e42d2494_terseLabel_en-US" xlink:label="lab_alg_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">Supplemental Balance Sheet Information Related to Leases</link:label>
    <link:label id="lab_alg_AssetsAndLiabilitiesLesseeTableTextBlock_label_en-US" xlink:label="lab_alg_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_alg_AssetsAndLiabilitiesLesseeTableTextBlock_documentation_en-US" xlink:label="lab_alg_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</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_AssetsAndLiabilitiesLesseeTableTextBlock" xlink:href="alg-20221231.xsd#alg_AssetsAndLiabilitiesLesseeTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_AssetsAndLiabilitiesLesseeTableTextBlock" xlink:to="lab_alg_AssetsAndLiabilitiesLesseeTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeasePayments_aa71e681-840e-42ff-a4a9-6191c533e326_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">Operating cash flows from operating leases</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_EmployeeStockOptionMember_d44ca427-848e-4dec-970f-7944f6876225_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeStockOptionMember" xlink: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</link:label>
    <link:label id="lab_us-gaap_EmployeeStockOptionMember_label_en-US" xlink:label="lab_us-gaap_EmployeeStockOptionMember" xlink: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 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeStockOptionMember" xlink:to="lab_us-gaap_EmployeeStockOptionMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DomesticPlanMember_ed1f47c6-cec3-45d0-b2cc-03d6b0d88ea3_terseLabel_en-US" xlink:label="lab_us-gaap_DomesticPlanMember" xlink: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 Plan</link:label>
    <link:label id="lab_us-gaap_DomesticPlanMember_label_en-US" xlink:label="lab_us-gaap_DomesticPlanMember" xlink: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 Plan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DomesticPlanMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DomesticPlanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DomesticPlanMember" xlink:to="lab_us-gaap_DomesticPlanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockValue_1bd8d754-a48c-40fa-905f-4841183e0e66_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockValue" 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">Treasury stock, at cost; 82,600 shares at December 31, 2022 and December 31, 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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_ccfeb817-1c90-4913-bde1-6c33bc87d7af_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Volatility factors</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink: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, Fair Value Assumptions, Expected Volatility Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList_aec56b4e-9ac3-4100-9158-a955d4b8f411_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, Noncurrent, Statement of Financial Position [Extensible Enumeration]</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, Noncurrent, Statement of Financial Position [Extensible Enumeration]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:to="lab_us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_68872c3f-3831-49ba-9005-0a24dfddfc80_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-based compensation transactions</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_b5d39372-2e2f-4c58-a7e9-b2ed54fcec26_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" 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">Canceled (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_671ad226-58c1-4501-bb6b-7fe860fbba45_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">Long-term 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_alg_BushHogMember_4c8854f8-b93c-4fe8-a2a9-03b7ae4dc776_terseLabel_en-US" xlink:label="lab_alg_BushHogMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Bush Hog</link:label>
    <link:label id="lab_alg_BushHogMember_label_en-US" xlink:label="lab_alg_BushHogMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Bush Hog [Member]</link:label>
    <link:label id="lab_alg_BushHogMember_documentation_en-US" xlink:label="lab_alg_BushHogMember" 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">Bush Hog [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_BushHogMember" xlink:href="alg-20221231.xsd#alg_BushHogMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_BushHogMember" xlink:to="lab_alg_BushHogMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpense_fdcf10c4-a0df-41b4-9b22-34fc150f20b7_terseLabel_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink: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 income</link:label>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpense_label_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink: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 Nonoperating Income (Expense)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpense" xlink:to="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_e49d03be-0a15-4f1a-9d91-ebfe706eac1a_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_StatementOfIncomeAndComprehensiveIncomeAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink: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 Comprehensive Income [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:to="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedIncomeTaxesCurrent_fe5d3b9d-a24b-4bed-8227-b8e53d3deeaf_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">Income taxes payable</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_1e934d1d-2e25-4112-9079-3f46198dc044_verboseLabel_en-US" xlink:label="lab_srt_MaximumMember" 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">Maximum</link:label>
    <link:label id="lab_srt_MaximumMember_fc0bd36f-9c97-4951-a46e-846fc6587835_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">High</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_alg_CurrentEmployeesCoveredByPensionPlan_a2f330d7-9598-4928-a2d1-547d5b79442b_terseLabel_en-US" xlink:label="lab_alg_CurrentEmployeesCoveredByPensionPlan" xlink: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 employees</link:label>
    <link:label id="lab_alg_CurrentEmployeesCoveredByPensionPlan_label_en-US" xlink:label="lab_alg_CurrentEmployeesCoveredByPensionPlan" xlink: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 Employees Covered By Pension Plan</link:label>
    <link:label id="lab_alg_CurrentEmployeesCoveredByPensionPlan_documentation_en-US" xlink:label="lab_alg_CurrentEmployeesCoveredByPensionPlan" 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">Current Employees Covered By Pension Plan</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_CurrentEmployeesCoveredByPensionPlan" xlink:href="alg-20221231.xsd#alg_CurrentEmployeesCoveredByPensionPlan"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_CurrentEmployeesCoveredByPensionPlan" xlink:to="lab_alg_CurrentEmployeesCoveredByPensionPlan" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_f2b83f0e-3565-45b6-86f8-3a4aae3dcba1_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</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_LineOfCreditFacilityFairValueOfAmountOutstanding_62a27bab-e383-4083-b9e1-176f3c922aa0_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding" xlink: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 amount outstanding</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding" xlink: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, Fair Value of Amount Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding" xlink:to="lab_us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryImpairmentPolicy_90b457ef-d7bf-4682-a84d-9bd047d4e6bd_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryImpairmentPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reserve for Inventory Obsolescence</link:label>
    <link:label id="lab_us-gaap_InventoryImpairmentPolicy_label_en-US" xlink:label="lab_us-gaap_InventoryImpairmentPolicy" xlink: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 Impairment, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryImpairmentPolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryImpairmentPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryImpairmentPolicy" xlink:to="lab_us-gaap_InventoryImpairmentPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember_3cb7a691-9eff-4e67-924e-65e345e517d1_terseLabel_en-US" xlink:label="lab_alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo BlackRock Russell 2000 Index Fund</link:label>
    <link:label id="lab_alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember_label_en-US" xlink:label="lab_alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo Russell Two Zero Zero Zero Index Fund [Member]</link:label>
    <link:label id="lab_alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember_documentation_en-US" xlink:label="lab_alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember" 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">Wells Fargo Russell Two Zero Zero Zero Index Fund [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember" xlink:href="alg-20221231.xsd#alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember" xlink:to="lab_alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets_74aa13d5-12f9-41a1-84e1-6e8fcbf51815_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets" xlink: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 rate of return on plan assets</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets" xlink: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 Net Periodic Benefit Cost, Expected Long-Term Rate of Return on Plan Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets" xlink:to="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_563b1062-275f-45b3-92c1-3ea17fd19919_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_us-gaap_CashAndCashEquivalentsAtCarryingValue_c8968de4-5c38-450c-8208-a9a9e9c25e71_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_AssetsCurrent_2fd5464f-fc1d-4f6c-83f5-96cfab5384d7_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_TaxesPayableCurrent_f25ec694-742a-4dc2-8512-06b050241001_terseLabel_en-US" xlink:label="lab_us-gaap_TaxesPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Taxes</link:label>
    <link:label id="lab_us-gaap_TaxesPayableCurrent_label_en-US" xlink:label="lab_us-gaap_TaxesPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Taxes Payable, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TaxesPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TaxesPayableCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TaxesPayableCurrent" xlink:to="lab_us-gaap_TaxesPayableCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_22a716a2-5b59-4e92-8918-e271cc0d3fd7_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_us-gaap_IncomeTaxesPaidNet_ceaf73fa-73f1-49d3-8fb8-473cc3e491c7_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">Income taxes</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_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList_d6823d26-7f0d-4c4d-b583-07b9d38e30bb_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink: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, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration]</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink: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, Statement of Financial Position [Extensible Enumeration]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:to="lab_us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionLineItems_caa43b28-7a02-434a-aa41-ed54b6ed19bb_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_fafd3158-cb80-4226-a377-e4b39de2b326_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_SharesOutstanding_27784d66-96cd-4d9a-9cce-fa216cabe3d9_periodStartLabel_en-US" xlink:label="lab_us-gaap_SharesOutstanding" 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_SharesOutstanding_3c68a35f-eadf-4a13-8551-d599389c3722_periodEndLabel_en-US" xlink:label="lab_us-gaap_SharesOutstanding" 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_SharesOutstanding_label_en-US" xlink:label="lab_us-gaap_SharesOutstanding" xlink: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, Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharesOutstanding" xlink:to="lab_us-gaap_SharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_841ad607-e4f8-4ab2-93b0-7b17c42555e0_terseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink: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_StockholdersEquityNoteDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink: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 Note Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:to="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockDividendsPerShareDeclared_d730c90b-77fa-479d-8f22-db591e336fa6_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockDividendsPerShareDeclared" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends per share (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_CommonStockDividendsPerShareDeclared_label_en-US" xlink:label="lab_us-gaap_CommonStockDividendsPerShareDeclared" xlink: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, Dividends, Per Share, Declared</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockDividendsPerShareDeclared" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockDividendsPerShareDeclared"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockDividendsPerShareDeclared" xlink:to="lab_us-gaap_CommonStockDividendsPerShareDeclared" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfNetBenefitCostsTableTextBlock_8c694cc7-5c0a-4101-bc08-02e7715be86b_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 Benefit Cost</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_us-gaap_RevenuesAbstract_7ec2e648-e570-4ebc-99da-bf3d7d23c91c_terseLabel_en-US" xlink:label="lab_us-gaap_RevenuesAbstract" xlink: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_RevenuesAbstract_label_en-US" xlink:label="lab_us-gaap_RevenuesAbstract" xlink: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 [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenuesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenuesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenuesAbstract" xlink:to="lab_us-gaap_RevenuesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNet_3d79ad82-a4e2-4618-ad7d-7c437d2741da_totalLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet" 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 net</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNet_3d6d11c3-78f0-413f-9188-a746db663952_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xlink: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 carrying value of intangibles with definite useful lives</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNet_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xlink: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</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_WellsFargoMultiManagerSmallCapMember_896c36fd-b2dc-43c3-a150-2b54fca7138c_terseLabel_en-US" xlink:label="lab_alg_WellsFargoMultiManagerSmallCapMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo Multi-Manager Small Cap</link:label>
    <link:label id="lab_alg_WellsFargoMultiManagerSmallCapMember_label_en-US" xlink:label="lab_alg_WellsFargoMultiManagerSmallCapMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo Multi-Manager Small Cap [Member]</link:label>
    <link:label id="lab_alg_WellsFargoMultiManagerSmallCapMember_documentation_en-US" xlink:label="lab_alg_WellsFargoMultiManagerSmallCapMember" 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">Wells Fargo Multi-Manager Small Cap [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoMultiManagerSmallCapMember" xlink:href="alg-20221231.xsd#alg_WellsFargoMultiManagerSmallCapMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_WellsFargoMultiManagerSmallCapMember" xlink:to="lab_alg_WellsFargoMultiManagerSmallCapMember" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount_58f4c7e0-8d3b-41b4-b5b6-a1691195fa72_terseLabel_en-US" xlink:label="lab_alg_EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount" xlink: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 limitation</link:label>
    <link:label id="lab_alg_EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount_label_en-US" xlink:label="lab_alg_EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount" xlink: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 Limitation, Amount</link:label>
    <link:label id="lab_alg_EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount_documentation_en-US" xlink:label="lab_alg_EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount" 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 Limitation, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount" xlink:href="alg-20221231.xsd#alg_EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount" xlink:to="lab_alg_EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestrictedCash_ce76ba54-90da-47f2-a22f-c21865da17a8_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedCash" xlink: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 cash</link:label>
    <link:label id="lab_us-gaap_RestrictedCash_label_en-US" xlink:label="lab_us-gaap_RestrictedCash" xlink: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 Cash</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCash" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedCash"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedCash" xlink:to="lab_us-gaap_RestrictedCash" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock_34718e61-2f28-4f26-9788-6c9de55db1f0_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock" xlink: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, Assets Measured on Recurring Basis</link:label>
    <link:label id="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock" xlink: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, Assets Measured on Recurring Basis [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock" xlink:to="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLossCarryforwardsTable_1adaec07-08f4-462f-8414-b12a370f7a51_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_3e497b78-3ed4-4ca2-8554-766eb4992f70_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">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_alg_NonQualifiedOptionsMember_c3455a2e-78c4-443b-abfa-9e07388f4b4a_terseLabel_en-US" xlink:label="lab_alg_NonQualifiedOptionsMember" xlink: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 Qualified Options</link:label>
    <link:label id="lab_alg_NonQualifiedOptionsMember_label_en-US" xlink:label="lab_alg_NonQualifiedOptionsMember" xlink: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 Qualified Options [Member]</link:label>
    <link:label id="lab_alg_NonQualifiedOptionsMember_documentation_en-US" xlink:label="lab_alg_NonQualifiedOptionsMember" 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 Qualified Options [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_NonQualifiedOptionsMember" xlink:href="alg-20221231.xsd#alg_NonQualifiedOptionsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_NonQualifiedOptionsMember" xlink:to="lab_alg_NonQualifiedOptionsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_df882a5e-60aa-4018-a7e5-d3379467acd0_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">Total unrecognized compensation cost related to non-vested share-based compensation arrangements</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_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax_2a70ebc7-de76-4752-85c7-43b0e3e6e5a5_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax" 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 gain on pension and other post-retirement benefits</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax" xlink: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), Reclassification Adjustment from AOCI, Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_6c080bba-7558-462c-8c10-a98af9e3cd1c_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">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_MovementInValuationAllowancesAndReservesRollForward_ae5cab53-aafd-4f4c-936c-e415aad6e605_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_PropertyPlantAndEquipmentDisclosureTextBlock_390e3606-e986-4963-bc99-935bf223a235_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink: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_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_DefinedBenefitPlanWeightedAverageAssetAllocations_0faf2e3a-9363-4a3e-9d76-8ed1a13a472c_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations" xlink: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 allocations as a percentage of plan assets</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations" xlink: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, Actual Allocation, Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations" xlink:to="lab_us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_aa449abe-5830-458b-9496-f23ff98be338_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_a7ec36e5-758c-41ae-a256-f66249a18d52_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" 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">&#160;&#160;&#160;&#160;&#160; &#160;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_95810151-8ac2-4337-a562-eefe95699f1e_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_a4225b0f-c2ab-4bd7-9d1b-c8e02b870a25_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_RetirementPlanSponsorLocationDomain_4c184a6f-76fa-495f-9514-b2a6bbcf47e2_terseLabel_en-US" xlink:label="lab_us-gaap_RetirementPlanSponsorLocationDomain" xlink: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 Sponsor Location [Domain]</link:label>
    <link:label id="lab_us-gaap_RetirementPlanSponsorLocationDomain_label_en-US" xlink:label="lab_us-gaap_RetirementPlanSponsorLocationDomain" xlink: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 Sponsor Location [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanSponsorLocationDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanSponsorLocationDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetirementPlanSponsorLocationDomain" xlink:to="lab_us-gaap_RetirementPlanSponsorLocationDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseDescriptionAbstract_c602df0f-01a2-4e1b-b510-a08882ae8ac1_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseDescriptionAbstract" xlink: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 Leases</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseDescriptionAbstract_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseDescriptionAbstract" xlink: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, Description [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseDescriptionAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseDescriptionAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseDescriptionAbstract" xlink:to="lab_us-gaap_LesseeOperatingLeaseDescriptionAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_a2116f89-4f99-4346-8f97-a61311e87668_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink: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 Unrecognized Tax Benefits Roll Forward</link:label>
    <link:label id="lab_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink: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 Unrecognized Tax Benefits Roll Forward [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PayablesAndAccrualsAbstract_label_en-US" xlink:label="lab_us-gaap_PayablesAndAccrualsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payables and Accruals [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PayablesAndAccrualsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PayablesAndAccrualsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract" xlink:to="lab_us-gaap_PayablesAndAccrualsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductAndServiceOtherMember_6881f474-a2f0-45fd-9fe8-71711a7bbb65_terseLabel_en-US" xlink:label="lab_us-gaap_ProductAndServiceOtherMember" xlink: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_ProductAndServiceOtherMember_label_en-US" xlink:label="lab_us-gaap_ProductAndServiceOtherMember" xlink: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 and Service, Other [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductAndServiceOtherMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductAndServiceOtherMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductAndServiceOtherMember" xlink:to="lab_us-gaap_ProductAndServiceOtherMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RepaymentsOfLinesOfCredit_819b6dd8-0edc-4bff-b652-6442122384c1_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_RepaymentsOfLinesOfCredit" 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">Repayment on bank revolving credit facility</link:label>
    <link:label id="lab_us-gaap_RepaymentsOfLinesOfCredit_label_en-US" xlink:label="lab_us-gaap_RepaymentsOfLinesOfCredit" xlink: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 Lines of Credit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfLinesOfCredit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfLinesOfCredit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RepaymentsOfLinesOfCredit" xlink:to="lab_us-gaap_RepaymentsOfLinesOfCredit" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_WellsFargoLargeCapGrowthIndexFundMember_1b721822-c99b-4148-bb49-68c75831ac6d_terseLabel_en-US" xlink:label="lab_alg_WellsFargoLargeCapGrowthIndexFundMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo BlackRock Large Cap Growth Index Fund</link:label>
    <link:label id="lab_alg_WellsFargoLargeCapGrowthIndexFundMember_label_en-US" xlink:label="lab_alg_WellsFargoLargeCapGrowthIndexFundMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo Large Cap Growth Index Fund [Member]</link:label>
    <link:label id="lab_alg_WellsFargoLargeCapGrowthIndexFundMember_documentation_en-US" xlink:label="lab_alg_WellsFargoLargeCapGrowthIndexFundMember" 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">Wells Fargo Large Cap Growth Index Fund [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoLargeCapGrowthIndexFundMember" xlink:href="alg-20221231.xsd#alg_WellsFargoLargeCapGrowthIndexFundMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_WellsFargoLargeCapGrowthIndexFundMember" xlink:to="lab_alg_WellsFargoLargeCapGrowthIndexFundMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentLineItems_865d7b6a-0170-4662-bb72-020827e02745_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_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink: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 and Asset Acquisition [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:to="lab_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfAssumptionsUsedTableTextBlock_fb2872a3-9f8f-400f-af31-969f0e48fcf3_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAssumptionsUsedTableTextBlock" xlink: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 Assumptions Used</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAssumptionsUsedTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAssumptionsUsedTableTextBlock" xlink: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 [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAssumptionsUsedTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAssumptionsUsedTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAssumptionsUsedTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfAssumptionsUsedTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ClassOfStockLineItems_6bd8fba8-0b16-4713-b7f5-f8f99c3e0460_terseLabel_en-US" xlink:label="lab_us-gaap_ClassOfStockLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class of Stock [Line Items]</link:label>
    <link:label id="lab_us-gaap_ClassOfStockLineItems_label_en-US" xlink:label="lab_us-gaap_ClassOfStockLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class of Stock [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ClassOfStockLineItems" xlink:to="lab_us-gaap_ClassOfStockLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsOfDebtIssuanceCosts_02923a1c-a6dc-49b8-8d30-5de1f0381188_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsOfDebtIssuanceCosts" 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">Debt issuance cost</link:label>
    <link:label id="lab_us-gaap_PaymentsOfDebtIssuanceCosts_label_en-US" xlink:label="lab_us-gaap_PaymentsOfDebtIssuanceCosts" xlink: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 Debt Issuance Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDebtIssuanceCosts" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDebtIssuanceCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsOfDebtIssuanceCosts" xlink:to="lab_us-gaap_PaymentsOfDebtIssuanceCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_8a924460-b5e3-4fca-84b3-07de045354cd_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">Total lease liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_e1f26940-bd5b-464e-b2d4-0864d551fa28_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 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_us-gaap_SegmentReportingDisclosureTextBlock_b51a97bf-7257-4bfb-b122-52d5b63b071f_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">REVENUE AND SEGMENT REPORTING</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_68e9c351-89f6-464c-b051-a090e3981c22_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 Beginning of Year</link:label>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesBalance_562160e1-1119-4f7e-b0ba-0b09660f7f79_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 End of Year</link:label>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesBalance_37a1dac4-6d73-4ed3-9039-a3213e978a66_terseLabel_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesBalance" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reserves for sales discounts on products shipped under promotional programs</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_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_f557ab8b-f4f6-4a46-b628-b49a929fd841_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">Stock-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_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts_a159d3fd-e28a-402e-972a-59dcef92b93e_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts" 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">Inventory basis differences</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts" xlink: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, Inventory</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember_7ead80f7-9d84-4996-9e88-01a1e06e7d8a_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">Selling, General and Administrative expenses</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_alg_MidCapMutualFundsMember_0a5688e6-a23d-4c7a-bc77-29dc0cc2b7f7_terseLabel_en-US" xlink:label="lab_alg_MidCapMutualFundsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Mid Cap</link:label>
    <link:label id="lab_alg_MidCapMutualFundsMember_label_en-US" xlink:label="lab_alg_MidCapMutualFundsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Mid Cap Mutual Funds [Member]</link:label>
    <link:label id="lab_alg_MidCapMutualFundsMember_documentation_en-US" xlink:label="lab_alg_MidCapMutualFundsMember" 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">Mid Cap Mutual Funds</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_MidCapMutualFundsMember" xlink:href="alg-20221231.xsd#alg_MidCapMutualFundsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_MidCapMutualFundsMember" xlink:to="lab_alg_MidCapMutualFundsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_cefec75a-7288-4fab-8bf8-4b524d00b5aa_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink: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_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_country_NL_af97f0eb-14cd-4050-ba00-e3ee0fc6e14d_terseLabel_en-US" xlink:label="lab_country_NL" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Netherlands</link:label>
    <link:label id="lab_country_NL_label_en-US" xlink:label="lab_country_NL" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">NETHERLANDS</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_country_NL" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_NL"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_NL" xlink:to="lab_country_NL" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilities_8df77482-f2bd-4907-bf27-0da6de6f893d_negatedTotalLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilities" 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 deferred income taxes</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_us-gaap_LiabilitiesAndStockholdersEquityAbstract_14104e68-8b08-4de4-8236-691b6a7500ce_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_alg_FormerEmployeesCoveredByPensionPlan_cbd6e308-64dc-465e-9edc-9bbbf84f7540_terseLabel_en-US" xlink:label="lab_alg_FormerEmployeesCoveredByPensionPlan" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Former employees</link:label>
    <link:label id="lab_alg_FormerEmployeesCoveredByPensionPlan_label_en-US" xlink:label="lab_alg_FormerEmployeesCoveredByPensionPlan" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Former Employees Covered By Pension Plan</link:label>
    <link:label id="lab_alg_FormerEmployeesCoveredByPensionPlan_documentation_en-US" xlink:label="lab_alg_FormerEmployeesCoveredByPensionPlan" 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">Former Employees Covered By Pension Plan</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_FormerEmployeesCoveredByPensionPlan" xlink:href="alg-20221231.xsd#alg_FormerEmployeesCoveredByPensionPlan"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_FormerEmployeesCoveredByPensionPlan" xlink:to="lab_alg_FormerEmployeesCoveredByPensionPlan" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_0cdf994d-e808-4542-91df-313da737fb7d_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink: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, exercise price (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink: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, Grants in Period, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid_ca46c1bf-bc56-43e6-9433-5c298a21401f_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid" 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_DefinedBenefitPlanPlanAssetsBenefitsPaid_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid" xlink: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, Benefits Paid</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid" xlink:to="lab_us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquireIntangibleAssets_6df8ef17-47b0-4dcb-a289-f08569704b29_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireIntangibleAssets" 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">Purchase of patents</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireIntangibleAssets_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireIntangibleAssets" xlink: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 Intangible Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireIntangibleAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireIntangibleAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireIntangibleAssets" xlink:to="lab_us-gaap_PaymentsToAcquireIntangibleAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryNet_3f7fcba1-c09f-4bc7-9c5d-0138096564ed_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_ec075f19-2bfd-4002-9a17-e0949388540e_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">Inventory, net</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_alg_WellsFargoVoyaLargeCapGrowthCITFMember_f4b1f635-0a22-41af-b085-e88e94c6a6df_terseLabel_en-US" xlink:label="lab_alg_WellsFargoVoyaLargeCapGrowthCITFMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo Voya Large Cap Growth CIT F</link:label>
    <link:label id="lab_alg_WellsFargoVoyaLargeCapGrowthCITFMember_label_en-US" xlink:label="lab_alg_WellsFargoVoyaLargeCapGrowthCITFMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo Voya Large Cap Growth CIT F [Member]</link:label>
    <link:label id="lab_alg_WellsFargoVoyaLargeCapGrowthCITFMember_documentation_en-US" xlink:label="lab_alg_WellsFargoVoyaLargeCapGrowthCITFMember" 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">Wells Fargo Voya Large Cap Growth CIT F [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoVoyaLargeCapGrowthCITFMember" xlink:href="alg-20221231.xsd#alg_WellsFargoVoyaLargeCapGrowthCITFMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_WellsFargoVoyaLargeCapGrowthCITFMember" xlink:to="lab_alg_WellsFargoVoyaLargeCapGrowthCITFMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsPayableCurrent_ff213fc2-4115-47b0-a60d-b4f4baf67184_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">Trade 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_alg_QualifiedStockOptionsExercisePriceRangeTwoMember_955aeaab-96c5-4041-9dd7-ff38a1115a0f_terseLabel_en-US" xlink:label="lab_alg_QualifiedStockOptionsExercisePriceRangeTwoMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">$92.50 - $138.75</link:label>
    <link:label id="lab_alg_QualifiedStockOptionsExercisePriceRangeTwoMember_label_en-US" xlink:label="lab_alg_QualifiedStockOptionsExercisePriceRangeTwoMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Qualified Stock Options Exercise Price Range Two [Member]</link:label>
    <link:label id="lab_alg_QualifiedStockOptionsExercisePriceRangeTwoMember_documentation_en-US" xlink:label="lab_alg_QualifiedStockOptionsExercisePriceRangeTwoMember" 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">Qualified Stock Options Exercise Price Range Two [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_QualifiedStockOptionsExercisePriceRangeTwoMember" xlink:href="alg-20221231.xsd#alg_QualifiedStockOptionsExercisePriceRangeTwoMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_QualifiedStockOptionsExercisePriceRangeTwoMember" xlink:to="lab_alg_QualifiedStockOptionsExercisePriceRangeTwoMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityAxis_c28e839c-c805-4688-b8ad-d37125a2f914_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_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_2bbdea60-4032-4d47-a70b-e1213dad8161_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink: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_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_label_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink: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, Maturity, Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:to="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_5f47e9eb-e812-4dcd-915d-56418b6be238_negatedLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" 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:&#160; Accumulated depreciation</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" xlink: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 and Finance Lease Right-of-Use Asset, Accumulated Depreciation and Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_AuditorLocation_71ce70eb-01bd-47c6-8260-250efd5c20da_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_d1cc4f90-c940-46cb-9e1f-1140e49e3071_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_us-gaap_ProceedsFromIssuanceOfCommonStock_0ace37f8-705b-47eb-b873-fc8bb3ce3e88_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfCommonStock" xlink: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 exercise of stock options</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_c7f6fcd6-6e78-4005-b9d0-71fb1ceafd6d_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">Basic (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_98d14cfa-9e8b-41c3-8cff-64454709d99a_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">Basic (weighted-average outstanding shares) (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_us-gaap_CurrentFederalTaxExpenseBenefit_6ea1477e-115c-4121-a44d-21af50e7a687_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">Domestic</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_alg_DeferredCompensationArrangementRequisiteServicePeriod_a56b3cc0-116c-4f11-90a8-fb2324f39a68_terseLabel_en-US" xlink:label="lab_alg_DeferredCompensationArrangementRequisiteServicePeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">SERP credited service period</link:label>
    <link:label id="lab_alg_DeferredCompensationArrangementRequisiteServicePeriod_label_en-US" xlink:label="lab_alg_DeferredCompensationArrangementRequisiteServicePeriod" xlink: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 Compensation Arrangement Requisite Service Period</link:label>
    <link:label id="lab_alg_DeferredCompensationArrangementRequisiteServicePeriod_documentation_en-US" xlink:label="lab_alg_DeferredCompensationArrangementRequisiteServicePeriod" 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 Compensation Arrangement Requisite Service Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DeferredCompensationArrangementRequisiteServicePeriod" xlink:href="alg-20221231.xsd#alg_DeferredCompensationArrangementRequisiteServicePeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_DeferredCompensationArrangementRequisiteServicePeriod" xlink:to="lab_alg_DeferredCompensationArrangementRequisiteServicePeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_country_US_8cf3a821-1ec2-41ed-98c2-8472632a9334_terseLabel_en-US" xlink:label="lab_country_US" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">United States</link:label>
    <link:label id="lab_country_US_label_en-US" xlink:label="lab_country_US" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">UNITED STATES</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_country_US" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_US"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_US" xlink:to="lab_country_US" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_ProductWarrantyAccrualPeriodForSalesUsedInCalculation_2873fdcf-0793-4a9f-beed-41592a55643e_terseLabel_en-US" xlink:label="lab_alg_ProductWarrantyAccrualPeriodForSalesUsedInCalculation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product warranty accrual period for sales used in calculation</link:label>
    <link:label id="lab_alg_ProductWarrantyAccrualPeriodForSalesUsedInCalculation_label_en-US" xlink:label="lab_alg_ProductWarrantyAccrualPeriodForSalesUsedInCalculation" xlink: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 Period For Sales Used In Calculation</link:label>
    <link:label id="lab_alg_ProductWarrantyAccrualPeriodForSalesUsedInCalculation_documentation_en-US" xlink:label="lab_alg_ProductWarrantyAccrualPeriodForSalesUsedInCalculation" 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">Product Warranty Accrual Period For Sales Used In Calculation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_ProductWarrantyAccrualPeriodForSalesUsedInCalculation" xlink:href="alg-20221231.xsd#alg_ProductWarrantyAccrualPeriodForSalesUsedInCalculation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_ProductWarrantyAccrualPeriodForSalesUsedInCalculation" xlink:to="lab_alg_ProductWarrantyAccrualPeriodForSalesUsedInCalculation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpense_8467d64b-a59f-4eda-961f-52fbbf404097_terseLabel_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpense" xlink: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 option expense</link:label>
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpense_label_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpense" xlink: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</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllocatedShareBasedCompensationExpense" xlink:to="lab_us-gaap_AllocatedShareBasedCompensationExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_SecurityExchangeName_61005d73-7fa1-45a1-bfe7-606add226981_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_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward_8749825c-a292-4885-906d-1ecfbe5193d1_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward" xlink: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 fair value of plan assets&#160;&#160;</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward" xlink: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 Fair Value of Plan Assets [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward" xlink:to="lab_us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_6edb7a24-9788-44fa-b445-a9df3094a2ea_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">Outstanding at beginning of year, exercise price (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_a41cca9d-9655-46e2-be0f-7676e4e65ad7_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">Outstanding at end of year, exercise price (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_2e1c637f-319b-4e7e-bb18-3925563151d0_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding at end of year, exercise price (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_alg_TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary_756c3afe-ee5f-4c36-a4be-5b786e0b63a0_terseLabel_en-US" xlink:label="lab_alg_TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Withholding taxes</link:label>
    <link:label id="lab_alg_TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary_label_en-US" xlink:label="lab_alg_TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Tax Cuts And Jobs Act, Incomplete Accounting, Provisional Undistributed Accumulated Earnings Of Foreign Subsidiary</link:label>
    <link:label id="lab_alg_TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary_documentation_en-US" xlink:label="lab_alg_TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary" 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">Tax Cuts And Jobs Act, Incomplete Accounting, Provisional Undistributed Accumulated Earnings Of Foreign Subsidiary</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary" xlink:href="alg-20221231.xsd#alg_TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary" xlink:to="lab_alg_TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AmortizationOfDeferredCharges_b7b58552-843f-4551-8ad3-4c96fa98b28e_terseLabel_en-US" xlink:label="lab_us-gaap_AmortizationOfDeferredCharges" xlink: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 expense</link:label>
    <link:label id="lab_us-gaap_AmortizationOfDeferredCharges_label_en-US" xlink:label="lab_us-gaap_AmortizationOfDeferredCharges" xlink: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 Deferred Charges</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfDeferredCharges" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfDeferredCharges"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfDeferredCharges" xlink:to="lab_us-gaap_AmortizationOfDeferredCharges" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestrictedStockMember_e8871c47-8dbe-42a9-a576-f5f094e255b0_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">Restricted 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_us-gaap_PropertyPlantAndEquipmentLineItems_b0419d18-8b52-4ec6-a2b4-5494e2949f50_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentLineItems" xlink: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 [Line Items]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentLineItems_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentLineItems" xlink: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 [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_96e8bc2d-898e-412d-9dab-ead7584cc6f0_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink: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 net sales</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_16e84fa4-7223-4099-a33a-9436c05dab56_verboseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" 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 Revenue</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink: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, Excluding Assessed Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityWellKnownSeasonedIssuer_e9c4d879-bdef-4073-8117-6386a29acbf7_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_DefinedBenefitPlanServiceCost_7f6f4ea9-a56e-44a4-a33a-facfbbdd6ec1_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_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_55c3e9b8-fc5e-4ddf-a2b3-7a2f644b8c5b_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_d012f74f-e74e-4e9d-b48a-e1f5b73ea85e_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_aded15c6-91f4-4e50-b438-3ca54c5c5084_verboseLabel_en-US" xlink:label="lab_us-gaap_LesseeLeasesPolicyTextBlock" 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">Rental Equipment</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_us-gaap_FairValueInputsLevel3Member_d5004e95-5cc6-459d-a297-2b72031e296a_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel3Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">&#160; Significant Unobservable Inputs (Level 3)</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel3Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel3Member" xlink: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, Inputs, Level 3 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel3Member" xlink:to="lab_us-gaap_FairValueInputsLevel3Member" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityVoluntaryFilers_9ab27866-0751-450e-b608-726eb315e43a_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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_1d23482a-7acf-4381-a7a8-3d0156d93bde_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" xlink: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, exercise price range (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" xlink: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, Shares Exercisable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" xlink:to="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_InventoryReservePercentage_ac3fd6b7-b797-4251-a6ba-568e24fa768e_terseLabel_en-US" xlink:label="lab_alg_InventoryReservePercentage" xlink: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 reserve percentage</link:label>
    <link:label id="lab_alg_InventoryReservePercentage_label_en-US" xlink:label="lab_alg_InventoryReservePercentage" xlink: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 Reserve Percentage</link:label>
    <link:label id="lab_alg_InventoryReservePercentage_documentation_en-US" xlink:label="lab_alg_InventoryReservePercentage" 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 Reserve Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_InventoryReservePercentage" xlink:href="alg-20221231.xsd#alg_InventoryReservePercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_InventoryReservePercentage" xlink:to="lab_alg_InventoryReservePercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_6ed23825-1ddb-428f-ae10-535dd88da131_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">STOCK OPTIONS</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_alg_WellsFargoInternationalEquityIndexFundMember_404a440b-74fc-45c3-ab97-d87a9168cd7d_terseLabel_en-US" xlink:label="lab_alg_WellsFargoInternationalEquityIndexFundMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo BlackRock International Equity</link:label>
    <link:label id="lab_alg_WellsFargoInternationalEquityIndexFundMember_label_en-US" xlink:label="lab_alg_WellsFargoInternationalEquityIndexFundMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo International Equity Index Fund [Member]</link:label>
    <link:label id="lab_alg_WellsFargoInternationalEquityIndexFundMember_documentation_en-US" xlink:label="lab_alg_WellsFargoInternationalEquityIndexFundMember" 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">Wells Fargo International Equity Index Fund [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoInternationalEquityIndexFundMember" xlink:href="alg-20221231.xsd#alg_WellsFargoInternationalEquityIndexFundMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_WellsFargoInternationalEquityIndexFundMember" xlink:to="lab_alg_WellsFargoInternationalEquityIndexFundMember" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_2ccc5395-e989-4510-b7a3-b8e1ac0531c9_terseLabel_en-US" xlink:label="lab_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems" xlink: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 Indefinite-lived and Finite Intangible Assets by Major Class [Line Items]</link:label>
    <link:label id="lab_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_label_en-US" xlink:label="lab_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems" xlink: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 Indefinite-lived and Finite Intangible Assets by Major Class [Line Items]</link:label>
    <link:label id="lab_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_documentation_en-US" xlink:label="lab_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems" 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">[Line Items] for Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems" xlink:href="alg-20221231.xsd#alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems" xlink:to="lab_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract_d6aa3a13-b14e-4cdb-9711-a4a190e44b78_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract" xlink: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 (reduction) from:</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract" xlink: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 Reconciling Items, Amount [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract" xlink:to="lab_us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryWorkInProcessNetOfReserves_33ed7a9d-9d3c-4712-8c0f-dbd17b8cd820_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryWorkInProcessNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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_InventoryWorkInProcessNetOfReserves_label_en-US" xlink:label="lab_us-gaap_InventoryWorkInProcessNetOfReserves" xlink: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, Net of Reserves</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWorkInProcessNetOfReserves" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryWorkInProcessNetOfReserves"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryWorkInProcessNetOfReserves" xlink:to="lab_us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="arc" order="1"/>
    <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_5160468d-2f59-42c3-b71c-73512bf91baf_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">Change in projected benefit obligation&#160;</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_alg_DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans_4d8a7314-5979-4112-83fc-0ecae68bc45f_terseLabel_en-US" xlink:label="lab_alg_DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans" xlink: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 non-contributory defined benefit pension plans</link:label>
    <link:label id="lab_alg_DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans_label_en-US" xlink:label="lab_alg_DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans" xlink: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, Number Of Defined Benefit Pension Plans</link:label>
    <link:label id="lab_alg_DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans_documentation_en-US" xlink:label="lab_alg_DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans" 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, Number Of Defined Benefit Pension Plans</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans" xlink:href="alg-20221231.xsd#alg_DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans" xlink:to="lab_alg_DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ScenarioForecastMember_ae7aa64f-b5a6-4d9a-9775-15d7c9bdece7_terseLabel_en-US" xlink:label="lab_srt_ScenarioForecastMember" xlink: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</link:label>
    <link:label id="lab_srt_ScenarioForecastMember_label_en-US" xlink:label="lab_srt_ScenarioForecastMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Forecast [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioForecastMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioForecastMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ScenarioForecastMember" xlink:to="lab_srt_ScenarioForecastMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis_264126c3-9d16-45d3-8ccb-1794083b5ecc_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink: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, Plan Assets, Category [Axis]</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink: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, Category [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="lab_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_17577538-1cbf-4890-967f-529bfbf4fe04_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Risk-free interest rate</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink: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, Fair Value Assumptions, Risk Free Interest Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentsIncorporatedByReferenceTextBlock_bd824954-d3fa-4636-9eaa-a0319ae1de6b_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_10d71636-b2bc-44dd-ae5c-adbfc3a89fbc_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_DefinedBenefitPlanAmortizationOfGainsLosses_2596e13d-275e-4f39-a07a-5ff168e9b109_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">Amortization of net (gain)/loss</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_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate_aae63767-a07c-4d22-a644-cb4c852a1473_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_RetirementPlanNameAxis_8a101ded-7b9d-4a6b-b6e4-3a684e8b2a41_terseLabel_en-US" xlink:label="lab_us-gaap_RetirementPlanNameAxis" xlink: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 Name [Axis]</link:label>
    <link:label id="lab_us-gaap_RetirementPlanNameAxis_label_en-US" xlink:label="lab_us-gaap_RetirementPlanNameAxis" xlink: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 Name [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanNameAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanNameAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetirementPlanNameAxis" xlink:to="lab_us-gaap_RetirementPlanNameAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_3e1f906f-474f-426f-b937-de74e93bada9_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 stockholders&#8217; 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_7d1fdd6b-91a8-4db7-9004-4246cddee9d9_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">Schedule of Deferred Tax Assets and Liabilities</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_us-gaap_AmortizationOfFinancingCosts_4c74dc46-2077-403a-bbf5-78f151700b6a_terseLabel_en-US" xlink:label="lab_us-gaap_AmortizationOfFinancingCosts" xlink: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 debt issuance</link:label>
    <link:label id="lab_us-gaap_AmortizationOfFinancingCosts_label_en-US" xlink:label="lab_us-gaap_AmortizationOfFinancingCosts" xlink: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</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfFinancingCosts" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfFinancingCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfFinancingCosts" xlink:to="lab_us-gaap_AmortizationOfFinancingCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongtermDebtTypeAxis_31e3b003-2cae-417c-addb-11e45b52f91c_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_6c959ac8-6fe6-476e-97b1-dacd95ca22a0_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_LandMember_ca6bcb7c-8f29-407a-8c12-a40133bed146_terseLabel_en-US" xlink:label="lab_us-gaap_LandMember" xlink: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</link:label>
    <link:label id="lab_us-gaap_LandMember_label_en-US" xlink:label="lab_us-gaap_LandMember" xlink: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 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LandMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LandMember" xlink:to="lab_us-gaap_LandMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NonUsMember_c3c7b6f7-a78c-42ed-8a93-40cba1353344_terseLabel_en-US" xlink:label="lab_us-gaap_NonUsMember" xlink: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-US</link:label>
    <link:label id="lab_us-gaap_NonUsMember_label_en-US" xlink:label="lab_us-gaap_NonUsMember" xlink: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-US [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NonUsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonUsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NonUsMember" xlink:to="lab_us-gaap_NonUsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StandardProductWarrantyPolicy_11d8ee3d-90e2-4958-9987-3d2bc04a7104_terseLabel_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Warranty</link:label>
    <link:label id="lab_us-gaap_StandardProductWarrantyPolicy_label_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Standard Product Warranty, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandardProductWarrantyPolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StandardProductWarrantyPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StandardProductWarrantyPolicy" xlink:to="lab_us-gaap_StandardProductWarrantyPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesTypeAxis_dd1d1b7b-b5ef-4e50-890b-3fa6994ed429_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_ff599836-7200-4865-b759-76dd7bc622cf_totalLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsGross" 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 income 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_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_42af145b-6600-4906-9fec-412f798abac4_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">Schedule of Income before Income Tax, Domestic and Foreign</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_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_40a735d2-6711-4820-bf44-9fb0c77a44ea_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">AOCI Attributable to Parent, Net of Tax [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_ec502eee-b2e7-4772-8761-ea6421287c71_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" 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">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_us-gaap_FairValueInputsLevel2Member_9e2d2f33-c140-4204-a7f3-5fd01dd7758e_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel2Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">&#160; Significant Other Observable Inputs (Level 2)</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel2Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel2Member" xlink: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, Inputs, Level 2 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel2Member" xlink:to="lab_us-gaap_FairValueInputsLevel2Member" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_QualifiedStockOptionsExercisePriceRangeOneMember_d6f36088-73f0-4236-8a75-b2ca7ed414bb_terseLabel_en-US" xlink:label="lab_alg_QualifiedStockOptionsExercisePriceRangeOneMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">$42.70 - $83.99</link:label>
    <link:label id="lab_alg_QualifiedStockOptionsExercisePriceRangeOneMember_label_en-US" xlink:label="lab_alg_QualifiedStockOptionsExercisePriceRangeOneMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Qualified Stock Options Exercise Price Range One [Member]</link:label>
    <link:label id="lab_alg_QualifiedStockOptionsExercisePriceRangeOneMember_documentation_en-US" xlink:label="lab_alg_QualifiedStockOptionsExercisePriceRangeOneMember" 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">Qualified Stock Options Exercise Price Range One [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_QualifiedStockOptionsExercisePriceRangeOneMember" xlink:href="alg-20221231.xsd#alg_QualifiedStockOptionsExercisePriceRangeOneMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_QualifiedStockOptionsExercisePriceRangeOneMember" xlink:to="lab_alg_QualifiedStockOptionsExercisePriceRangeOneMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock_5a72c62a-7dce-4f8e-976b-eacff97bebfd_terseLabel_en-US" xlink:label="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock" xlink: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 International Operations</link:label>
    <link:label id="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock_label_en-US" xlink:label="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock" xlink: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 Operating Profit (Loss) from Segments to Consolidated [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock" xlink:to="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CurrentFiscalYearEndDate_805e0e8f-e6ee-42e7-a7da-9a9849b54be2_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_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_7316c032-8168-41b5-9519-bbff448cf752_terseLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink: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 penalties and interest cacrued</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink: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 Accrued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_b0293f91-b40a-4a7a-be1f-61b0c534238e_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 LIABILITIES</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_dbe710b7-abce-4054-8acf-6a7054a8a1e1_negatedLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" 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 imputed interest</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_us-gaap_VestingAxis_f08fbe84-e727-4a0d-91d1-e8b031ea3c3e_terseLabel_en-US" xlink:label="lab_us-gaap_VestingAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vesting [Axis]</link:label>
    <link:label id="lab_us-gaap_VestingAxis_label_en-US" xlink:label="lab_us-gaap_VestingAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vesting [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VestingAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VestingAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VestingAxis" xlink:to="lab_us-gaap_VestingAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_38a469c7-2bc3-44c6-887e-52c1516461c4_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Diluted (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_07fd0783-a6df-47d5-9152-9211fe3fd3d2_verboseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted" 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">Diluted earnings per share (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_IntangibleAssetsNetExcludingGoodwill_001d311a-04de-4b50-b0db-65f896e98f80_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">Intangible assets, net</link:label>
    <link:label id="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill_82c6de1f-5bcc-4bda-ac1b-fac80a85061b_totalLabel_en-US" xlink:label="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill" 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 Intangible Assets</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_ShareBasedCompensationAwardTrancheTwoMember_de819596-bf47-4559-af4d-57cd17f28221_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationAwardTrancheTwoMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Year Two after Grant Date</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationAwardTrancheTwoMember_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationAwardTrancheTwoMember" xlink: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, Tranche Two [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAwardTrancheTwoMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAwardTrancheTwoMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationAwardTrancheTwoMember" xlink:to="lab_us-gaap_ShareBasedCompensationAwardTrancheTwoMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_3fdd3ef5-a60f-4195-a83e-db97250e4dd8_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink: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 sale of property, plant and equipment</link:label>
    <link:label id="lab_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink: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 Sale of Property, Plant, and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:to="lab_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TrademarksAndTradeNamesMember_1d8afa5d-a218-41b2-8a47-daad0510e7bc_terseLabel_en-US" xlink:label="lab_us-gaap_TrademarksAndTradeNamesMember" xlink: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 names and trademarks</link:label>
    <link:label id="lab_us-gaap_TrademarksAndTradeNamesMember_label_en-US" xlink:label="lab_us-gaap_TrademarksAndTradeNamesMember" xlink: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 and Trade Names [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksAndTradeNamesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksAndTradeNamesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TrademarksAndTradeNamesMember" xlink:to="lab_us-gaap_TrademarksAndTradeNamesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_7ffd2bda-26a2-4661-bbdf-035aafa8b8f7_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">Award vesting period (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_GainLossOnSaleOfPropertyPlantEquipment_e034a06c-837a-4cc1-bd0f-e797dfd7d2e2_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" 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">Gain on sale of property, plant and equipment</link:label>
    <link:label id="lab_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_label_en-US" xlink:label="lab_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink: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 Property Plant Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:to="lab_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_SharebasedCompensationAwardTrancheFourMember_0c6529e6-7ec0-4152-ba83-9a991964a0e4_terseLabel_en-US" xlink:label="lab_alg_SharebasedCompensationAwardTrancheFourMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Year Four after Grant Date</link:label>
    <link:label id="lab_alg_SharebasedCompensationAwardTrancheFourMember_label_en-US" xlink:label="lab_alg_SharebasedCompensationAwardTrancheFourMember" xlink: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 Award, Tranche Four [Member]</link:label>
    <link:label id="lab_alg_SharebasedCompensationAwardTrancheFourMember_documentation_en-US" xlink:label="lab_alg_SharebasedCompensationAwardTrancheFourMember" 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 Award, Tranche Four [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_SharebasedCompensationAwardTrancheFourMember" xlink:href="alg-20221231.xsd#alg_SharebasedCompensationAwardTrancheFourMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_SharebasedCompensationAwardTrancheFourMember" xlink:to="lab_alg_SharebasedCompensationAwardTrancheFourMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_163bc6ef-f5b2-4740-a170-e19604d80b14_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-based 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_fc263d59-cf62-4cdf-bb8f-dee74d13dd17_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" 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 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_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_a8a5ebda-fff1-4052-9252-e100d25c65e4_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">Share-based Compensation, Shares Authorized under Stock Option Plans, 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_LiabilitiesCurrent_70ca9df2-e3d1-4507-bf24-3c216323117b_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_us-gaap_DividendsCash_6aa0196f-73b3-4f81-830a-e9e141444aa2_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DividendsCash" 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">Dividends paid</link:label>
    <link:label id="lab_us-gaap_DividendsCash_label_en-US" xlink:label="lab_us-gaap_DividendsCash" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends, Cash</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsCash" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsCash"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DividendsCash" xlink:to="lab_us-gaap_DividendsCash" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_619809ff-24e5-4076-a664-6b2de3918819_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_alg_IndustrialManagementMember_90c1bfa4-f68e-4a96-b85a-3032226d0d6f_terseLabel_en-US" xlink:label="lab_alg_IndustrialManagementMember" xlink: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 Equipment</link:label>
    <link:label id="lab_alg_IndustrialManagementMember_label_en-US" xlink:label="lab_alg_IndustrialManagementMember" xlink: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 Management [Member]</link:label>
    <link:label id="lab_alg_IndustrialManagementMember_documentation_en-US" xlink:label="lab_alg_IndustrialManagementMember" 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 Management [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_IndustrialManagementMember" xlink:href="alg-20221231.xsd#alg_IndustrialManagementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_IndustrialManagementMember" xlink:to="lab_alg_IndustrialManagementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_GradallMember_325dfe7a-1931-4e72-a331-4690c72837f4_terseLabel_en-US" xlink:label="lab_alg_GradallMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gradall</link:label>
    <link:label id="lab_alg_GradallMember_label_en-US" xlink:label="lab_alg_GradallMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gradall [Member]</link:label>
    <link:label id="lab_alg_GradallMember_documentation_en-US" xlink:label="lab_alg_GradallMember" 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">Gradall [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_GradallMember" xlink:href="alg-20221231.xsd#alg_GradallMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_GradallMember" xlink:to="lab_alg_GradallMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IntellectualPropertyMember_e80da2fe-9058-47a0-a256-259a5e7872ae_terseLabel_en-US" xlink:label="lab_us-gaap_IntellectualPropertyMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Patents and developed technologies</link:label>
    <link:label id="lab_us-gaap_IntellectualPropertyMember_label_en-US" xlink:label="lab_us-gaap_IntellectualPropertyMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intellectual Property [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntellectualPropertyMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntellectualPropertyMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IntellectualPropertyMember" xlink:to="lab_us-gaap_IntellectualPropertyMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedIncomeTaxesNoncurrent_e2cc920f-25c2-4628-a58c-13a4cabd07e4_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedIncomeTaxesNoncurrent" xlink: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 tax liability</link:label>
    <link:label id="lab_us-gaap_AccruedIncomeTaxesNoncurrent_label_en-US" xlink:label="lab_us-gaap_AccruedIncomeTaxesNoncurrent" xlink: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, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedIncomeTaxesNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedIncomeTaxesNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedIncomeTaxesNoncurrent" xlink:to="lab_us-gaap_AccruedIncomeTaxesNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefits_cd370292-1eea-40cd-862e-12096734c122_periodStartLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefits" 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 beginning of year</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefits_dc4d4863-ace9-4694-8a2d-7ea6f932004c_periodEndLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefits" 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 end of year</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefits_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefits" xlink: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</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefits" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefits"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefits" xlink:to="lab_us-gaap_UnrecognizedTaxBenefits" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsNet_84c2f6fe-5206-4876-9ed3-71c5e129925a_totalLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsNet" 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 income tax assets</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_2a3909ee-4046-4d67-a67c-751ac7592ca1_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" 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">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_alg_IncentiveStockOption2015PlanMember_ed266804-4591-4c88-ab31-4d1775760901_terseLabel_en-US" xlink:label="lab_alg_IncentiveStockOption2015PlanMember" xlink: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 ISO Plan</link:label>
    <link:label id="lab_alg_IncentiveStockOption2015PlanMember_label_en-US" xlink:label="lab_alg_IncentiveStockOption2015PlanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Incentive Stock Option 2015 Plan [Member]</link:label>
    <link:label id="lab_alg_IncentiveStockOption2015PlanMember_documentation_en-US" xlink:label="lab_alg_IncentiveStockOption2015PlanMember" 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">Incentive Stock Option 2015 Plan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_IncentiveStockOption2015PlanMember" xlink:href="alg-20221231.xsd#alg_IncentiveStockOption2015PlanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_IncentiveStockOption2015PlanMember" xlink:to="lab_alg_IncentiveStockOption2015PlanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_4f86b5a3-3bf1-4dc5-a02f-623d75fd5b36_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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_386f73d5-4d54-48b2-8a5a-7d745eb4195b_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Option term (years)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink: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, Expiration Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate_c9fe6ccf-1506-47be-a8f2-9a92c76e769d_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate" xlink: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_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate" xlink: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 Net Periodic Benefit Cost, Discount Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate" xlink:to="lab_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_LesseeOperatingLeaseLeaseNotYetCommencedAmount_502ccd95-627e-4f33-beb1-f25bc4b9bc76_terseLabel_en-US" xlink:label="lab_alg_LesseeOperatingLeaseLeaseNotYetCommencedAmount" xlink: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 operating lease not yet commenced</link:label>
    <link:label id="lab_alg_LesseeOperatingLeaseLeaseNotYetCommencedAmount_label_en-US" xlink:label="lab_alg_LesseeOperatingLeaseLeaseNotYetCommencedAmount" xlink: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, Lease Not Yet Commenced, Amount</link:label>
    <link:label id="lab_alg_LesseeOperatingLeaseLeaseNotYetCommencedAmount_documentation_en-US" xlink:label="lab_alg_LesseeOperatingLeaseLeaseNotYetCommencedAmount" 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">Lessee, Operating Lease, Lease Not Yet Commenced, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_LesseeOperatingLeaseLeaseNotYetCommencedAmount" xlink:href="alg-20221231.xsd#alg_LesseeOperatingLeaseLeaseNotYetCommencedAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_LesseeOperatingLeaseLeaseNotYetCommencedAmount" xlink:to="lab_alg_LesseeOperatingLeaseLeaseNotYetCommencedAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_SECSchedule1209SalesDiscountsMember_97aebd4e-4f06-45bc-9e17-daf45eb84ec8_terseLabel_en-US" xlink:label="lab_alg_SECSchedule1209SalesDiscountsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reserve for sales discounts</link:label>
    <link:label id="lab_alg_SECSchedule1209SalesDiscountsMember_label_en-US" xlink:label="lab_alg_SECSchedule1209SalesDiscountsMember" xlink: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, Sales Discounts [Member]</link:label>
    <link:label id="lab_alg_SECSchedule1209SalesDiscountsMember_documentation_en-US" xlink:label="lab_alg_SECSchedule1209SalesDiscountsMember" 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">SEC Schedule, 12-09, Sales Discounts [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_SECSchedule1209SalesDiscountsMember" xlink:href="alg-20221231.xsd#alg_SECSchedule1209SalesDiscountsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_SECSchedule1209SalesDiscountsMember" xlink:to="lab_alg_SECSchedule1209SalesDiscountsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_73bc4262-8a30-43f6-867d-484ceeb6abb6_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">Operating Lease 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_us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable_d62715e2-2b62-4e76-a90d-cd51b667de49_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" xlink: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 payable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" xlink: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 Income Taxes Payable, Net of Income Taxes Receivable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" xlink:to="lab_us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_0b1bb23b-7436-430d-9cca-d675009cf425_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">Range of exercise price, lower range limit (in dollars per share)</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_a5507598-a634-4b92-bcbb-57ece67e9b54_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_IncomeTaxAuthorityDomain_9c3d7b73-c982-4cde-900c-c519e905ecf6_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_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_ce3de6f6-d842-4a70-a9c4-990eebdeb958_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">Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by 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_srt_ProductOrServiceAxis_122f54b5-e20c-45fe-98c8-76ce86f29b63_terseLabel_en-US" xlink:label="lab_srt_ProductOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Axis]</link:label>
    <link:label id="lab_srt_ProductOrServiceAxis_label_en-US" xlink:label="lab_srt_ProductOrServiceAxis" xlink: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 and Service [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductOrServiceAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductOrServiceAxis" xlink:to="lab_srt_ProductOrServiceAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets_51e59a35-d919-4d3b-a961-3aa17819464c_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets" 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">Expected return on plan assets</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets" xlink: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 Return (Loss) on Plan Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets" xlink:to="lab_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption_d2af39fa-75d3-4fd2-adf2-88c34a894100_terseLabel_en-US" xlink:label="lab_alg_PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Percentage of final 3 year average salary in which retirement benefit is based (percentage)</link:label>
    <link:label id="lab_alg_PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption_label_en-US" xlink:label="lab_alg_PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Percentage Of Final Three Years Average Salary Retirement Benefit Assumption</link:label>
    <link:label id="lab_alg_PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption_documentation_en-US" xlink:label="lab_alg_PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption" 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">Percentage Of Final Three Years Average Salary Retirement Benefit Assumption</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption" xlink:href="alg-20221231.xsd#alg_PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption" xlink:to="lab_alg_PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption" xlink:type="arc" order="1"/>
    <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_ebc6a6d7-b47f-441e-aa3c-1e7c966dadd6_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">Available borrowings</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_InterestExpense_78c8f520-b799-4f9f-bcd6-f99fd90e9437_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_InterestExpense" 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</link:label>
    <link:label id="lab_us-gaap_InterestExpense_label_en-US" xlink:label="lab_us-gaap_InterestExpense" xlink: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 Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestExpense" xlink:to="lab_us-gaap_InterestExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TradeNamesMember_4cdcb1a7-ee84-4a05-87be-535f68f48fab_terseLabel_en-US" xlink:label="lab_us-gaap_TradeNamesMember" xlink: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 Names</link:label>
    <link:label id="lab_us-gaap_TradeNamesMember_label_en-US" xlink:label="lab_us-gaap_TradeNamesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trade Names [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradeNamesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradeNamesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TradeNamesMember" xlink:to="lab_us-gaap_TradeNamesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_ScheduleOfValuationAndQualifyingAccountsTableTextBlock_34665c9d-a8b1-40b7-bbc0-7242191b49f2_terseLabel_en-US" xlink:label="lab_alg_ScheduleOfValuationAndQualifyingAccountsTableTextBlock" xlink: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 Valuation and Qualifying Accounts</link:label>
    <link:label id="lab_alg_ScheduleOfValuationAndQualifyingAccountsTableTextBlock_label_en-US" xlink:label="lab_alg_ScheduleOfValuationAndQualifyingAccountsTableTextBlock" xlink: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 Valuation And Qualifying Accounts [Table Text Block]</link:label>
    <link:label id="lab_alg_ScheduleOfValuationAndQualifyingAccountsTableTextBlock_documentation_en-US" xlink:label="lab_alg_ScheduleOfValuationAndQualifyingAccountsTableTextBlock" 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 Valuation And Qualifying Accounts [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_ScheduleOfValuationAndQualifyingAccountsTableTextBlock" xlink:href="alg-20221231.xsd#alg_ScheduleOfValuationAndQualifyingAccountsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_ScheduleOfValuationAndQualifyingAccountsTableTextBlock" xlink:to="lab_alg_ScheduleOfValuationAndQualifyingAccountsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CreditFacilityAxis_11e38f4c-6247-4740-9223-ce73c93f14c3_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_alg_DeferredTaxLiabilitiesLeaseAsset_2f6c0e67-0fdb-4efc-ac8e-7474179f4937_negatedTerseLabel_en-US" xlink:label="lab_alg_DeferredTaxLiabilitiesLeaseAsset" 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">Lease asset</link:label>
    <link:label id="lab_alg_DeferredTaxLiabilitiesLeaseAsset_label_en-US" xlink:label="lab_alg_DeferredTaxLiabilitiesLeaseAsset" xlink: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, Lease Asset</link:label>
    <link:label id="lab_alg_DeferredTaxLiabilitiesLeaseAsset_documentation_en-US" xlink:label="lab_alg_DeferredTaxLiabilitiesLeaseAsset" 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 Liabilities, Lease Asset</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DeferredTaxLiabilitiesLeaseAsset" xlink:href="alg-20221231.xsd#alg_DeferredTaxLiabilitiesLeaseAsset"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_DeferredTaxLiabilitiesLeaseAsset" xlink:to="lab_alg_DeferredTaxLiabilitiesLeaseAsset" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetirementPlanTypeAxis_1ca47750-fe3d-47eb-a9dd-d06acdaedac2_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_alg_TwoZeroZeroNineEquityIncentivePlanMember_e33347aa-3681-498b-af98-67daea486559_terseLabel_en-US" xlink:label="lab_alg_TwoZeroZeroNineEquityIncentivePlanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2009 Equity Incentive Plan</link:label>
    <link:label id="lab_alg_TwoZeroZeroNineEquityIncentivePlanMember_label_en-US" xlink:label="lab_alg_TwoZeroZeroNineEquityIncentivePlanMember" xlink: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 Zero Zero Nine Equity Incentive Plan [Member]</link:label>
    <link:label id="lab_alg_TwoZeroZeroNineEquityIncentivePlanMember_documentation_en-US" xlink:label="lab_alg_TwoZeroZeroNineEquityIncentivePlanMember" 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 Zero Zero Nine Equity Incentive Plan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_TwoZeroZeroNineEquityIncentivePlanMember" xlink:href="alg-20221231.xsd#alg_TwoZeroZeroNineEquityIncentivePlanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_TwoZeroZeroNineEquityIncentivePlanMember" xlink:to="lab_alg_TwoZeroZeroNineEquityIncentivePlanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtAndCapitalLeaseObligations_47abfc19-d7ce-4032-90c3-2f021bc3f65d_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink: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 and finance lease obligations, net of current maturities</link:label>
    <link:label id="lab_us-gaap_LongTermDebtAndCapitalLeaseObligations_ba08210c-206d-4805-9fb0-741bd666a93e_verboseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtAndCapitalLeaseObligations" 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">Total long-term debt</link:label>
    <link:label id="lab_us-gaap_LongTermDebtAndCapitalLeaseObligations_label_en-US" xlink:label="lab_us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink: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 and Lease Obligation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:to="lab_us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_538d3d7d-70c1-43c3-b024-b5a625601d9b_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink: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 Accrued Liabilities</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_86a3129d-6746-4b32-86a3-f8315024b26e_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryValuationReserves" xlink: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 obsolescence reserves</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_3285de18-e1da-41f0-b43a-f7a78709b6cf_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_DefinedContributionPlanEmployerDiscretionaryContributionAmount_83fbd6d5-9af6-4a7e-8a02-a234791084c8_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink: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 contribution amount</link:label>
    <link:label id="lab_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount_label_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink: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 Contribution Plan, Employer Discretionary Contribution Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink:to="lab_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfDebtInstrumentsTextBlock_682e7c70-8162-4ec4-a160-2bfe7f43ac97_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink: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 Long-Term Debt</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDebtInstrumentsTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink: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 Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDebtInstrumentsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:to="lab_us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityAbstract_label_en-US" xlink:label="lab_us-gaap_EquityAbstract" xlink: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 [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityAbstract" xlink:to="lab_us-gaap_EquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_WellsFargoMFSValueCITFMember_7525be1d-b4c0-44b9-9015-bb57c70ff158_terseLabel_en-US" xlink:label="lab_alg_WellsFargoMFSValueCITFMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo/MFS Value CIT F</link:label>
    <link:label id="lab_alg_WellsFargoMFSValueCITFMember_label_en-US" xlink:label="lab_alg_WellsFargoMFSValueCITFMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wells Fargo MFS Value CIT F [Member]</link:label>
    <link:label id="lab_alg_WellsFargoMFSValueCITFMember_documentation_en-US" xlink:label="lab_alg_WellsFargoMFSValueCITFMember" 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">Wells Fargo MFS Value CIT F [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoMFSValueCITFMember" xlink:href="alg-20221231.xsd#alg_WellsFargoMFSValueCITFMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_WellsFargoMFSValueCITFMember" xlink:to="lab_alg_WellsFargoMFSValueCITFMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MachineryAndEquipmentMember_cecb8330-468f-46bd-b567-547577e39950_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_b35ab852-32a5-4e2e-b028-17c3b345b192_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue" xlink: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 dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue" xlink: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, Intrinsic Value, Amount Per Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_653d4f8c-f398-4986-a5ce-0a7b5c3fe065_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" 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">Exercised (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_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_deaecb03-6e1b-4ca4-a1a6-d07f18ec9ab7_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_DefinedBenefitPlanFundedStatusOfPlan_b63bd587-0037-4b31-9876-236d75406b3b_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">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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_f739f5aa-eaa4-4d36-95e0-ce22e0c3e2d1_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">Shares of common stock reserved for options to be issued (in shares)</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_alg_SharebasedCompensationAwardTrancheFiveMember_fe0d8f30-72ce-4c2a-b8d2-274e08f10acf_terseLabel_en-US" xlink:label="lab_alg_SharebasedCompensationAwardTrancheFiveMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Year Five after Grant Date</link:label>
    <link:label id="lab_alg_SharebasedCompensationAwardTrancheFiveMember_label_en-US" xlink:label="lab_alg_SharebasedCompensationAwardTrancheFiveMember" xlink: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 Award, Tranche Five [Member]</link:label>
    <link:label id="lab_alg_SharebasedCompensationAwardTrancheFiveMember_documentation_en-US" xlink:label="lab_alg_SharebasedCompensationAwardTrancheFiveMember" 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 Award, Tranche Five [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_SharebasedCompensationAwardTrancheFiveMember" xlink:href="alg-20221231.xsd#alg_SharebasedCompensationAwardTrancheFiveMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_SharebasedCompensationAwardTrancheFiveMember" xlink:to="lab_alg_SharebasedCompensationAwardTrancheFiveMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdvertisingExpense_4b737754-a8b5-4792-93de-dcf60d130652_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 expense</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_OffMarketFavorableLeaseMember_ac5086e8-f262-4392-a6ff-da6d0ac5b201_terseLabel_en-US" xlink:label="lab_us-gaap_OffMarketFavorableLeaseMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Favorable leasehold interests</link:label>
    <link:label id="lab_us-gaap_OffMarketFavorableLeaseMember_label_en-US" xlink:label="lab_us-gaap_OffMarketFavorableLeaseMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Off-Market Favorable Lease [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OffMarketFavorableLeaseMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OffMarketFavorableLeaseMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OffMarketFavorableLeaseMember" xlink:to="lab_us-gaap_OffMarketFavorableLeaseMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_05e39a43-f0bd-4030-93f0-887e37951710_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_1b9519d2-3a67-4359-85d5-64401d93879e_negatedTotalLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilities" 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">Total deferred income 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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_b0dbed04-ce2a-45f5-b3a5-5d2a9d138dd5_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" 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">Outstanding at beginning of year (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_2f1449a3-05ec-42ba-b3bc-70148dedeab1_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" 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">Outstanding at end of year (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" xlink: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 Instrument Other than Option, Nonvested, Intrinsic Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TransportationEquipmentMember_0d18ac12-f988-4b96-b95f-010608367aea_terseLabel_en-US" xlink:label="lab_us-gaap_TransportationEquipmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Transportation equipment</link:label>
    <link:label id="lab_us-gaap_TransportationEquipmentMember_label_en-US" xlink:label="lab_us-gaap_TransportationEquipmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Transportation Equipment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransportationEquipmentMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TransportationEquipmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TransportationEquipmentMember" xlink:to="lab_us-gaap_TransportationEquipmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_ada979ca-0db7-407e-a60d-3df11b7f89b8_verboseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" 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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" xlink: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 and Finance Lease Right-of-Use Asset, before Accumulated Depreciation and Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesAdjustments_b30699b0-97d0-4ab5-aa6f-080c1e5041d5_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">&#160;Translations, Reclassifications and Acquisitions</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_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_5dd04b17-081b-4419-beec-ac811206aa88_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">Schedule of Effective Income Tax Rate Reconciliation</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_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_a6579d40-d260-4bb4-a8d8-5d2702988a45_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 change 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_446b7639-12e0-4efa-815a-ef00d79bc5ab_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">U.S. state taxes</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_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_d2e70cca-e1c0-4364-83fc-247c5ba04b7f_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dilutive potential common shares from stock options (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink: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, Adjustment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:to="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock_2bbbc6fb-af1b-4cf4-a5c7-1a83b192e18c_terseLabel_en-US" xlink:label="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock" xlink: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_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock" xlink: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, Including Intangible Assets, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock" xlink:to="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_1163bdc3-57ab-4395-ae42-5df42c77df1b_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Rental equipment and Property, plant and equipment</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment" xlink: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, Property, Plant and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment" xlink:to="lab_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_474218f2-5c47-43a0-84fb-a7c232711b91_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink: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_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_8d444fb9-d53f-40f7-8e1a-4fc19a350b37_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_InvestmentIncomeInterest_675c08f6-a77e-4685-a6d0-44353cf61d99_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentIncomeInterest" xlink: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_InvestmentIncomeInterest_label_en-US" xlink:label="lab_us-gaap_InvestmentIncomeInterest" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Investment Income, Interest</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentIncomeInterest" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InvestmentIncomeInterest"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentIncomeInterest" xlink:to="lab_us-gaap_InvestmentIncomeInterest" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpensePolicy_ee5483b4-e70a-40a8-8c71-d942a1d10569_terseLabel_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Research and Development</link:label>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpensePolicy_label_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Research and Development Expense, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpensePolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_f2088c93-83c6-4ea3-b3b1-76e79e2213d3_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_93bee134-da44-48a6-8e56-b4688cb2fbea_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_b3408c32-b364-41c3-a4ad-0d2a85e537de_verboseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferred1" 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">Acquisition 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_ConcentrationRiskCreditRisk_6d9814b8-3060-48a0-9106-b04c25ac07fb_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskCreditRisk" xlink: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_ConcentrationRiskCreditRisk_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskCreditRisk" xlink: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, Credit Risk, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskCreditRisk" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskCreditRisk"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskCreditRisk" xlink:to="lab_us-gaap_ConcentrationRiskCreditRisk" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityDomain_275543cb-e546-49bc-b4d7-2149f0df7fd2_terseLabel_en-US" xlink:label="lab_dei_EntityDomain" xlink: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 [Domain]</link:label>
    <link:label id="lab_dei_EntityDomain_label_en-US" xlink:label="lab_dei_EntityDomain" xlink: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 [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityDomain" xlink:to="lab_dei_EntityDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CityAreaCode_13b97a6b-7866-4a91-b36d-e7d0535fa869_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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_be75543e-3685-473a-be3d-d62ac6dc17c9_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink: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, exercise price (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink: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, Exercisable, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:to="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsAbstract_d7afbce1-d1fc-474e-844d-c7ac3698a9eb_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_c5c26b5e-463c-4d6e-bd41-9a17be3d3e0b_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_CompensationAndRetirementDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_CompensationAndRetirementDisclosureAbstract" xlink: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 Benefits [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:to="lab_us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:type="arc" order="1"/>
    <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_6483008e-1f7c-4f27-927f-43f3b0a96de3_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">Income tax expense at statutory rates</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_f260de63-e6f6-4c5a-91b5-54677a2d2ebe_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_NetCashProvidedByUsedInFinancingActivitiesAbstract_5d58ce4d-8c1e-4164-a7f2-f24561e54bbb_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">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_LongtermDebtWeightedAverageInterestRate_e2bc2cc5-8968-41c8-afcb-11abb5be230b_terseLabel_en-US" xlink:label="lab_us-gaap_LongtermDebtWeightedAverageInterestRate" xlink: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 outstanding, rate (percent)</link:label>
    <link:label id="lab_us-gaap_LongtermDebtWeightedAverageInterestRate_label_en-US" xlink:label="lab_us-gaap_LongtermDebtWeightedAverageInterestRate" xlink: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, Weighted Average Interest Rate, at Point in Time</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtWeightedAverageInterestRate" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtWeightedAverageInterestRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongtermDebtWeightedAverageInterestRate" xlink:to="lab_us-gaap_LongtermDebtWeightedAverageInterestRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerSharePolicyTextBlock_595b3226-58b4-4cab-98df-77847e488f44_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerSharePolicyTextBlock" xlink: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 Common Share ("EPS")</link:label>
    <link:label id="lab_us-gaap_EarningsPerSharePolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_EarningsPerSharePolicyTextBlock" xlink: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, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerSharePolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerSharePolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerSharePolicyTextBlock" xlink:to="lab_us-gaap_EarningsPerSharePolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_1a4bb31f-d795-484c-98f4-1b9734533ab9_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink: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_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_label_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink: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, Maturity, Year One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:to="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensation_67de6b40-a254-4be1-ac5c-1ea6618247f0_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-based 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_us-gaap_EquipmentExpense_3fa3b82e-a6be-4fcb-b495-cbca439ab90f_terseLabel_en-US" xlink:label="lab_us-gaap_EquipmentExpense" xlink: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 - Rental</link:label>
    <link:label id="lab_us-gaap_EquipmentExpense_label_en-US" xlink:label="lab_us-gaap_EquipmentExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equipment Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquipmentExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquipmentExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquipmentExpense" xlink:to="lab_us-gaap_EquipmentExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_23d59d0a-e473-4429-b5c3-3cdc282a4681_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink: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 of options granted (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink: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</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation_4677afe4-563b-4600-b877-8b07b8603c41_terseLabel_en-US" xlink:label="lab_alg_ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product warranty accrual period of expenses used in calculation</link:label>
    <link:label id="lab_alg_ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation_label_en-US" xlink:label="lab_alg_ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation" xlink: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 Period Of Expenses Used In Calculation</link:label>
    <link:label id="lab_alg_ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation_documentation_en-US" xlink:label="lab_alg_ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation" 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">Product Warranty Accrual Period Of Expenses Used In Calculation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation" xlink:href="alg-20221231.xsd#alg_ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation" xlink:to="lab_alg_ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_VariableRateAxis_909cb19d-5f12-444a-bcfb-ebf9e4975405_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_9104d6ef-eeaa-4aab-af30-a6e8df98637f_terseLabel_en-US" xlink:label="lab_us-gaap_OtherLiabilitiesNoncurrent" xlink: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 long-term 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_alg_TermFacilityMember_fd52654b-0b40-4543-afbb-bac633037080_terseLabel_en-US" xlink:label="lab_alg_TermFacilityMember" xlink: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 Facility</link:label>
    <link:label id="lab_alg_TermFacilityMember_label_en-US" xlink:label="lab_alg_TermFacilityMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Term Facility [Member]</link:label>
    <link:label id="lab_alg_TermFacilityMember_documentation_en-US" xlink:label="lab_alg_TermFacilityMember" 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">Term Facility</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_TermFacilityMember" xlink:href="alg-20221231.xsd#alg_TermFacilityMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_TermFacilityMember" xlink:to="lab_alg_TermFacilityMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_37cdfdcd-64a5-4a5a-bdf3-a5c508b60e0d_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" 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">Purchase of property, plant and equipment</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_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions_cc706d3e-316b-4623-ba2a-35e989a96dd9_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions" xlink: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 liability</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions" xlink: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, Pensions</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions" xlink:to="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions" xlink:type="arc" order="1"/>
    <link:label id="lab_alg_VegetationManagementMember_a170863f-fb9a-4943-9317-e355dc050b89_terseLabel_en-US" xlink:label="lab_alg_VegetationManagementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vegetation Management</link:label>
    <link:label id="lab_alg_VegetationManagementMember_label_en-US" xlink:label="lab_alg_VegetationManagementMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vegetation Management [Member]</link:label>
    <link:label id="lab_alg_VegetationManagementMember_documentation_en-US" xlink:label="lab_alg_VegetationManagementMember" 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">Vegetation Management Member</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_alg_VegetationManagementMember" xlink:href="alg-20221231.xsd#alg_VegetationManagementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alg_VegetationManagementMember" xlink:to="lab_alg_VegetationManagementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_01b00c97-ed78-4f37-ac29-9d96bee48483_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink: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</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_DefinedBenefitPlanBenefitObligation_f7fb16a3-bf67-4f24-8dee-5a41943511cb_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">Benefit obligation at beginning of year</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanBenefitObligation_1abf59e2-b5dc-46e0-b1c7-75b5e696b8c0_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">Benefit obligation at end of year</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_5442938d-a9ed-4d94-a67e-bbfd7e8997af_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 Earnings Per Share, Basic and Diluted</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:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>12
<FILENAME>alg-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:7e490c47-366a-4d14-b516-70bcfe20753e,g:370dcb37-b2fc-4837-9d03-6da297616798-->
<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.alamo-group.com/role/Cover" xlink:type="simple" xlink:href="alg-20221231.xsd#Cover"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/Cover" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CoverAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType_950e598d-3190-47f6-ad70-155aa3cc1f38" 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_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_DocumentType_950e598d-3190-47f6-ad70-155aa3cc1f38" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentAnnualReport_d345cee6-868c-4bcb-8dd0-b57a22857f5b" 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_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_DocumentAnnualReport_d345cee6-868c-4bcb-8dd0-b57a22857f5b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate_db6d918a-8a75-4683-bcd1-03c7edd00c0d" 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_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_DocumentPeriodEndDate_db6d918a-8a75-4683-bcd1-03c7edd00c0d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CurrentFiscalYearEndDate_f49c89a5-4e24-456d-8ee9-2aaf50a23cfe" 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_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_CurrentFiscalYearEndDate_f49c89a5-4e24-456d-8ee9-2aaf50a23cfe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentTransitionReport_c18d7ef2-e162-45ac-8b07-bc435151bd87" 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_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_DocumentTransitionReport_c18d7ef2-e162-45ac-8b07-bc435151bd87" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFileNumber_d401390f-36f4-4eb4-ba6d-6d3c19d4df7e" 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_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_EntityFileNumber_d401390f-36f4-4eb4-ba6d-6d3c19d4df7e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName_0c7364dc-c177-4602-a2f3-8c73d706bec7" 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_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_EntityRegistrantName_0c7364dc-c177-4602-a2f3-8c73d706bec7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityIncorporationStateCountryCode_687a39a8-6afa-4040-9312-586cd36b88dc" 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_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_EntityIncorporationStateCountryCode_687a39a8-6afa-4040-9312-586cd36b88dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber_703cdc65-5593-4f63-a472-60d71531eb75" 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_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_EntityTaxIdentificationNumber_703cdc65-5593-4f63-a472-60d71531eb75" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine1_19bc7544-f801-44dd-a0ed-a26a90aa1d3b" 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_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_EntityAddressAddressLine1_19bc7544-f801-44dd-a0ed-a26a90aa1d3b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressCityOrTown_eaca05e0-a2ab-4142-afe0-4c8b0e2f26c1" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressCityOrTown"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_EntityAddressCityOrTown_eaca05e0-a2ab-4142-afe0-4c8b0e2f26c1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressStateOrProvince_d28aa734-7282-480a-b138-b1e912a0a220" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressStateOrProvince"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_EntityAddressStateOrProvince_d28aa734-7282-480a-b138-b1e912a0a220" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressPostalZipCode_391360e8-0c11-4f40-a10d-2c7e47a23649" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressPostalZipCode"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_EntityAddressPostalZipCode_391360e8-0c11-4f40-a10d-2c7e47a23649" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CityAreaCode_b2b48b2c-d5c4-4ae5-bee8-35e5e6caa6f0" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CityAreaCode"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_CityAreaCode_b2b48b2c-d5c4-4ae5-bee8-35e5e6caa6f0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LocalPhoneNumber_f56be2da-3fee-4709-a4f6-8e90d8a65072" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LocalPhoneNumber"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_LocalPhoneNumber_f56be2da-3fee-4709-a4f6-8e90d8a65072" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_Security12bTitle_9e851c59-daf5-4720-86eb-38cfdd4d70ed" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_Security12bTitle"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_Security12bTitle_9e851c59-daf5-4720-86eb-38cfdd4d70ed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_TradingSymbol_258a521a-105e-4a5e-9f9e-342c296cae1f" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_TradingSymbol"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_TradingSymbol_258a521a-105e-4a5e-9f9e-342c296cae1f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SecurityExchangeName_7d6eeb75-cdda-4a0f-b40b-fa51217bd023" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SecurityExchangeName"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_SecurityExchangeName_7d6eeb75-cdda-4a0f-b40b-fa51217bd023" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityWellKnownSeasonedIssuer_c0e8fd4f-0970-4a7d-ae08-fa376376f5c2" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityWellKnownSeasonedIssuer"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_EntityWellKnownSeasonedIssuer_c0e8fd4f-0970-4a7d-ae08-fa376376f5c2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityVoluntaryFilers_a82339bb-1555-41a7-9ef8-f7ad20ce75d4" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityVoluntaryFilers"/>
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_EntityVoluntaryFilers_a82339bb-1555-41a7-9ef8-f7ad20ce75d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCurrentReportingStatus_53187d58-3db3-47b5-ac62-f843f58c2e3b" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCurrentReportingStatus"/>
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_EntityCurrentReportingStatus_53187d58-3db3-47b5-ac62-f843f58c2e3b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityInteractiveDataCurrent_6e4f0bc1-a881-4d38-89b3-a6d21eaf8392" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityInteractiveDataCurrent"/>
    <link:presentationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_EntityInteractiveDataCurrent_6e4f0bc1-a881-4d38-89b3-a6d21eaf8392" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFilerCategory_1eedb8da-5da6-4f26-8e63-03ea34dc28df" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFilerCategory"/>
    <link:presentationArc order="23" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_EntityFilerCategory_1eedb8da-5da6-4f26-8e63-03ea34dc28df" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntitySmallBusiness_b023a5cf-2ee8-42d0-b4bd-120a5e75b13f" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntitySmallBusiness"/>
    <link:presentationArc order="24" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_EntitySmallBusiness_b023a5cf-2ee8-42d0-b4bd-120a5e75b13f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityEmergingGrowthCompany_1fefd9ff-5898-4342-9219-eea9ac0db8dc" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityEmergingGrowthCompany"/>
    <link:presentationArc order="25" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_EntityEmergingGrowthCompany_1fefd9ff-5898-4342-9219-eea9ac0db8dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_IcfrAuditorAttestationFlag_2b36a77a-182e-4792-a731-d834fcb27e6e" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_IcfrAuditorAttestationFlag"/>
    <link:presentationArc order="26" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_IcfrAuditorAttestationFlag_2b36a77a-182e-4792-a731-d834fcb27e6e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityShellCompany_f8a2c425-545e-4a14-8cc9-3ce2bb13daaf" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityShellCompany"/>
    <link:presentationArc order="27" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_EntityShellCompany_f8a2c425-545e-4a14-8cc9-3ce2bb13daaf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityPublicFloat_3fbc8418-3b8d-422e-bcdb-3e84b1f9bac7" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityPublicFloat"/>
    <link:presentationArc order="28" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_EntityPublicFloat_3fbc8418-3b8d-422e-bcdb-3e84b1f9bac7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCommonStockSharesOutstanding_cb5dbe7a-479c-4891-b299-4d4b4e51bdcc" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <link:presentationArc order="29" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_EntityCommonStockSharesOutstanding_cb5dbe7a-479c-4891-b299-4d4b4e51bdcc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentsIncorporatedByReferenceTextBlock_7f4d0fb0-17fb-49f6-bc5a-d9061a4f9a74" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentsIncorporatedByReferenceTextBlock"/>
    <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_DocumentsIncorporatedByReferenceTextBlock_7f4d0fb0-17fb-49f6-bc5a-d9061a4f9a74" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey_3b0e3326-0a28-4918-9a23-9d6d3c521b9c" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCentralIndexKey"/>
    <link:presentationArc order="31" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_EntityCentralIndexKey_3b0e3326-0a28-4918-9a23-9d6d3c521b9c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalYearFocus_381a806d-962b-47bc-8389-6e66329c29f0" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalYearFocus"/>
    <link:presentationArc order="32" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_DocumentFiscalYearFocus_381a806d-962b-47bc-8389-6e66329c29f0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalPeriodFocus_9d4365db-17ac-4d31-b9e2-36150cafc52f" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalPeriodFocus"/>
    <link:presentationArc order="33" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_DocumentFiscalPeriodFocus_9d4365db-17ac-4d31-b9e2-36150cafc52f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag_5dfc522d-1775-4b6d-9085-ad771b4bbdd9" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AmendmentFlag"/>
    <link:presentationArc order="34" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_bc5b1a61-b1a3-4976-80d8-ff5be97df704" xlink:to="loc_dei_AmendmentFlag_5dfc522d-1775-4b6d-9085-ad771b4bbdd9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/AuditInformation" xlink:type="simple" xlink:href="alg-20221231.xsd#AuditInformation"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/AuditInformation" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_alg_AuditInformationAbstract_a27f0408-b086-4fbf-a660-6b9ef8b19a39" xlink:href="alg-20221231.xsd#alg_AuditInformationAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AuditorFirmId_1ae90461-c66b-4c20-b314-a66e6c8e6373" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorFirmId"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_AuditInformationAbstract_a27f0408-b086-4fbf-a660-6b9ef8b19a39" xlink:to="loc_dei_AuditorFirmId_1ae90461-c66b-4c20-b314-a66e6c8e6373" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AuditorName_b64d8128-e71c-4095-b02e-10069aed8886" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorName"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_AuditInformationAbstract_a27f0408-b086-4fbf-a660-6b9ef8b19a39" xlink:to="loc_dei_AuditorName_b64d8128-e71c-4095-b02e-10069aed8886" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AuditorLocation_8a06f277-fb41-4702-afd8-ad80c2c97ba8" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorLocation"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_AuditInformationAbstract_a27f0408-b086-4fbf-a660-6b9ef8b19a39" xlink:to="loc_dei_AuditorLocation_8a06f277-fb41-4702-afd8-ad80c2c97ba8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/ConsolidatedBalanceSheets" xlink:type="simple" xlink:href="alg-20221231.xsd#ConsolidatedBalanceSheets"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/ConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_8f4fca8b-0cf8-4826-a5e3-3732ed7dc9bf" 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_59a965fe-074e-475b-b2d2-267e3552aa74" 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_8f4fca8b-0cf8-4826-a5e3-3732ed7dc9bf" xlink:to="loc_us-gaap_AssetsAbstract_59a965fe-074e-475b-b2d2-267e3552aa74" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract_c6362029-9891-4e9d-9d29-c0238a910134" 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_59a965fe-074e-475b-b2d2-267e3552aa74" xlink:to="loc_us-gaap_AssetsCurrentAbstract_c6362029-9891-4e9d-9d29-c0238a910134" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_8f93cddd-7963-4e73-b782-dd64525d836d" 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_c6362029-9891-4e9d-9d29-c0238a910134" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_8f93cddd-7963-4e73-b782-dd64525d836d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_4283955e-d597-47e3-81b6-7af66f68cd30" 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_c6362029-9891-4e9d-9d29-c0238a910134" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_4283955e-d597-47e3-81b6-7af66f68cd30" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_d0bee8ee-e969-465a-8881-310e49beb319" 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_c6362029-9891-4e9d-9d29-c0238a910134" xlink:to="loc_us-gaap_InventoryNet_d0bee8ee-e969-465a-8881-310e49beb319" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_5e6a15ac-bc21-4873-908f-6478b5593dde" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_c6362029-9891-4e9d-9d29-c0238a910134" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_5e6a15ac-bc21-4873-908f-6478b5593dde" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxesReceivable_567c2856-5be5-4eaa-bf40-a8b388a494f7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxesReceivable"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_c6362029-9891-4e9d-9d29-c0238a910134" xlink:to="loc_us-gaap_IncomeTaxesReceivable_567c2856-5be5-4eaa-bf40-a8b388a494f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_65b6db58-183a-4e30-b67d-ccd528e07e53" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_c6362029-9891-4e9d-9d29-c0238a910134" xlink:to="loc_us-gaap_AssetsCurrent_65b6db58-183a-4e30-b67d-ccd528e07e53" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_RentalEquipmentNet_59d59103-e1dd-448f-a1c7-fb2bbbabbec3" xlink:href="alg-20221231.xsd#alg_RentalEquipmentNet"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_59a965fe-074e-475b-b2d2-267e3552aa74" xlink:to="loc_alg_RentalEquipmentNet_59d59103-e1dd-448f-a1c7-fb2bbbabbec3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_e5e95944-5dbf-4375-9883-627c6d257111" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_59a965fe-074e-475b-b2d2-267e3552aa74" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_e5e95944-5dbf-4375-9883-627c6d257111" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_5055e4a5-a07a-48fe-9c88-6d717282f956" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_59a965fe-074e-475b-b2d2-267e3552aa74" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_5055e4a5-a07a-48fe-9c88-6d717282f956" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_92e02f50-60e9-4055-a476-93f53e5df1cf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_59a965fe-074e-475b-b2d2-267e3552aa74" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_92e02f50-60e9-4055-a476-93f53e5df1cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_528c1d21-92be-440b-ae99-9287c5cc20dc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_59a965fe-074e-475b-b2d2-267e3552aa74" xlink:to="loc_us-gaap_Goodwill_528c1d21-92be-440b-ae99-9287c5cc20dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_424087c0-eca8-4521-b3d5-12d8a7c13209" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_59a965fe-074e-475b-b2d2-267e3552aa74" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_424087c0-eca8-4521-b3d5-12d8a7c13209" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet_2e7e33da-6422-4a4c-8782-852c21a42d61" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_59a965fe-074e-475b-b2d2-267e3552aa74" xlink:to="loc_us-gaap_DeferredIncomeTaxAssetsNet_2e7e33da-6422-4a4c-8782-852c21a42d61" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_3a209090-eeac-419e-a412-4a0a8e3a5f76" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_59a965fe-074e-475b-b2d2-267e3552aa74" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_3a209090-eeac-419e-a412-4a0a8e3a5f76" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_8a618029-45ef-40d1-b651-c5febaf7ee58" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_59a965fe-074e-475b-b2d2-267e3552aa74" xlink:to="loc_us-gaap_Assets_8a618029-45ef-40d1-b651-c5febaf7ee58" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a192b987-5da4-41eb-927c-1e9daf9a41ef" 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_8f4fca8b-0cf8-4826-a5e3-3732ed7dc9bf" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a192b987-5da4-41eb-927c-1e9daf9a41ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_4418df6b-c7ca-4d4f-9600-9ea0e947802f" 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_a192b987-5da4-41eb-927c-1e9daf9a41ef" xlink:to="loc_us-gaap_LiabilitiesCurrentAbstract_4418df6b-c7ca-4d4f-9600-9ea0e947802f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent_b5bc0b0e-7fa2-4204-a8e7-a33e6b354815" 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_4418df6b-c7ca-4d4f-9600-9ea0e947802f" xlink:to="loc_us-gaap_AccountsPayableCurrent_b5bc0b0e-7fa2-4204-a8e7-a33e6b354815" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent_e438e7dc-618a-4537-a781-850fef5800fe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedIncomeTaxesCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_4418df6b-c7ca-4d4f-9600-9ea0e947802f" xlink:to="loc_us-gaap_AccruedIncomeTaxesCurrent_e438e7dc-618a-4537-a781-850fef5800fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_fb2e2fe8-a2bf-4759-a0d2-7e5c1de1cf1e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_4418df6b-c7ca-4d4f-9600-9ea0e947802f" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_fb2e2fe8-a2bf-4759-a0d2-7e5c1de1cf1e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_3ebd1f08-d702-456f-b4b3-287168b31a85" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_4418df6b-c7ca-4d4f-9600-9ea0e947802f" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_3ebd1f08-d702-456f-b4b3-287168b31a85" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_e5c4fe95-28d6-4b3a-9da3-b1eea14d3a84" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_4418df6b-c7ca-4d4f-9600-9ea0e947802f" xlink:to="loc_us-gaap_LiabilitiesCurrent_e5c4fe95-28d6-4b3a-9da3-b1eea14d3a84" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_83d20bc7-6e80-4aa9-b3b7-89630d92e257" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a192b987-5da4-41eb-927c-1e9daf9a41ef" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_83d20bc7-6e80-4aa9-b3b7-89630d92e257" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedIncomeTaxesNoncurrent_12eb12f9-e498-4b8a-a821-c41dbd0e2b1b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedIncomeTaxesNoncurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a192b987-5da4-41eb-927c-1e9daf9a41ef" xlink:to="loc_us-gaap_AccruedIncomeTaxesNoncurrent_12eb12f9-e498-4b8a-a821-c41dbd0e2b1b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_38d5f74e-d449-4af3-9dc9-8d0dd4e6866a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a192b987-5da4-41eb-927c-1e9daf9a41ef" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent_38d5f74e-d449-4af3-9dc9-8d0dd4e6866a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_8f339418-0618-4f21-9c9a-a967a33cb06e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a192b987-5da4-41eb-927c-1e9daf9a41ef" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_8f339418-0618-4f21-9c9a-a967a33cb06e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityAbstract_7ff1fee9-ce21-4bf5-ad1e-052b1e871dd0" 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_a192b987-5da4-41eb-927c-1e9daf9a41ef" xlink:to="loc_us-gaap_StockholdersEquityAbstract_7ff1fee9-ce21-4bf5-ad1e-052b1e871dd0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue_bf912b78-0b5f-49b2-bcac-8796ba5f3b60" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_7ff1fee9-ce21-4bf5-ad1e-052b1e871dd0" xlink:to="loc_us-gaap_CommonStockValue_bf912b78-0b5f-49b2-bcac-8796ba5f3b60" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_05f89c71-6495-4e0d-aba1-e9fb53f6db4c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_7ff1fee9-ce21-4bf5-ad1e-052b1e871dd0" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_05f89c71-6495-4e0d-aba1-e9fb53f6db4c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValue_e7d524b7-5941-4d57-a297-65d37f140095" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockValue"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_7ff1fee9-ce21-4bf5-ad1e-052b1e871dd0" xlink:to="loc_us-gaap_TreasuryStockValue_e7d524b7-5941-4d57-a297-65d37f140095" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_6d477a34-e602-4dd3-bdd4-c87d9d5363b5" 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_7ff1fee9-ce21-4bf5-ad1e-052b1e871dd0" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_6d477a34-e602-4dd3-bdd4-c87d9d5363b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_c9f893ce-0c3d-4632-80c2-c691064c4422" 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_7ff1fee9-ce21-4bf5-ad1e-052b1e871dd0" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_c9f893ce-0c3d-4632-80c2-c691064c4422" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_8b9fa124-64e5-486c-a9f6-91b032468163" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_7ff1fee9-ce21-4bf5-ad1e-052b1e871dd0" xlink:to="loc_us-gaap_StockholdersEquity_8b9fa124-64e5-486c-a9f6-91b032468163" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_ca51531e-c593-4242-b3cf-9849ba86c58b" 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_a192b987-5da4-41eb-927c-1e9daf9a41ef" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquity_ca51531e-c593-4242-b3cf-9849ba86c58b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="simple" xlink:href="alg-20221231.xsd#ConsolidatedBalanceSheetsParenthetical"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_ab8460e7-dc53-446d-8e2c-dd15ea3fa7c7" 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_CommonStockParOrStatedValuePerShare_45190ee4-74e3-49f8-a713-1127752abd29" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_ab8460e7-dc53-446d-8e2c-dd15ea3fa7c7" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_45190ee4-74e3-49f8-a713-1127752abd29" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_a7ef3b0c-c588-49ba-a998-38103b2da176" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_ab8460e7-dc53-446d-8e2c-dd15ea3fa7c7" xlink:to="loc_us-gaap_CommonStockSharesAuthorized_a7ef3b0c-c588-49ba-a998-38103b2da176" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_056ca050-3b6b-4214-91e4-6108a1ff7572" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_ab8460e7-dc53-446d-8e2c-dd15ea3fa7c7" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_056ca050-3b6b-4214-91e4-6108a1ff7572" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockShares_66c127f9-d36d-4a85-a694-1976eaaa049e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockShares"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_ab8460e7-dc53-446d-8e2c-dd15ea3fa7c7" xlink:to="loc_us-gaap_TreasuryStockShares_66c127f9-d36d-4a85-a694-1976eaaa049e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/ConsolidatedStatementsofIncome" xlink:type="simple" xlink:href="alg-20221231.xsd#ConsolidatedStatementsofIncome"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/ConsolidatedStatementsofIncome" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract_8245d806-d263-4481-a8e3-bea816f6642b" 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_StatementTable_7f9da50e-1c6c-4ae6-b9e4-4cce7b95e15a" 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_IncomeStatementAbstract_8245d806-d263-4481-a8e3-bea816f6642b" xlink:to="loc_us-gaap_StatementTable_7f9da50e-1c6c-4ae6-b9e4-4cce7b95e15a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_c61365c4-bdfa-4065-9372-d0a5cfc3744e" 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_StatementTable_7f9da50e-1c6c-4ae6-b9e4-4cce7b95e15a" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_c61365c4-bdfa-4065-9372-d0a5cfc3744e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_b281f94b-7f2a-471b-ae34-8a53ef8e362b" 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_c61365c4-bdfa-4065-9372-d0a5cfc3744e" xlink:to="loc_us-gaap_SegmentDomain_b281f94b-7f2a-471b-ae34-8a53ef8e362b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_VegetationManagementMember_e9e6ef2c-90d5-475d-962b-91ce794b44d1" xlink:href="alg-20221231.xsd#alg_VegetationManagementMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_b281f94b-7f2a-471b-ae34-8a53ef8e362b" xlink:to="loc_alg_VegetationManagementMember_e9e6ef2c-90d5-475d-962b-91ce794b44d1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_IndustrialManagementMember_c1b5a8b9-cf1c-48b7-a82b-d9c5ae1df369" xlink:href="alg-20221231.xsd#alg_IndustrialManagementMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_b281f94b-7f2a-471b-ae34-8a53ef8e362b" xlink:to="loc_alg_IndustrialManagementMember_c1b5a8b9-cf1c-48b7-a82b-d9c5ae1df369" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_3e2bfc34-c07f-470a-9f36-6e59f29a27a5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_7f9da50e-1c6c-4ae6-b9e4-4cce7b95e15a" xlink:to="loc_us-gaap_StatementLineItems_3e2bfc34-c07f-470a-9f36-6e59f29a27a5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenuesAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_3e2bfc34-c07f-470a-9f36-6e59f29a27a5" xlink:to="loc_us-gaap_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_7cdd3dfb-a4ca-404c-a2ed-02ccfe7114f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_7cdd3dfb-a4ca-404c-a2ed-02ccfe7114f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_da414bb0-bf6f-4402-9b39-5deb1ccbdb62" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_da414bb0-bf6f-4402-9b39-5deb1ccbdb62" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_06204397-7c5e-4201-a161-90b51b3edff7" 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_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_GrossProfit_06204397-7c5e-4201-a161-90b51b3edff7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_426455f9-243d-4e82-bbe9-419214d1cf4d" 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_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_426455f9-243d-4e82-bbe9-419214d1cf4d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfDeferredCharges_8e19b7ab-34e8-4ee9-9c00-3b8a722f1fb4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfDeferredCharges"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_AmortizationOfDeferredCharges_8e19b7ab-34e8-4ee9-9c00-3b8a722f1fb4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_13f4a414-bf44-41cc-b51c-241c3fb2c87d" 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_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_OperatingIncomeLoss_13f4a414-bf44-41cc-b51c-241c3fb2c87d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense_9dbe5b6d-6f38-485f-97c5-7117d8893240" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_InterestExpense_9dbe5b6d-6f38-485f-97c5-7117d8893240" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentIncomeInterest_b1ea51c7-dd83-41ab-805e-4307c8e8039b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InvestmentIncomeInterest"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_InvestmentIncomeInterest_b1ea51c7-dd83-41ab-805e-4307c8e8039b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_379fd0e8-4249-4c14-877b-647e5a0ed9bd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_379fd0e8-4249-4c14-877b-647e5a0ed9bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_62e2c311-bdb6-4292-869b-df6e9aa02e8e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_62e2c311-bdb6-4292-869b-df6e9aa02e8e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_2593b4e3-377e-4108-95f6-57e72d5a632f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_2593b4e3-377e-4108-95f6-57e72d5a632f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_9e088e0c-1bee-4f9a-8430-08da8cc61232" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenuesAbstract_5f7860fe-b21d-4070-9346-c983a3de89cb" xlink:to="loc_us-gaap_NetIncomeLoss_9e088e0c-1bee-4f9a-8430-08da8cc61232" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_b969af6f-7053-4ff4-bb05-5a21517b1af8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_3e2bfc34-c07f-470a-9f36-6e59f29a27a5" xlink:to="loc_us-gaap_EarningsPerShareAbstract_b969af6f-7053-4ff4-bb05-5a21517b1af8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic_21bd792a-a863-4d9b-944b-c03bca562534" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_b969af6f-7053-4ff4-bb05-5a21517b1af8" xlink:to="loc_us-gaap_EarningsPerShareBasic_21bd792a-a863-4d9b-944b-c03bca562534" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted_115fd1cc-c5c5-46d3-814f-18ad9085484d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_b969af6f-7053-4ff4-bb05-5a21517b1af8" xlink:to="loc_us-gaap_EarningsPerShareDiluted_115fd1cc-c5c5-46d3-814f-18ad9085484d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_AverageCommonSharesAbstract_0b4a98f6-549f-44d9-9fca-2800d7da4efb" xlink:href="alg-20221231.xsd#alg_AverageCommonSharesAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_3e2bfc34-c07f-470a-9f36-6e59f29a27a5" xlink:to="loc_alg_AverageCommonSharesAbstract_0b4a98f6-549f-44d9-9fca-2800d7da4efb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_54d3b8a2-a3e8-43ec-a56c-27793a9e38e5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_AverageCommonSharesAbstract_0b4a98f6-549f-44d9-9fca-2800d7da4efb" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_54d3b8a2-a3e8-43ec-a56c-27793a9e38e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_7b6dcacf-a5c2-4dd8-9974-f17f70cec662" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_AverageCommonSharesAbstract_0b4a98f6-549f-44d9-9fca-2800d7da4efb" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_7b6dcacf-a5c2-4dd8-9974-f17f70cec662" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncome" xlink:type="simple" xlink:href="alg-20221231.xsd#ConsolidatedStatementsofComprehensiveIncome"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncome" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_3ecd1528-e0d6-4f7f-a7fd-f0da6c82622c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_556f43ec-3204-4c52-87c7-0974d7b396d0" 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_StatementOfIncomeAndComprehensiveIncomeAbstract_3ecd1528-e0d6-4f7f-a7fd-f0da6c82622c" xlink:to="loc_us-gaap_NetIncomeLoss_556f43ec-3204-4c52-87c7-0974d7b396d0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_732af10d-60bf-4d87-bb63-59a3ba0e4ec2" 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_StatementOfIncomeAndComprehensiveIncomeAbstract_3ecd1528-e0d6-4f7f-a7fd-f0da6c82622c" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_732af10d-60bf-4d87-bb63-59a3ba0e4ec2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent_c90cf5c6-5b88-45ba-8c70-7d3849172959" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_732af10d-60bf-4d87-bb63-59a3ba0e4ec2" xlink:to="loc_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent_c90cf5c6-5b88-45ba-8c70-7d3849172959" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_a7d6d81b-441c-4c4e-88cf-b84791cf16f5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_732af10d-60bf-4d87-bb63-59a3ba0e4ec2" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_a7d6d81b-441c-4c4e-88cf-b84791cf16f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent_3b03ffec-a46b-4509-b1b7-c369b1bfe0dd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_732af10d-60bf-4d87-bb63-59a3ba0e4ec2" xlink:to="loc_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent_3b03ffec-a46b-4509-b1b7-c369b1bfe0dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_6dac9a29-49ce-46ca-bf79-663aa8fc9251" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_732af10d-60bf-4d87-bb63-59a3ba0e4ec2" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_6dac9a29-49ce-46ca-bf79-663aa8fc9251" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_7da86df5-78e9-4570-9248-ed3305c9c009" 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_StatementOfIncomeAndComprehensiveIncomeAbstract_3ecd1528-e0d6-4f7f-a7fd-f0da6c82622c" xlink:to="loc_us-gaap_ComprehensiveIncomeNetOfTax_7da86df5-78e9-4570-9248-ed3305c9c009" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncomeParenthetical" xlink:type="simple" xlink:href="alg-20221231.xsd#ConsolidatedStatementsofComprehensiveIncomeParenthetical"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncomeParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_915048ca-8bf4-4b4a-a496-cc57233cc2b9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent_eb66c020-1e29-49fc-bbfd-a0df384b628e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_915048ca-8bf4-4b4a-a496-cc57233cc2b9" xlink:to="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent_eb66c020-1e29-49fc-bbfd-a0df384b628e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent_adc5b415-80f7-461b-b45c-121b18a92e90" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_915048ca-8bf4-4b4a-a496-cc57233cc2b9" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent_adc5b415-80f7-461b-b45c-121b18a92e90" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax_9d3a991c-91f9-4406-82cd-165fc7aad245" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_915048ca-8bf4-4b4a-a496-cc57233cc2b9" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax_9d3a991c-91f9-4406-82cd-165fc7aad245" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity" xlink:type="simple" xlink:href="alg-20221231.xsd#ConsolidatedStatementsofStockholdersEquity"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_1adc7f5a-10a1-4210-83d7-bb88f8dc9eef" 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_d1ea8514-0c81-49fd-9b38-20e99d7b07cb" 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_1adc7f5a-10a1-4210-83d7-bb88f8dc9eef" xlink:to="loc_us-gaap_StatementTable_d1ea8514-0c81-49fd-9b38-20e99d7b07cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_01dc3227-1a78-4be9-8baa-f453cca4f423" 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_d1ea8514-0c81-49fd-9b38-20e99d7b07cb" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_01dc3227-1a78-4be9-8baa-f453cca4f423" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_fcd41231-3ee0-4e68-949c-c785179d8dbf" 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_01dc3227-1a78-4be9-8baa-f453cca4f423" xlink:to="loc_us-gaap_EquityComponentDomain_fcd41231-3ee0-4e68-949c-c785179d8dbf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_be325a74-b265-4c8d-b345-f5e1f8de974b" 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_fcd41231-3ee0-4e68-949c-c785179d8dbf" xlink:to="loc_us-gaap_CommonStockMember_be325a74-b265-4c8d-b345-f5e1f8de974b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_29aae726-2265-4e10-86b4-65073d9ebd0c" 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_fcd41231-3ee0-4e68-949c-c785179d8dbf" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_29aae726-2265-4e10-86b4-65073d9ebd0c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockMember_e9e9233a-dc38-4430-9b7e-e1fa76dc71b9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_fcd41231-3ee0-4e68-949c-c785179d8dbf" xlink:to="loc_us-gaap_TreasuryStockMember_e9e9233a-dc38-4430-9b7e-e1fa76dc71b9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_0a06ae0d-681f-44f6-97b0-1aab511ab8b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_fcd41231-3ee0-4e68-949c-c785179d8dbf" xlink:to="loc_us-gaap_RetainedEarningsMember_0a06ae0d-681f-44f6-97b0-1aab511ab8b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_2a8f9d1d-5e7e-464b-a1f4-a920f75a64f2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_fcd41231-3ee0-4e68-949c-c785179d8dbf" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_2a8f9d1d-5e7e-464b-a1f4-a920f75a64f2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_cbfc5e85-25e5-4b15-86d8-c4e722de6832" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_d1ea8514-0c81-49fd-9b38-20e99d7b07cb" xlink:to="loc_us-gaap_StatementLineItems_cbfc5e85-25e5-4b15-86d8-c4e722de6832" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c12311c7-0779-4f89-b9c0-f03dbf4970c8" 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_cbfc5e85-25e5-4b15-86d8-c4e722de6832" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesOutstanding_ce5be5ca-a77b-4acc-9548-155abf147a7f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesOutstanding"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:to="loc_us-gaap_SharesOutstanding_ce5be5ca-a77b-4acc-9548-155abf147a7f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_97a0337e-c3a0-4713-8c08-fed2ada9133b" 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_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:to="loc_us-gaap_StockholdersEquity_97a0337e-c3a0-4713-8c08-fed2ada9133b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_a77bde1d-cb60-401f-97c3-48e71ba1fc49" 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_IncreaseDecreaseInStockholdersEquityRollForward_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_a77bde1d-cb60-401f-97c3-48e71ba1fc49" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_d8992b96-b3fa-44f3-bdb4-c9c8dafc95e8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_d8992b96-b3fa-44f3-bdb4-c9c8dafc95e8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_d4ef8389-1114-403f-99c7-c3454e3080fa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_d4ef8389-1114-403f-99c7-c3454e3080fa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_8fd713b2-c12a-4025-ac4c-c1cc5f7d9df0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_8fd713b2-c12a-4025-ac4c-c1cc5f7d9df0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodShares_9011c8d8-94e6-48e9-ab2a-bd97a8d702cb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchasedDuringPeriodShares"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:to="loc_us-gaap_StockRepurchasedDuringPeriodShares_9011c8d8-94e6-48e9-ab2a-bd97a8d702cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodValue_85a26ab4-f976-44f2-aa24-cba7a0d2b0d5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchasedDuringPeriodValue"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:to="loc_us-gaap_StockRepurchasedDuringPeriodValue_85a26ab4-f976-44f2-aa24-cba7a0d2b0d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsCash_2fa690cf-71bd-4ab9-bc49-0f7b1c7ef8dc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsCash"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:to="loc_us-gaap_DividendsCash_2fa690cf-71bd-4ab9-bc49-0f7b1c7ef8dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesOutstanding_44117343-2919-4f3a-bf4b-a8fd9a9a9811" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesOutstanding"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:to="loc_us-gaap_SharesOutstanding_44117343-2919-4f3a-bf4b-a8fd9a9a9811" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_4fe9dc2d-1bc9-48f9-8290-6ad906e4398f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c12311c7-0779-4f89-b9c0-f03dbf4970c8" xlink:to="loc_us-gaap_StockholdersEquity_4fe9dc2d-1bc9-48f9-8290-6ad906e4398f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquityParenthetical" xlink:type="simple" xlink:href="alg-20221231.xsd#ConsolidatedStatementsofStockholdersEquityParenthetical"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquityParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_4974f305-bb4a-4493-88c9-bd277454e248" 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_CommonStockDividendsPerShareCashPaid_5738446b-15c1-467a-b59f-c0077f8ffbeb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockDividendsPerShareCashPaid"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_4974f305-bb4a-4493-88c9-bd277454e248" xlink:to="loc_us-gaap_CommonStockDividendsPerShareCashPaid_5738446b-15c1-467a-b59f-c0077f8ffbeb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows" xlink:type="simple" xlink:href="alg-20221231.xsd#ConsolidatedStatementsofCashFlows"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract_256c7410-1ef1-4742-a627-6298ffbb2094" 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_ee0f4c12-3966-442e-a725-b66626dd65fd" 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_256c7410-1ef1-4742-a627-6298ffbb2094" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_ee0f4c12-3966-442e-a725-b66626dd65fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_1b9702a2-884e-450d-945d-add4fc5d86ab" 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_ee0f4c12-3966-442e-a725-b66626dd65fd" xlink:to="loc_us-gaap_NetIncomeLoss_1b9702a2-884e-450d-945d-add4fc5d86ab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_e8605107-d64e-4e9f-949b-43249452f571" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_ee0f4c12-3966-442e-a725-b66626dd65fd" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_e8605107-d64e-4e9f-949b-43249452f571" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_abbdffdf-0fff-4acd-8052-b7d4a3e1e34c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_e8605107-d64e-4e9f-949b-43249452f571" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_abbdffdf-0fff-4acd-8052-b7d4a3e1e34c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation_b892ddf5-c8f7-4455-b005-da91dd8e665f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Depreciation"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_e8605107-d64e-4e9f-949b-43249452f571" xlink:to="loc_us-gaap_Depreciation_b892ddf5-c8f7-4455-b005-da91dd8e665f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquipmentExpense_1097d1c2-7217-48fa-ba28-7374ab765064" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquipmentExpense"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_e8605107-d64e-4e9f-949b-43249452f571" xlink:to="loc_us-gaap_EquipmentExpense_1097d1c2-7217-48fa-ba28-7374ab765064" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_38220cfb-eecf-4eee-b106-8d0747fd09a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfIntangibleAssets"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_e8605107-d64e-4e9f-949b-43249452f571" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_38220cfb-eecf-4eee-b106-8d0747fd09a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfFinancingCosts_2da65638-a32b-471f-9eea-32f7b5bb854e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfFinancingCosts"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_e8605107-d64e-4e9f-949b-43249452f571" xlink:to="loc_us-gaap_AmortizationOfFinancingCosts_2da65638-a32b-471f-9eea-32f7b5bb854e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_e0405ff5-720a-4d8a-b397-4d4cb61e38df" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_e8605107-d64e-4e9f-949b-43249452f571" xlink:to="loc_us-gaap_ShareBasedCompensation_e0405ff5-720a-4d8a-b397-4d4cb61e38df" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_8a4316a7-8767-40ca-9876-ccaea3cad5be" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_e8605107-d64e-4e9f-949b-43249452f571" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_8a4316a7-8767-40ca-9876-ccaea3cad5be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_a79715a1-6acf-49bb-9e65-db7816150dd2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_e8605107-d64e-4e9f-949b-43249452f571" xlink:to="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_a79715a1-6acf-49bb-9e65-db7816150dd2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_93fbd306-fe1c-444a-b8ae-9c0ce2d3cc31" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_ee0f4c12-3966-442e-a725-b66626dd65fd" xlink:to="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_93fbd306-fe1c-444a-b8ae-9c0ce2d3cc31" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_c1b05c93-a398-4feb-8a45-1d34fbe43882" 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_93fbd306-fe1c-444a-b8ae-9c0ce2d3cc31" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_c1b05c93-a398-4feb-8a45-1d34fbe43882" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_03c8ec39-b7f9-423a-b0f9-911c0a228057" 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_93fbd306-fe1c-444a-b8ae-9c0ce2d3cc31" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_03c8ec39-b7f9-423a-b0f9-911c0a228057" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_IncreaseDecreaseInRentalEquipment_fa5e0bac-32f2-4e3e-8ba7-2cc4dc98b106" xlink:href="alg-20221231.xsd#alg_IncreaseDecreaseInRentalEquipment"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_93fbd306-fe1c-444a-b8ae-9c0ce2d3cc31" xlink:to="loc_alg_IncreaseDecreaseInRentalEquipment_fa5e0bac-32f2-4e3e-8ba7-2cc4dc98b106" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_f2928119-be2c-48d8-bc51-9bd7de9d09e1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_93fbd306-fe1c-444a-b8ae-9c0ce2d3cc31" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_f2928119-be2c-48d8-bc51-9bd7de9d09e1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_9f44f5e9-351a-43c7-9629-beb2d6c89ef8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_93fbd306-fe1c-444a-b8ae-9c0ce2d3cc31" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_9f44f5e9-351a-43c7-9629-beb2d6c89ef8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable_6344b7b2-56b4-481e-9dfe-b3dff54058a5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_93fbd306-fe1c-444a-b8ae-9c0ce2d3cc31" xlink:to="loc_us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable_6344b7b2-56b4-481e-9dfe-b3dff54058a5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_b4a0efcd-9049-4a3f-87b0-7852a413e146" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccruedTaxesPayable"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_93fbd306-fe1c-444a-b8ae-9c0ce2d3cc31" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_b4a0efcd-9049-4a3f-87b0-7852a413e146" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities_9de9407d-b955-4e23-8291-479520df5925" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_93fbd306-fe1c-444a-b8ae-9c0ce2d3cc31" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities_9de9407d-b955-4e23-8291-479520df5925" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_28b6fde9-ab2f-4767-b85c-d0352cbdc8b4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_ee0f4c12-3966-442e-a725-b66626dd65fd" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_28b6fde9-ab2f-4767-b85c-d0352cbdc8b4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_92f74753-641d-48bf-ac3c-04c02a4cae9e" 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_256c7410-1ef1-4742-a627-6298ffbb2094" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_92f74753-641d-48bf-ac3c-04c02a4cae9e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_511c0c64-c5f1-4a2d-af78-02e8454d8475" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_92f74753-641d-48bf-ac3c-04c02a4cae9e" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_511c0c64-c5f1-4a2d-af78-02e8454d8475" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_4e3a1a7e-9b5b-4677-a80d-685cb70bbc2d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_92f74753-641d-48bf-ac3c-04c02a4cae9e" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_4e3a1a7e-9b5b-4677-a80d-685cb70bbc2d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_eececf8a-b549-4af9-87a5-a97697f3a3ec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_92f74753-641d-48bf-ac3c-04c02a4cae9e" xlink:to="loc_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_eececf8a-b549-4af9-87a5-a97697f3a3ec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireIntangibleAssets_3b5d2719-6d18-4ec8-adc4-0366eb1bf2f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireIntangibleAssets"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_92f74753-641d-48bf-ac3c-04c02a4cae9e" xlink:to="loc_us-gaap_PaymentsToAcquireIntangibleAssets_3b5d2719-6d18-4ec8-adc4-0366eb1bf2f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_66eb84c6-a32a-4f38-9c8f-922f98d174e2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_92f74753-641d-48bf-ac3c-04c02a4cae9e" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_66eb84c6-a32a-4f38-9c8f-922f98d174e2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_d5dc6dfc-c5b6-4fc2-b707-9debdd6d418e" 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_256c7410-1ef1-4742-a627-6298ffbb2094" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_d5dc6dfc-c5b6-4fc2-b707-9debdd6d418e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromLinesOfCredit_079db054-a910-451a-84bb-da42775c481e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromLinesOfCredit"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_d5dc6dfc-c5b6-4fc2-b707-9debdd6d418e" xlink:to="loc_us-gaap_ProceedsFromLinesOfCredit_079db054-a910-451a-84bb-da42775c481e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfLinesOfCredit_16a6892e-94e8-457d-96d3-c5a5be2575aa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfLinesOfCredit"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_d5dc6dfc-c5b6-4fc2-b707-9debdd6d418e" xlink:to="loc_us-gaap_RepaymentsOfLinesOfCredit_16a6892e-94e8-457d-96d3-c5a5be2575aa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromRepaymentsOfOtherLongTermDebt_a7a171c8-203b-416a-9af6-9ba4a7c4e292" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromRepaymentsOfOtherLongTermDebt"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_d5dc6dfc-c5b6-4fc2-b707-9debdd6d418e" xlink:to="loc_us-gaap_ProceedsFromRepaymentsOfOtherLongTermDebt_a7a171c8-203b-416a-9af6-9ba4a7c4e292" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt_461e05c5-c50f-4a97-8fb5-e068504fa412" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_d5dc6dfc-c5b6-4fc2-b707-9debdd6d418e" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt_461e05c5-c50f-4a97-8fb5-e068504fa412" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDebtIssuanceCosts_4500e2f7-919c-415d-b120-751eb82f2801" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDebtIssuanceCosts"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_d5dc6dfc-c5b6-4fc2-b707-9debdd6d418e" xlink:to="loc_us-gaap_PaymentsOfDebtIssuanceCosts_4500e2f7-919c-415d-b120-751eb82f2801" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDividendsCommonStock_85964600-7d9e-4ef3-85e3-35baf2b0633d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDividendsCommonStock"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_d5dc6dfc-c5b6-4fc2-b707-9debdd6d418e" xlink:to="loc_us-gaap_PaymentsOfDividendsCommonStock_85964600-7d9e-4ef3-85e3-35baf2b0633d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfCommonStock_312d0252-a9ec-467f-94f5-c6ab453557fb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_d5dc6dfc-c5b6-4fc2-b707-9debdd6d418e" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfCommonStock_312d0252-a9ec-467f-94f5-c6ab453557fb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_PaymentsForRepurchaseOfTreasuryStock_e13e481a-5796-4aba-9c9e-9732cad5ecfb" xlink:href="alg-20221231.xsd#alg_PaymentsForRepurchaseOfTreasuryStock"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_d5dc6dfc-c5b6-4fc2-b707-9debdd6d418e" xlink:to="loc_alg_PaymentsForRepurchaseOfTreasuryStock_e13e481a-5796-4aba-9c9e-9732cad5ecfb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_35f5d00d-5f9f-4742-a6b3-5a65e66eddb1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_d5dc6dfc-c5b6-4fc2-b707-9debdd6d418e" xlink:to="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_35f5d00d-5f9f-4742-a6b3-5a65e66eddb1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_d52b93fe-b2a8-45d5-a566-8a1cb47788a0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_d5dc6dfc-c5b6-4fc2-b707-9debdd6d418e" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_d52b93fe-b2a8-45d5-a566-8a1cb47788a0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_3fde9cd7-c01f-4012-ac9a-09a9858cb101" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_256c7410-1ef1-4742-a627-6298ffbb2094" xlink:to="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_3fde9cd7-c01f-4012-ac9a-09a9858cb101" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_47ec668a-e453-479c-b4f8-a2d2a49975ec" 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_256c7410-1ef1-4742-a627-6298ffbb2094" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_47ec668a-e453-479c-b4f8-a2d2a49975ec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_70f31a7a-f1a3-4c13-a0c3-ce8757c17798" 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_256c7410-1ef1-4742-a627-6298ffbb2094" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_70f31a7a-f1a3-4c13-a0c3-ce8757c17798" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_bbab5a4a-c96b-4202-9f09-81146a0ab6b6" 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_256c7410-1ef1-4742-a627-6298ffbb2094" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_bbab5a4a-c96b-4202-9f09-81146a0ab6b6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplementalCashFlowInformationAbstract_e3736b1c-058d-4dc5-aeeb-98dbbe7093c0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalCashFlowInformationAbstract"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_256c7410-1ef1-4742-a627-6298ffbb2094" xlink:to="loc_us-gaap_SupplementalCashFlowInformationAbstract_e3736b1c-058d-4dc5-aeeb-98dbbe7093c0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestPaidNet_775e9157-2d7f-4451-8935-3f9284b57514" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestPaidNet"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SupplementalCashFlowInformationAbstract_e3736b1c-058d-4dc5-aeeb-98dbbe7093c0" xlink:to="loc_us-gaap_InterestPaidNet_775e9157-2d7f-4451-8935-3f9284b57514" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxesPaidNet_5c5b6d45-fdf4-44ce-a392-232a1fcb341d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxesPaidNet"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SupplementalCashFlowInformationAbstract_e3736b1c-058d-4dc5-aeeb-98dbbe7093c0" xlink:to="loc_us-gaap_IncomeTaxesPaidNet_5c5b6d45-fdf4-44ce-a392-232a1fcb341d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/SignificantAccountingPolicies" xlink:type="simple" xlink:href="alg-20221231.xsd#SignificantAccountingPolicies"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/SignificantAccountingPolicies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_fa44e677-6a59-4b9b-94e4-a26994d28dc7" 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_1caa0b70-11a2-4896-8318-136fe15bf0cf" 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_fa44e677-6a59-4b9b-94e4-a26994d28dc7" xlink:to="loc_us-gaap_SignificantAccountingPoliciesTextBlock_1caa0b70-11a2-4896-8318-136fe15bf0cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/AccountingPronouncements" xlink:type="simple" xlink:href="alg-20221231.xsd#AccountingPronouncements"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/AccountingPronouncements" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingChangesAndErrorCorrectionsAbstract_7a219af9-3338-4bab-8a08-b92dc250ec3e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingChangesAndErrorCorrectionsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_225a83de-15fb-409b-b168-348373d9d45e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingChangesAndErrorCorrectionsAbstract_7a219af9-3338-4bab-8a08-b92dc250ec3e" xlink:to="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_225a83de-15fb-409b-b168-348373d9d45e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/BusinessCombinations" xlink:type="simple" xlink:href="alg-20221231.xsd#BusinessCombinations"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/BusinessCombinations" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract_8baa1959-b280-4154-999d-94407dc8cedb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationDisclosureTextBlock_c90e144d-2c49-42f3-8928-d15455f5c769" 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_BusinessCombinationAndAssetAcquisitionAbstract_8baa1959-b280-4154-999d-94407dc8cedb" xlink:to="loc_us-gaap_BusinessCombinationDisclosureTextBlock_c90e144d-2c49-42f3-8928-d15455f5c769" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/EarningsPerShare" xlink:type="simple" xlink:href="alg-20221231.xsd#EarningsPerShare"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/EarningsPerShare" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_d8caf22f-41f3-49b9-8024-cda197888685" 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_02963846-56d6-48d8-87e1-c51898876967" 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_d8caf22f-41f3-49b9-8024-cda197888685" xlink:to="loc_us-gaap_EarningsPerShareTextBlock_02963846-56d6-48d8-87e1-c51898876967" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/ValuationandQualifyingAccounts" xlink:type="simple" xlink:href="alg-20221231.xsd#ValuationandQualifyingAccounts"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/ValuationandQualifyingAccounts" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesAbstract_a03efdf4-8d1a-469c-a6c0-af883db8f4d7" 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_1d57229f-be82-4108-8870-8887d5b3f5ca" 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_a03efdf4-8d1a-469c-a6c0-af883db8f4d7" xlink:to="loc_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_1d57229f-be82-4108-8870-8887d5b3f5ca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/Inventories" xlink:type="simple" xlink:href="alg-20221231.xsd#Inventories"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/Inventories" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_4d7b0ca7-35be-498a-bdad-820b3a6f0dcb" 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_2727054b-54f2-4a16-a5ee-409dc3f63d79" 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_4d7b0ca7-35be-498a-bdad-820b3a6f0dcb" xlink:to="loc_us-gaap_InventoryDisclosureTextBlock_2727054b-54f2-4a16-a5ee-409dc3f63d79" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/PropertyPlantandEquipment" xlink:type="simple" xlink:href="alg-20221231.xsd#PropertyPlantandEquipment"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/PropertyPlantandEquipment" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_5f5424ee-bef6-4708-8c67-625128c4de78" 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_b635b85b-7968-446e-8a6a-9f9154b90f36" 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_5f5424ee-bef6-4708-8c67-625128c4de78" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_b635b85b-7968-446e-8a6a-9f9154b90f36" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/Goodwill" xlink:type="simple" xlink:href="alg-20221231.xsd#Goodwill"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/Goodwill" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_ccff8bb2-6cd5-47db-a0b4-1201ef21b101" 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_GoodwillDisclosureTextBlock_b606ee1c-bbb6-4a1e-b75a-991c02057eb5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_ccff8bb2-6cd5-47db-a0b4-1201ef21b101" xlink:to="loc_us-gaap_GoodwillDisclosureTextBlock_b606ee1c-bbb6-4a1e-b75a-991c02057eb5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/IntangibleAssets" xlink:type="simple" xlink:href="alg-20221231.xsd#IntangibleAssets"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/IntangibleAssets" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_24727d5f-ba5b-4728-a494-21065f0d100d" 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_IntangibleAssetsDisclosureTextBlock_e3ec325a-e228-438f-8f70-2c139137855b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_24727d5f-ba5b-4728-a494-21065f0d100d" xlink:to="loc_us-gaap_IntangibleAssetsDisclosureTextBlock_e3ec325a-e228-438f-8f70-2c139137855b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/Leases" xlink:type="simple" xlink:href="alg-20221231.xsd#Leases"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/Leases" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_a47b5dd3-f977-45c1-9260-e737d5c71302" 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_1976ed12-cd6e-4c7a-92e4-1d37a258f101" 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_a47b5dd3-f977-45c1-9260-e737d5c71302" xlink:to="loc_us-gaap_LesseeOperatingLeasesTextBlock_1976ed12-cd6e-4c7a-92e4-1d37a258f101" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeFinanceLeasesTextBlock_e1bdb6eb-c109-402b-87f7-879ad4c3971b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeFinanceLeasesTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_a47b5dd3-f977-45c1-9260-e737d5c71302" xlink:to="loc_us-gaap_LesseeFinanceLeasesTextBlock_e1bdb6eb-c109-402b-87f7-879ad4c3971b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/AccruedLiabilities" xlink:type="simple" xlink:href="alg-20221231.xsd#AccruedLiabilities"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/AccruedLiabilities" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PayablesAndAccrualsAbstract_0b6faba6-0d46-4707-b83e-3d639064b4d0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PayablesAndAccrualsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_7868ef88-5223-4fd2-85de-fe23b62e7599" 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_PayablesAndAccrualsAbstract_0b6faba6-0d46-4707-b83e-3d639064b4d0" xlink:to="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_7868ef88-5223-4fd2-85de-fe23b62e7599" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/FairValueofFinancialInstruments" xlink:type="simple" xlink:href="alg-20221231.xsd#FairValueofFinancialInstruments"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/FairValueofFinancialInstruments" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_7eea41c0-3aa6-46ba-ae6d-0d4cedf51c4a" 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_71fc4abe-8f64-4f5e-9357-a7a1f6d32b0f" 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_7eea41c0-3aa6-46ba-ae6d-0d4cedf51c4a" xlink:to="loc_us-gaap_FairValueDisclosuresTextBlock_71fc4abe-8f64-4f5e-9357-a7a1f6d32b0f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/LongTermDebt" xlink:type="simple" xlink:href="alg-20221231.xsd#LongTermDebt"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/LongTermDebt" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_034f61e9-a636-41d4-956d-25c26bc4ae1e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureTextBlock_a75a12b2-cb9c-4a24-bf2b-a56fa9f3cdf8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_034f61e9-a636-41d4-956d-25c26bc4ae1e" xlink:to="loc_us-gaap_DebtDisclosureTextBlock_a75a12b2-cb9c-4a24-bf2b-a56fa9f3cdf8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/IncomeTaxes" xlink:type="simple" xlink:href="alg-20221231.xsd#IncomeTaxes"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/IncomeTaxes" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_5b0e0d1e-cc27-4ad4-bf8e-083dc9bb9ae3" 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_821a4438-6061-4291-8fb9-0f9c04b72f5f" 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_5b0e0d1e-cc27-4ad4-bf8e-083dc9bb9ae3" xlink:to="loc_us-gaap_IncomeTaxDisclosureTextBlock_821a4438-6061-4291-8fb9-0f9c04b72f5f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/CommonStock" xlink:type="simple" xlink:href="alg-20221231.xsd#CommonStock"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/CommonStock" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_13e81147-49f9-49c5-9efe-97d6a8a88fe0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_9ccec877-0dcd-4792-9df3-0d02868e2c1a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_13e81147-49f9-49c5-9efe-97d6a8a88fe0" xlink:to="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_9ccec877-0dcd-4792-9df3-0d02868e2c1a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/StockOptions" xlink:type="simple" xlink:href="alg-20221231.xsd#StockOptions"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/StockOptions" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_53493cdb-17cd-4397-bbe9-ccb483b9aceb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_4e4808d7-4a33-4320-a7f6-057a509ac43c" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_53493cdb-17cd-4397-bbe9-ccb483b9aceb" xlink:to="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_4e4808d7-4a33-4320-a7f6-057a509ac43c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RetirementBenefitPlans" xlink:type="simple" xlink:href="alg-20221231.xsd#RetirementBenefitPlans"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/RetirementBenefitPlans" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_5dc24778-c934-4e23-952d-1a253062a6e2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_c2580693-e5ac-4409-b715-1091a7b9e1af" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_5dc24778-c934-4e23-952d-1a253062a6e2" xlink:to="loc_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_c2580693-e5ac-4409-b715-1091a7b9e1af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RevenueandSegmentReporting" xlink:type="simple" xlink:href="alg-20221231.xsd#RevenueandSegmentReporting"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/RevenueandSegmentReporting" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_aa192917-3f2f-4379-8489-25c71bfe57e2" 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_SegmentReportingDisclosureTextBlock_bde56f2e-c402-4cd3-a496-bb20a22afb6a" 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_SegmentReportingAbstract_aa192917-3f2f-4379-8489-25c71bfe57e2" xlink:to="loc_us-gaap_SegmentReportingDisclosureTextBlock_bde56f2e-c402-4cd3-a496-bb20a22afb6a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLoss" xlink:type="simple" xlink:href="alg-20221231.xsd#AccumulatedOtherComprehensiveLoss"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLoss" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_2648ac85-bff3-427d-b904-c3479a534725" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNoteTextBlock_a9e64037-9aa0-45a2-84a8-44da5ab405af" 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_EquityAbstract_2648ac85-bff3-427d-b904-c3479a534725" xlink:to="loc_us-gaap_ComprehensiveIncomeNoteTextBlock_a9e64037-9aa0-45a2-84a8-44da5ab405af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/InternationalOperationsandGeographicInformation" xlink:type="simple" xlink:href="alg-20221231.xsd#InternationalOperationsandGeographicInformation"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/InternationalOperationsandGeographicInformation" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_bf6bb10e-b342-4f74-a59f-ed4370bc547c" 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_alg_InternationalOperationsAndGeographicInformationTextBlock_04004334-41bf-41bc-bc7f-26ed092f40ae" xlink:href="alg-20221231.xsd#alg_InternationalOperationsAndGeographicInformationTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_bf6bb10e-b342-4f74-a59f-ed4370bc547c" xlink:to="loc_alg_InternationalOperationsAndGeographicInformationTextBlock_04004334-41bf-41bc-bc7f-26ed092f40ae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/CommitmentsandContingencies" xlink:type="simple" xlink:href="alg-20221231.xsd#CommitmentsandContingencies"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/CommitmentsandContingencies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_9aaf13bc-0104-4128-a00b-bd622cdac53b" 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_755b873a-5c96-4cc1-8392-cda671fb0741" 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_9aaf13bc-0104-4128-a00b-bd622cdac53b" xlink:to="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_755b873a-5c96-4cc1-8392-cda671fb0741" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies" xlink:type="simple" xlink:href="alg-20221231.xsd#SignificantAccountingPoliciesPolicies"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" 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_f0651263-909e-4ac8-906d-75d8a3ca4dbc" 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_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_ConsolidationPolicyTextBlock_f0651263-909e-4ac8-906d-75d8a3ca4dbc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UseOfEstimates_7a343aaa-c912-4452-9c7c-27802a91ed98" 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_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_UseOfEstimates_7a343aaa-c912-4452-9c7c-27802a91ed98" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_0613302c-2574-4ab6-b72b-da8c8630a39a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_0613302c-2574-4ab6-b72b-da8c8630a39a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock_f9e5bd2a-b250-4973-93ee-3184ab40abfc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock_f9e5bd2a-b250-4973-93ee-3184ab40abfc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskCreditRisk_d30117c8-d6b6-4400-8cab-69a35e42ddc8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskCreditRisk"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_ConcentrationRiskCreditRisk_d30117c8-d6b6-4400-8cab-69a35e42ddc8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryPolicyTextBlock_10ad3329-0cef-4c93-8b5c-00f29a45d0b4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryPolicyTextBlock"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_InventoryPolicyTextBlock_10ad3329-0cef-4c93-8b5c-00f29a45d0b4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_3b334b76-0a48-4150-bfe7-03f471f38f16" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_3b334b76-0a48-4150-bfe7-03f471f38f16" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock_9cce94d1-8023-4553-961a-a7113e6220b8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock_9cce94d1-8023-4553-961a-a7113e6220b8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy_07774259-f976-4f3e-b804-5b4111e145fa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy_07774259-f976-4f3e-b804-5b4111e145fa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy_fe593cd5-188c-477e-9562-647ac63db492" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy_fe593cd5-188c-477e-9562-647ac63db492" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeasesPolicyTextBlock_69f2b0c9-11dd-4eeb-8135-098c8970bd82" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeLeasesPolicyTextBlock"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_LesseeLeasesPolicyTextBlock_69f2b0c9-11dd-4eeb-8135-098c8970bd82" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionAndOtherPostretirementPlansPensionsPolicy_48a96ea4-9b14-4d91-9326-0db86c5f8aa8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionAndOtherPostretirementPlansPensionsPolicy"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_PensionAndOtherPostretirementPlansPensionsPolicy_48a96ea4-9b14-4d91-9326-0db86c5f8aa8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_6d406f64-2475-4c78-837f-c7dec2994b0c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_6d406f64-2475-4c78-837f-c7dec2994b0c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeasesPolicyTextBlock_d2b0f26c-9a2a-487b-a514-e8f4bfb5f815" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeLeasesPolicyTextBlock"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_LesseeLeasesPolicyTextBlock_d2b0f26c-9a2a-487b-a514-e8f4bfb5f815" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock_62a5970a-6b8d-4d0f-adc3-a99b507ad6b0" xlink:href="alg-20221231.xsd#alg_RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_alg_RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock_62a5970a-6b8d-4d0f-adc3-a99b507ad6b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdvertisingCostsPolicyTextBlock_eb2379d3-c2fb-41d8-ad02-7178adb4a629" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdvertisingCostsPolicyTextBlock"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_AdvertisingCostsPolicyTextBlock_eb2379d3-c2fb-41d8-ad02-7178adb4a629" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpensePolicy_ced4dbed-12ce-4cfa-98c6-85010577d7bd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpensePolicy"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpensePolicy_ced4dbed-12ce-4cfa-98c6-85010577d7bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesPolicyTextBlock_874ad5e9-ebc7-42f3-a992-319a409796fb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesPolicyTextBlock"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_CommitmentsAndContingenciesPolicyTextBlock_874ad5e9-ebc7-42f3-a992-319a409796fb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxPolicyTextBlock_6d9c8562-4458-4b7a-af48-591a7c335ce2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxPolicyTextBlock"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_IncomeTaxPolicyTextBlock_6d9c8562-4458-4b7a-af48-591a7c335ce2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_2a90f78d-a17b-46f3-98e3-858ae5a06420" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy"/>
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_2a90f78d-a17b-46f3-98e3-858ae5a06420" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerSharePolicyTextBlock_45e7bcaa-8789-4e4d-9742-7d6970c9dbdc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerSharePolicyTextBlock"/>
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_EarningsPerSharePolicyTextBlock_45e7bcaa-8789-4e4d-9742-7d6970c9dbdc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_9e73a20f-11d2-46b7-b262-4b757bf22339" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <link:presentationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_9e73a20f-11d2-46b7-b262-4b757bf22339" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryImpairmentPolicy_f3fb85c6-815f-4e98-90d6-6f506b03ee90" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryImpairmentPolicy"/>
    <link:presentationArc order="23" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_InventoryImpairmentPolicy_f3fb85c6-815f-4e98-90d6-6f506b03ee90" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandardProductWarrantyPolicy_52f66107-38ac-431c-87a3-37b1efd41e78" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StandardProductWarrantyPolicy"/>
    <link:presentationArc order="24" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_StandardProductWarrantyPolicy_52f66107-38ac-431c-87a3-37b1efd41e78" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_81d5c66b-5efc-476b-ac6d-5870ffbe9271" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy"/>
    <link:presentationArc order="25" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_4365b515-5c95-4935-887d-f1ad5e17d521" xlink:to="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_81d5c66b-5efc-476b-ac6d-5870ffbe9271" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/SignificantAccountingPoliciesTables" xlink:type="simple" xlink:href="alg-20221231.xsd#SignificantAccountingPoliciesTables"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/SignificantAccountingPoliciesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_04100db8-5616-48bc-a342-41c6fcfbc8e2" 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_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_2b225b09-7a49-47d3-a3d5-2a7a819e0e9f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_04100db8-5616-48bc-a342-41c6fcfbc8e2" xlink:to="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_2b225b09-7a49-47d3-a3d5-2a7a819e0e9f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/EarningsPerShareTables" xlink:type="simple" xlink:href="alg-20221231.xsd#EarningsPerShareTables"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/EarningsPerShareTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_9851c41a-8479-4e82-8c54-9973e0ea401f" 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_4b901f82-c8f1-40df-b734-bba4438147da" 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_9851c41a-8479-4e82-8c54-9973e0ea401f" xlink:to="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_4b901f82-c8f1-40df-b734-bba4438147da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/ValuationandQualifyingAccountsTables" xlink:type="simple" xlink:href="alg-20221231.xsd#ValuationandQualifyingAccountsTables"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/ValuationandQualifyingAccountsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesAbstract_6049acfe-6bfc-490b-b9b1-05ba4c007e41" 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_alg_ScheduleOfValuationAndQualifyingAccountsTableTextBlock_c5574629-bd54-409e-b3b8-e74ada3e6a2a" xlink:href="alg-20221231.xsd#alg_ScheduleOfValuationAndQualifyingAccountsTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReceivablesAbstract_6049acfe-6bfc-490b-b9b1-05ba4c007e41" xlink:to="loc_alg_ScheduleOfValuationAndQualifyingAccountsTableTextBlock_c5574629-bd54-409e-b3b8-e74ada3e6a2a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/InventoriesTables" xlink:type="simple" xlink:href="alg-20221231.xsd#InventoriesTables"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/InventoriesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_f2cb2f36-ce25-42f5-bd0e-337d4feb0e06" 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_b9452652-f461-4323-8558-034636827263" 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_f2cb2f36-ce25-42f5-bd0e-337d4feb0e06" xlink:to="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_b9452652-f461-4323-8558-034636827263" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/PropertyPlantandEquipmentTables" xlink:type="simple" xlink:href="alg-20221231.xsd#PropertyPlantandEquipmentTables"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/PropertyPlantandEquipmentTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_6923a29c-766c-4373-bda4-853c49f53af1" 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_05314336-ec94-44c4-a455-e3806cf7646f" 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_6923a29c-766c-4373-bda4-853c49f53af1" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_05314336-ec94-44c4-a455-e3806cf7646f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/GoodwillTables" xlink:type="simple" xlink:href="alg-20221231.xsd#GoodwillTables"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/GoodwillTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_d1d8a313-ebbd-447a-b762-6185bef192a0" 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_9f8a88fe-cd19-42c0-98c5-30d66d63edd5" 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_d1d8a313-ebbd-447a-b762-6185bef192a0" xlink:to="loc_us-gaap_ScheduleOfGoodwillTextBlock_9f8a88fe-cd19-42c0-98c5-30d66d63edd5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/IntangibleAssetsTables" xlink:type="simple" xlink:href="alg-20221231.xsd#IntangibleAssetsTables"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/IntangibleAssetsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_07783db9-72e3-4635-8ca3-131afa367df7" 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_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_046edcf5-7105-46d9-8a8e-fcd435baeed3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_07783db9-72e3-4635-8ca3-131afa367df7" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_046edcf5-7105-46d9-8a8e-fcd435baeed3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock_38c57e2e-ccd4-4b20-a413-cc50a9f3a351" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_07783db9-72e3-4635-8ca3-131afa367df7" xlink:to="loc_us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock_38c57e2e-ccd4-4b20-a413-cc50a9f3a351" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/LeasesTables" xlink:type="simple" xlink:href="alg-20221231.xsd#LeasesTables"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/LeasesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_f0e3769f-8709-48f8-8240-0fb2b1404a9e" 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_LeaseCostTableTextBlock_f0477197-755f-4d24-bdcb-e6ce87dbddec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCostTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_f0e3769f-8709-48f8-8240-0fb2b1404a9e" xlink:to="loc_us-gaap_LeaseCostTableTextBlock_f0477197-755f-4d24-bdcb-e6ce87dbddec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_58b181f0-7901-4e0e-b892-704646ba007d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_f0e3769f-8709-48f8-8240-0fb2b1404a9e" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_58b181f0-7901-4e0e-b892-704646ba007d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_AssetsAndLiabilitiesLesseeTableTextBlock_bf0c5946-b49d-43a5-b19b-857de35d9238" xlink:href="alg-20221231.xsd#alg_AssetsAndLiabilitiesLesseeTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_f0e3769f-8709-48f8-8240-0fb2b1404a9e" xlink:to="loc_alg_AssetsAndLiabilitiesLesseeTableTextBlock_bf0c5946-b49d-43a5-b19b-857de35d9238" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock_7e1b9a1a-4ba6-4d10-9b74-d03b4b3196e3" xlink:href="alg-20221231.xsd#alg_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_f0e3769f-8709-48f8-8240-0fb2b1404a9e" xlink:to="loc_alg_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock_7e1b9a1a-4ba6-4d10-9b74-d03b4b3196e3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/AccruedLiabilitiesTables" xlink:type="simple" xlink:href="alg-20221231.xsd#AccruedLiabilitiesTables"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/AccruedLiabilitiesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PayablesAndAccrualsAbstract_a3074129-ff78-4129-ad0e-29386beb037d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PayablesAndAccrualsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_103411ba-0293-4c3f-bf41-b5d89e2e1b0b" 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_PayablesAndAccrualsAbstract_a3074129-ff78-4129-ad0e-29386beb037d" xlink:to="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_103411ba-0293-4c3f-bf41-b5d89e2e1b0b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/LongTermDebtTables" xlink:type="simple" xlink:href="alg-20221231.xsd#LongTermDebtTables"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/LongTermDebtTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_200e1da1-c190-4ff0-8349-0414107a25d0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDebtInstrumentsTextBlock_6265faef-4b07-49e6-a757-7f2129ea3a98" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDebtInstrumentsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_200e1da1-c190-4ff0-8349-0414107a25d0" xlink:to="loc_us-gaap_ScheduleOfDebtInstrumentsTextBlock_6265faef-4b07-49e6-a757-7f2129ea3a98" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/IncomeTaxesTables" xlink:type="simple" xlink:href="alg-20221231.xsd#IncomeTaxesTables"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/IncomeTaxesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_58143f90-1c96-4ca5-b368-b00263a3a7cc" 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_d530d834-db75-47a9-93df-655139f3a6c2" 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_58143f90-1c96-4ca5-b368-b00263a3a7cc" xlink:to="loc_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_d530d834-db75-47a9-93df-655139f3a6c2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_71730ad5-d250-400b-b980-7ab620f75f7a" 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_58143f90-1c96-4ca5-b368-b00263a3a7cc" xlink:to="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_71730ad5-d250-400b-b980-7ab620f75f7a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_d04dae92-fa09-4fd2-b3fb-82fd7b0c314e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_58143f90-1c96-4ca5-b368-b00263a3a7cc" xlink:to="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_d04dae92-fa09-4fd2-b3fb-82fd7b0c314e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_71af1636-a96d-4ced-b986-6882ed6337bf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_58143f90-1c96-4ca5-b368-b00263a3a7cc" xlink:to="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_71af1636-a96d-4ced-b986-6882ed6337bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_d8bd55e5-e80c-4932-8438-c8590f96ebc9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_58143f90-1c96-4ca5-b368-b00263a3a7cc" xlink:to="loc_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_d8bd55e5-e80c-4932-8438-c8590f96ebc9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/StockOptionsTables" xlink:type="simple" xlink:href="alg-20221231.xsd#StockOptionsTables"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/StockOptionsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_030389a6-c2d4-40bb-a319-2f00d20a1226" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_4e521e02-d688-4784-bf6e-f6a295a9f02e" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_030389a6-c2d4-40bb-a319-2f00d20a1226" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_4e521e02-d688-4784-bf6e-f6a295a9f02e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_a3e72b17-a3b4-4b46-a24e-a73b1f687904" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_4e521e02-d688-4784-bf6e-f6a295a9f02e" xlink:to="loc_us-gaap_AwardTypeAxis_a3e72b17-a3b4-4b46-a24e-a73b1f687904" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e0540389-0ca5-4c73-93ac-69e26d81361a" 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_a3e72b17-a3b4-4b46-a24e-a73b1f687904" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e0540389-0ca5-4c73-93ac-69e26d81361a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_QualifiedStockOptionsMember_24bce6bc-7d64-4d17-9419-ab8a04fa59b7" xlink:href="alg-20221231.xsd#alg_QualifiedStockOptionsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e0540389-0ca5-4c73-93ac-69e26d81361a" xlink:to="loc_alg_QualifiedStockOptionsMember_24bce6bc-7d64-4d17-9419-ab8a04fa59b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_NonQualifiedOptionsMember_7fff0b71-599a-4310-b33e-f1a3e47a3b53" xlink:href="alg-20221231.xsd#alg_NonQualifiedOptionsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e0540389-0ca5-4c73-93ac-69e26d81361a" xlink:to="loc_alg_NonQualifiedOptionsMember_7fff0b71-599a-4310-b33e-f1a3e47a3b53" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5147ae17-505f-436a-a01d-0388b3099d2d" 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_4e521e02-d688-4784-bf6e-f6a295a9f02e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5147ae17-505f-436a-a01d-0388b3099d2d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_75bd5dd9-91a0-47d2-a0b8-454d4e8ef074" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5147ae17-505f-436a-a01d-0388b3099d2d" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_75bd5dd9-91a0-47d2-a0b8-454d4e8ef074" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock_7fca90e2-a37b-4450-8958-7bf3420e5427" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5147ae17-505f-436a-a01d-0388b3099d2d" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock_7fca90e2-a37b-4450-8958-7bf3420e5427" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_86b3c7ea-a710-4614-b893-62d082944d31" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5147ae17-505f-436a-a01d-0388b3099d2d" xlink:to="loc_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_86b3c7ea-a710-4614-b893-62d082944d31" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansTables" xlink:type="simple" xlink:href="alg-20221231.xsd#RetirementBenefitPlansTables"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/RetirementBenefitPlansTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_356099b9-25e8-4fe0-afb7-00a4b4c467ab" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_62d4711f-f340-4758-993a-b4e306f2e2ed" 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_us-gaap_CompensationAndRetirementDisclosureAbstract_356099b9-25e8-4fe0-afb7-00a4b4c467ab" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_62d4711f-f340-4758-993a-b4e306f2e2ed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_f3a5533f-6733-4642-a64b-e9a5c1208107" 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_62d4711f-f340-4758-993a-b4e306f2e2ed" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_f3a5533f-6733-4642-a64b-e9a5c1208107" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_32528299-4d73-48a4-9f7c-722cba682ce6" 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_f3a5533f-6733-4642-a64b-e9a5c1208107" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_32528299-4d73-48a4-9f7c-722cba682ce6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_1bf518f0-56a7-44f4-a8b2-0cbc0b1217eb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionPlansDefinedBenefitMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_32528299-4d73-48a4-9f7c-722cba682ce6" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_1bf518f0-56a7-44f4-a8b2-0cbc0b1217eb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_6224f5ec-9277-4ccc-9e1f-21dbe9f1823d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_32528299-4d73-48a4-9f7c-722cba682ce6" xlink:to="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_6224f5ec-9277-4ccc-9e1f-21dbe9f1823d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_778aa3e0-b501-4723-ada6-eb18a77923ce" 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_62d4711f-f340-4758-993a-b4e306f2e2ed" xlink:to="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_778aa3e0-b501-4723-ada6-eb18a77923ce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock_4e87249b-9672-4d8f-b292-453c08c4e0f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_778aa3e0-b501-4723-ada6-eb18a77923ce" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock_4e87249b-9672-4d8f-b292-453c08c4e0f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAssumptionsUsedTableTextBlock_651e35af-1253-42a7-9a67-ab1bf4aaea96" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAssumptionsUsedTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_778aa3e0-b501-4723-ada6-eb18a77923ce" xlink:to="loc_us-gaap_ScheduleOfAssumptionsUsedTableTextBlock_651e35af-1253-42a7-9a67-ab1bf4aaea96" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfNetBenefitCostsTableTextBlock_dd8b6538-8360-45ca-8f88-e9c4ce6cbb72" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfNetBenefitCostsTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_778aa3e0-b501-4723-ada6-eb18a77923ce" xlink:to="loc_us-gaap_ScheduleOfNetBenefitCostsTableTextBlock_dd8b6538-8360-45ca-8f88-e9c4ce6cbb72" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock_2c95654f-bf89-4bfd-a0b7-f007dd713253" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_778aa3e0-b501-4723-ada6-eb18a77923ce" xlink:to="loc_us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock_2c95654f-bf89-4bfd-a0b7-f007dd713253" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock_5113fb14-fde7-432f-95db-b0a0caea76a4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_778aa3e0-b501-4723-ada6-eb18a77923ce" xlink:to="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock_5113fb14-fde7-432f-95db-b0a0caea76a4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock_ba6d35d0-9ce8-434c-a958-248c94962481" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_778aa3e0-b501-4723-ada6-eb18a77923ce" xlink:to="loc_us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock_ba6d35d0-9ce8-434c-a958-248c94962481" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock_7c04d366-cff8-4ee4-b2bf-3e607ed3618e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_778aa3e0-b501-4723-ada6-eb18a77923ce" xlink:to="loc_us-gaap_ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock_7c04d366-cff8-4ee4-b2bf-3e607ed3618e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RevenueandSegmentReportingTables" xlink:type="simple" xlink:href="alg-20221231.xsd#RevenueandSegmentReportingTables"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/RevenueandSegmentReportingTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_8e54327c-b80c-40ad-aa8f-f8bb777d2f57" 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_DisaggregationOfRevenueTableTextBlock_6731403a-df32-401a-8bc4-61a1636551a8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_8e54327c-b80c-40ad-aa8f-f8bb777d2f57" xlink:to="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_6731403a-df32-401a-8bc4-61a1636551a8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_e9dce41b-5e22-4a8d-84dc-3d608ab513d9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_8e54327c-b80c-40ad-aa8f-f8bb777d2f57" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_e9dce41b-5e22-4a8d-84dc-3d608ab513d9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossTables" xlink:type="simple" xlink:href="alg-20221231.xsd#AccumulatedOtherComprehensiveLossTables"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_887accff-6cfd-46df-b380-5b2a65a0e495" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock_ff26aa9d-6f3c-4a49-b523-573fa489dc60" 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_EquityAbstract_887accff-6cfd-46df-b380-5b2a65a0e495" xlink:to="loc_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock_ff26aa9d-6f3c-4a49-b523-573fa489dc60" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationTables" xlink:type="simple" xlink:href="alg-20221231.xsd#InternationalOperationsandGeographicInformationTables"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_58a781f0-9758-438d-9bcb-8ff38cd1b80b" 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_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock_2cc7fc46-d599-46b2-9d3c-43bf855d6452" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_58a781f0-9758-438d-9bcb-8ff38cd1b80b" xlink:to="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock_2cc7fc46-d599-46b2-9d3c-43bf855d6452" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock_1e7a2538-8715-48cc-80aa-91af289a2775" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_58a781f0-9758-438d-9bcb-8ff38cd1b80b" xlink:to="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock_1e7a2538-8715-48cc-80aa-91af289a2775" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#SignificantAccountingPoliciesAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_40e34745-1450-4a54-bda6-105e7de0167b" 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_alg_AccountingPoliciesTable_1664d0d1-e971-4939-aa45-f34c4597c657" xlink:href="alg-20221231.xsd#alg_AccountingPoliciesTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_40e34745-1450-4a54-bda6-105e7de0167b" xlink:to="loc_alg_AccountingPoliciesTable_1664d0d1-e971-4939-aa45-f34c4597c657" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_ba0db7ce-f8dd-4a7a-a412-d92f4a818851" 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_alg_AccountingPoliciesTable_1664d0d1-e971-4939-aa45-f34c4597c657" xlink:to="loc_srt_RangeAxis_ba0db7ce-f8dd-4a7a-a412-d92f4a818851" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_5b8d1412-3cb1-4f35-aeeb-a4d11f8bfedb" 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_ba0db7ce-f8dd-4a7a-a412-d92f4a818851" xlink:to="loc_srt_RangeMember_5b8d1412-3cb1-4f35-aeeb-a4d11f8bfedb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_07e3a0bf-d04c-4781-8018-a54b5cb898c7" 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_5b8d1412-3cb1-4f35-aeeb-a4d11f8bfedb" xlink:to="loc_srt_MinimumMember_07e3a0bf-d04c-4781-8018-a54b5cb898c7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_8ec52665-d92d-490a-8a8c-a9dec583aa36" 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_5b8d1412-3cb1-4f35-aeeb-a4d11f8bfedb" xlink:to="loc_srt_MaximumMember_8ec52665-d92d-490a-8a8c-a9dec583aa36" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_3bdd7762-c262-4612-ab66-88814e2ae8c8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_AccountingPoliciesTable_1664d0d1-e971-4939-aa45-f34c4597c657" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_3bdd7762-c262-4612-ab66-88814e2ae8c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_3f21fc83-dc17-4dc2-8539-d075a74f4656" 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_3bdd7762-c262-4612-ab66-88814e2ae8c8" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_3f21fc83-dc17-4dc2-8539-d075a74f4656" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_06a98159-a590-422c-b42b-08a74e0f7c4f" 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_3f21fc83-dc17-4dc2-8539-d075a74f4656" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_06a98159-a590-422c-b42b-08a74e0f7c4f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_a3e262c8-1288-4571-8e27-c5d8952dadba" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_AccountingPoliciesTable_1664d0d1-e971-4939-aa45-f34c4597c657" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_a3e262c8-1288-4571-8e27-c5d8952dadba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_ed8f90a4-81a7-4f00-8c34-8c09d868d93a" 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_a3e262c8-1288-4571-8e27-c5d8952dadba" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_ed8f90a4-81a7-4f00-8c34-8c09d868d93a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquipmentMember_6a7fab28-dd1a-4708-9122-e1e97253a3c7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquipmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_ed8f90a4-81a7-4f00-8c34-8c09d868d93a" xlink:to="loc_us-gaap_EquipmentMember_6a7fab28-dd1a-4708-9122-e1e97253a3c7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_fc805b9f-4abd-4176-9d53-ee76b4036b95" 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_alg_AccountingPoliciesTable_1664d0d1-e971-4939-aa45-f34c4597c657" xlink:to="loc_us-gaap_AwardTypeAxis_fc805b9f-4abd-4176-9d53-ee76b4036b95" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_3b3ca920-b98a-4443-bb91-eb3eecc9929e" 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_fc805b9f-4abd-4176-9d53-ee76b4036b95" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_3b3ca920-b98a-4443-bb91-eb3eecc9929e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember_e25eb852-2893-429e-b719-6e06cc690c71" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_3b3ca920-b98a-4443-bb91-eb3eecc9929e" xlink:to="loc_us-gaap_EmployeeStockOptionMember_e25eb852-2893-429e-b719-6e06cc690c71" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_AccountingPoliciesLineItems_f5e12662-6043-4f0d-9284-a2a8d5fa7741" xlink:href="alg-20221231.xsd#alg_AccountingPoliciesLineItems"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_AccountingPoliciesTable_1664d0d1-e971-4939-aa45-f34c4597c657" xlink:to="loc_alg_AccountingPoliciesLineItems_f5e12662-6043-4f0d-9284-a2a8d5fa7741" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments_68c38468-829c-4b4f-a789-f7fdabf4ab8a" 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_alg_AccountingPoliciesLineItems_f5e12662-6043-4f0d-9284-a2a8d5fa7741" xlink:to="loc_us-gaap_NumberOfReportableSegments_68c38468-829c-4b4f-a789-f7fdabf4ab8a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCash_1ca5dc8a-7757-42b3-acea-e37e7abc952e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedCash"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_AccountingPoliciesLineItems_f5e12662-6043-4f0d-9284-a2a8d5fa7741" xlink:to="loc_us-gaap_RestrictedCash_1ca5dc8a-7757-42b3-acea-e37e7abc952e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife_1be03f8a-8975-4d86-aa10-f7b2a3dfa1a5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_AccountingPoliciesLineItems_f5e12662-6043-4f0d-9284-a2a8d5fa7741" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife_1be03f8a-8975-4d86-aa10-f7b2a3dfa1a5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_6e5f3265-cc80-4fe5-8717-e1d2b1c09873" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_AccountingPoliciesLineItems_f5e12662-6043-4f0d-9284-a2a8d5fa7741" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_6e5f3265-cc80-4fe5-8717-e1d2b1c09873" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdvertisingExpense_8b8dbb22-71e0-4f72-b332-5f05e1c24482" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdvertisingExpense"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_AccountingPoliciesLineItems_f5e12662-6043-4f0d-9284-a2a8d5fa7741" xlink:to="loc_us-gaap_AdvertisingExpense_8b8dbb22-71e0-4f72-b332-5f05e1c24482" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_339c5973-c985-42c7-9f49-e0a33e22fb7b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpense"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_AccountingPoliciesLineItems_f5e12662-6043-4f0d-9284-a2a8d5fa7741" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_339c5973-c985-42c7-9f49-e0a33e22fb7b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_511d782e-8180-41ca-b661-2b8cf4e09291" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_AccountingPoliciesLineItems_f5e12662-6043-4f0d-9284-a2a8d5fa7741" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_511d782e-8180-41ca-b661-2b8cf4e09291" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_93873be8-d610-48e7-b07e-70557b5a9e9c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_AccountingPoliciesLineItems_f5e12662-6043-4f0d-9284-a2a8d5fa7741" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_93873be8-d610-48e7-b07e-70557b5a9e9c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/SignificantAccountingPoliciesScheduleofFairValueAssumptionsandMethodologyDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#SignificantAccountingPoliciesScheduleofFairValueAssumptionsandMethodologyDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/SignificantAccountingPoliciesScheduleofFairValueAssumptionsandMethodologyDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_b4fd7b21-f9bc-49c6-a676-25bb164b8603" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_873a9448-1a45-434a-84d9-30197fd5c277" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_b4fd7b21-f9bc-49c6-a676-25bb164b8603" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_873a9448-1a45-434a-84d9-30197fd5c277" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_5f7148b5-1e8c-4ca0-8bce-45540c2974e8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_b4fd7b21-f9bc-49c6-a676-25bb164b8603" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_5f7148b5-1e8c-4ca0-8bce-45540c2974e8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_f18dfaee-8da8-400f-a609-dcb4764883f8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_b4fd7b21-f9bc-49c6-a676-25bb164b8603" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_f18dfaee-8da8-400f-a609-dcb4764883f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_6d3ea383-ea7c-4d6f-bb6a-93f2946cfb1d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_b4fd7b21-f9bc-49c6-a676-25bb164b8603" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_6d3ea383-ea7c-4d6f-bb6a-93f2946cfb1d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/BusinessCombinationsDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#BusinessCombinationsDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/BusinessCombinationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract_81066514-fc80-4867-a049-49d3caa184d3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_881fb072-f0f8-44fc-9a04-5c39d6816778" 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_BusinessCombinationAndAssetAcquisitionAbstract_81066514-fc80-4867-a049-49d3caa184d3" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_881fb072-f0f8-44fc-9a04-5c39d6816778" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_36542932-2e9a-4874-ab67-e3095b84584c" 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_881fb072-f0f8-44fc-9a04-5c39d6816778" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_36542932-2e9a-4874-ab67-e3095b84584c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_85294fe8-602a-4858-8fc6-b5e118f7b18c" 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_36542932-2e9a-4874-ab67-e3095b84584c" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_85294fe8-602a-4858-8fc6-b5e118f7b18c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DutchPowerCompanyBVMember_6f60c1e5-c2f0-4ac4-abc8-7d1eec13920e" xlink:href="alg-20221231.xsd#alg_DutchPowerCompanyBVMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_85294fe8-602a-4858-8fc6-b5e118f7b18c" xlink:to="loc_alg_DutchPowerCompanyBVMember_6f60c1e5-c2f0-4ac4-abc8-7d1eec13920e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_796f3c52-cb7d-42a1-b3eb-8dc06db3e12b" 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_881fb072-f0f8-44fc-9a04-5c39d6816778" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_796f3c52-cb7d-42a1-b3eb-8dc06db3e12b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_ac95c6f9-7731-41f8-afe8-98b2f7fed888" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_796f3c52-cb7d-42a1-b3eb-8dc06db3e12b" xlink:to="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_ac95c6f9-7731-41f8-afe8-98b2f7fed888" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_a27e60d9-d943-4b8b-832a-0163c4c79fb6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferred1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_796f3c52-cb7d-42a1-b3eb-8dc06db3e12b" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1_a27e60d9-d943-4b8b-832a-0163c4c79fb6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/EarningsPerShareDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#EarningsPerShareDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/EarningsPerShareDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_58fa828a-1262-485f-8983-8c3afc0e5f21" 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_NetIncomeLoss_308f3d91-0d97-4af1-9a18-c9ca549db002" 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_EarningsPerShareAbstract_58fa828a-1262-485f-8983-8c3afc0e5f21" xlink:to="loc_us-gaap_NetIncomeLoss_308f3d91-0d97-4af1-9a18-c9ca549db002" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_2b67fb1c-5ae4-47b2-854f-e6474eea3a11" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_58fa828a-1262-485f-8983-8c3afc0e5f21" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_2b67fb1c-5ae4-47b2-854f-e6474eea3a11" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_a47db4bb-887a-4303-9c12-19522124f41f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_2b67fb1c-5ae4-47b2-854f-e6474eea3a11" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_a47db4bb-887a-4303-9c12-19522124f41f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_ff02ab73-e6bf-4778-8274-84f66cc7b99a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_2b67fb1c-5ae4-47b2-854f-e6474eea3a11" xlink:to="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_ff02ab73-e6bf-4778-8274-84f66cc7b99a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_38bbba9c-8290-409d-aa3b-8238a7b03a3a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_2b67fb1c-5ae4-47b2-854f-e6474eea3a11" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_38bbba9c-8290-409d-aa3b-8238a7b03a3a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic_68bfb78c-de3e-4896-8ee8-aa6466194212" 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_58fa828a-1262-485f-8983-8c3afc0e5f21" xlink:to="loc_us-gaap_EarningsPerShareBasic_68bfb78c-de3e-4896-8ee8-aa6466194212" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted_43b98fd7-9b55-4ff5-ae90-9cbf0baeeefe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_58fa828a-1262-485f-8983-8c3afc0e5f21" xlink:to="loc_us-gaap_EarningsPerShareDiluted_43b98fd7-9b55-4ff5-ae90-9cbf0baeeefe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_e9a2e43a-5504-448f-bd2b-8281c8bab75e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_58fa828a-1262-485f-8983-8c3afc0e5f21" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_e9a2e43a-5504-448f-bd2b-8281c8bab75e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesAbstract_871f94b6-e758-42b0-aeb5-465edc640e8a" 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_srt_ValuationAndQualifyingAccountsDisclosureTable_37c6e724-f54b-487b-af69-b322f50d5c97" 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_ReceivablesAbstract_871f94b6-e758-42b0-aeb5-465edc640e8a" xlink:to="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_37c6e724-f54b-487b-af69-b322f50d5c97" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_14b27c72-e689-4eb2-9fc3-2247a492a647" 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_37c6e724-f54b-487b-af69-b322f50d5c97" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_14b27c72-e689-4eb2-9fc3-2247a492a647" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDomain_b212c68f-151f-4156-8531-cbf28442a2fe" 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_14b27c72-e689-4eb2-9fc3-2247a492a647" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDomain_b212c68f-151f-4156-8531-cbf28442a2fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_SECSchedule1209SalesDiscountsMember_aa74c836-125a-4fe8-8457-f4940ac68f1b" xlink:href="alg-20221231.xsd#alg_SECSchedule1209SalesDiscountsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDomain_b212c68f-151f-4156-8531-cbf28442a2fe" xlink:to="loc_alg_SECSchedule1209SalesDiscountsMember_aa74c836-125a-4fe8-8457-f4940ac68f1b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryValuationReserveMember_99759b41-f942-498f-b7e3-edf19d77fffe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryValuationReserveMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDomain_b212c68f-151f-4156-8531-cbf28442a2fe" xlink:to="loc_us-gaap_InventoryValuationReserveMember_99759b41-f942-498f-b7e3-edf19d77fffe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WarrantyReservesMember_6e246e9d-1ccb-494b-ba0c-26654ae50277" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantyReservesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDomain_b212c68f-151f-4156-8531-cbf28442a2fe" xlink:to="loc_us-gaap_WarrantyReservesMember_6e246e9d-1ccb-494b-ba0c-26654ae50277" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_fffb3140-2828-412c-b95a-165741a89212" 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_37c6e724-f54b-487b-af69-b322f50d5c97" xlink:to="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_fffb3140-2828-412c-b95a-165741a89212" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_5386eabf-1c05-42d3-b285-e23cc882bd58" 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_fffb3140-2828-412c-b95a-165741a89212" xlink:to="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_5386eabf-1c05-42d3-b285-e23cc882bd58" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance_a0e8245f-988c-4a1d-9a15-094ba40e2cea" 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_5386eabf-1c05-42d3-b285-e23cc882bd58" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesBalance_a0e8245f-988c-4a1d-9a15-094ba40e2cea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_4cba309d-987b-46d7-8054-ea0ca9aa60a8" 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_5386eabf-1c05-42d3-b285-e23cc882bd58" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_4cba309d-987b-46d7-8054-ea0ca9aa60a8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesAdjustments_eafe4bec-1d14-4d69-92c2-1eba0a3e53fb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesAdjustments"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_5386eabf-1c05-42d3-b285-e23cc882bd58" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesAdjustments_eafe4bec-1d14-4d69-92c2-1eba0a3e53fb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDeductions_dfd3dd11-be93-4d39-95f4-02ef09e8940e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesDeductions"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_5386eabf-1c05-42d3-b285-e23cc882bd58" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDeductions_dfd3dd11-be93-4d39-95f4-02ef09e8940e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance_0dbc23a5-6e84-4523-a3ca-6f7966063108" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesBalance"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_5386eabf-1c05-42d3-b285-e23cc882bd58" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesBalance_0dbc23a5-6e84-4523-a3ca-6f7966063108" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#ValuationandQualifyingAccountsAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesAbstract_becf1d35-a3a2-4d74-a946-9be20f23f447" 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_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_77565f7f-8aa8-4b4d-86b0-611a416d6ff9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReceivablesAbstract_becf1d35-a3a2-4d74-a946-9be20f23f447" xlink:to="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_77565f7f-8aa8-4b4d-86b0-611a416d6ff9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_362e707f-512e-4804-8633-d215c7dac9a6" 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_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_77565f7f-8aa8-4b4d-86b0-611a416d6ff9" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_362e707f-512e-4804-8633-d215c7dac9a6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDomain_2aeffd38-79e6-44cc-80b4-de43be0a93aa" 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_362e707f-512e-4804-8633-d215c7dac9a6" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDomain_2aeffd38-79e6-44cc-80b4-de43be0a93aa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_SECSchedule1209SalesDiscountsMember_932b25cd-6a41-411d-b1e9-466071f835c9" xlink:href="alg-20221231.xsd#alg_SECSchedule1209SalesDiscountsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDomain_2aeffd38-79e6-44cc-80b4-de43be0a93aa" xlink:to="loc_alg_SECSchedule1209SalesDiscountsMember_932b25cd-6a41-411d-b1e9-466071f835c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_9b47ce6f-f42a-43fa-84f9-68afeb999dbe" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductOrServiceAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_77565f7f-8aa8-4b4d-86b0-611a416d6ff9" xlink:to="loc_srt_ProductOrServiceAxis_9b47ce6f-f42a-43fa-84f9-68afeb999dbe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_c32d2a09-a591-453b-a50a-09e709bbb455" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_9b47ce6f-f42a-43fa-84f9-68afeb999dbe" xlink:to="loc_srt_ProductsAndServicesDomain_c32d2a09-a591-453b-a50a-09e709bbb455" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WholegoodUnitsMember_c8c6a7e5-7cf7-4f56-b6f6-553f292bc64a" xlink:href="alg-20221231.xsd#alg_WholegoodUnitsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_c32d2a09-a591-453b-a50a-09e709bbb455" xlink:to="loc_alg_WholegoodUnitsMember_c8c6a7e5-7cf7-4f56-b6f6-553f292bc64a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_PartsMember_0432b6cd-cf12-4ba7-8cb7-90b19ad5eb7c" xlink:href="alg-20221231.xsd#alg_PartsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_c32d2a09-a591-453b-a50a-09e709bbb455" xlink:to="loc_alg_PartsMember_0432b6cd-cf12-4ba7-8cb7-90b19ad5eb7c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_081e492e-4965-4aa3-8640-b133658f1722" 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_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_77565f7f-8aa8-4b4d-86b0-611a416d6ff9" xlink:to="loc_srt_RangeAxis_081e492e-4965-4aa3-8640-b133658f1722" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_7c6cb9b3-206c-4dd9-8dbf-a8944465e7c6" 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_081e492e-4965-4aa3-8640-b133658f1722" xlink:to="loc_srt_RangeMember_7c6cb9b3-206c-4dd9-8dbf-a8944465e7c6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_57dab17d-b999-42c7-9857-ef3ac6be80c9" 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_7c6cb9b3-206c-4dd9-8dbf-a8944465e7c6" xlink:to="loc_srt_MinimumMember_57dab17d-b999-42c7-9857-ef3ac6be80c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_f9db7722-2e69-4fc1-b3f5-7a0052fbb818" 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_7c6cb9b3-206c-4dd9-8dbf-a8944465e7c6" xlink:to="loc_srt_MaximumMember_f9db7722-2e69-4fc1-b3f5-7a0052fbb818" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_89845ac5-64ef-4560-a8cf-80a1ebbf159a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsNotesAndLoansReceivableLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_77565f7f-8aa8-4b4d-86b0-611a416d6ff9" xlink:to="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_89845ac5-64ef-4560-a8cf-80a1ebbf159a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance_4665162a-2640-4e60-ace9-1200002a6634" 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_AccountsNotesAndLoansReceivableLineItems_89845ac5-64ef-4560-a8cf-80a1ebbf159a" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesBalance_4665162a-2640-4e60-ace9-1200002a6634" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryValuationReserves_57ff0f8a-14cd-478f-8f86-e16bb60a0d5c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryValuationReserves"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_89845ac5-64ef-4560-a8cf-80a1ebbf159a" xlink:to="loc_us-gaap_InventoryValuationReserves_57ff0f8a-14cd-478f-8f86-e16bb60a0d5c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_InventoryUsagePeriod_afe132e7-8743-4f99-97cb-cc1974eab1a7" xlink:href="alg-20221231.xsd#alg_InventoryUsagePeriod"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_89845ac5-64ef-4560-a8cf-80a1ebbf159a" xlink:to="loc_alg_InventoryUsagePeriod_afe132e7-8743-4f99-97cb-cc1974eab1a7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_InventoryReservePercentage_05862e56-b747-42a4-86dc-5e931c153442" xlink:href="alg-20221231.xsd#alg_InventoryReservePercentage"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_89845ac5-64ef-4560-a8cf-80a1ebbf159a" xlink:to="loc_alg_InventoryReservePercentage_05862e56-b747-42a4-86dc-5e931c153442" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_ProductWarrantyPeriod_66e30c5b-895d-478e-acf7-b80cbaff984b" xlink:href="alg-20221231.xsd#alg_ProductWarrantyPeriod"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_89845ac5-64ef-4560-a8cf-80a1ebbf159a" xlink:to="loc_alg_ProductWarrantyPeriod_66e30c5b-895d-478e-acf7-b80cbaff984b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation_b4226c9a-3b01-4e21-927b-7465fbe3877f" xlink:href="alg-20221231.xsd#alg_ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_89845ac5-64ef-4560-a8cf-80a1ebbf159a" xlink:to="loc_alg_ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation_b4226c9a-3b01-4e21-927b-7465fbe3877f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_ProductWarrantyAccrualPeriodForSalesUsedInCalculation_5363f518-be79-4a63-a5fb-5c3a841bd9c9" xlink:href="alg-20221231.xsd#alg_ProductWarrantyAccrualPeriodForSalesUsedInCalculation"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_89845ac5-64ef-4560-a8cf-80a1ebbf159a" xlink:to="loc_alg_ProductWarrantyAccrualPeriodForSalesUsedInCalculation_5363f518-be79-4a63-a5fb-5c3a841bd9c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_ProductWarrantyAccrualLagPeriod_5418a5f8-c133-4951-910b-7148cfefb40c" xlink:href="alg-20221231.xsd#alg_ProductWarrantyAccrualLagPeriod"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_89845ac5-64ef-4560-a8cf-80a1ebbf159a" xlink:to="loc_alg_ProductWarrantyAccrualLagPeriod_5418a5f8-c133-4951-910b-7148cfefb40c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_7def46e9-7276-4c5b-aa4a-ae8e8014502f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_89845ac5-64ef-4560-a8cf-80a1ebbf159a" xlink:to="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_7def46e9-7276-4c5b-aa4a-ae8e8014502f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/InventoriesScheduleofInventoryCurrentDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#InventoriesScheduleofInventoryCurrentDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/InventoriesScheduleofInventoryCurrentDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_343a7975-44d9-44bb-b5a9-8a817d80c9d5" 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_InventoryFinishedGoodsNetOfReserves_368fc09c-6d39-4494-9f2a-fbf46b3ec080" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_343a7975-44d9-44bb-b5a9-8a817d80c9d5" xlink:to="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_368fc09c-6d39-4494-9f2a-fbf46b3ec080" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWorkInProcessNetOfReserves_38240e17-99fb-4b7b-937a-2396b15db5a0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryWorkInProcessNetOfReserves"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_343a7975-44d9-44bb-b5a9-8a817d80c9d5" xlink:to="loc_us-gaap_InventoryWorkInProcessNetOfReserves_38240e17-99fb-4b7b-937a-2396b15db5a0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves_923b522a-4f46-48b7-8ceb-3e87ab2a2daf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterialsNetOfReserves"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_343a7975-44d9-44bb-b5a9-8a817d80c9d5" xlink:to="loc_us-gaap_InventoryRawMaterialsNetOfReserves_923b522a-4f46-48b7-8ceb-3e87ab2a2daf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_9e6192bc-c816-419e-b825-291542e5f77d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_343a7975-44d9-44bb-b5a9-8a817d80c9d5" xlink:to="loc_us-gaap_InventoryNet_9e6192bc-c816-419e-b825-291542e5f77d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/PropertyPlantandEquipmentDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#PropertyPlantandEquipmentDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/PropertyPlantandEquipmentDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_8ff794b4-55fc-47e8-b00f-4834dea0c0d3" 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_ScheduleOfPropertyPlantAndEquipmentTable_01d4f0a5-5fdb-4033-91ef-e83ff547b668" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_8ff794b4-55fc-47e8-b00f-4834dea0c0d3" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_01d4f0a5-5fdb-4033-91ef-e83ff547b668" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_6a0d5f81-2c93-4485-9361-707373143e75" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_01d4f0a5-5fdb-4033-91ef-e83ff547b668" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_6a0d5f81-2c93-4485-9361-707373143e75" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8eedd3b3-6197-468a-bde0-1d8c18b532e9" 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_6a0d5f81-2c93-4485-9361-707373143e75" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8eedd3b3-6197-468a-bde0-1d8c18b532e9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LandMember_84cc1fa3-cdcb-40f5-8e3d-8857103c9c54" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8eedd3b3-6197-468a-bde0-1d8c18b532e9" xlink:to="loc_us-gaap_LandMember_84cc1fa3-cdcb-40f5-8e3d-8857103c9c54" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BuildingAndBuildingImprovementsMember_3c28be22-5d4f-475e-8ce7-ca6b10b621a9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingAndBuildingImprovementsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8eedd3b3-6197-468a-bde0-1d8c18b532e9" xlink:to="loc_us-gaap_BuildingAndBuildingImprovementsMember_3c28be22-5d4f-475e-8ce7-ca6b10b621a9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MachineryAndEquipmentMember_ce27a012-5009-4cd4-9280-6a2e7548e15a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MachineryAndEquipmentMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8eedd3b3-6197-468a-bde0-1d8c18b532e9" xlink:to="loc_us-gaap_MachineryAndEquipmentMember_ce27a012-5009-4cd4-9280-6a2e7548e15a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_71196f5e-4452-4d17-9757-f3799e20e13d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8eedd3b3-6197-468a-bde0-1d8c18b532e9" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_71196f5e-4452-4d17-9757-f3799e20e13d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_8dcd2f0f-ecc0-4a19-9343-a5b6cf6188ab" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SoftwareAndSoftwareDevelopmentCostsMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8eedd3b3-6197-468a-bde0-1d8c18b532e9" xlink:to="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_8dcd2f0f-ecc0-4a19-9343-a5b6cf6188ab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransportationEquipmentMember_40d3fcb7-e7a4-4c04-93eb-1a1080b34e29" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TransportationEquipmentMember"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_8eedd3b3-6197-468a-bde0-1d8c18b532e9" xlink:to="loc_us-gaap_TransportationEquipmentMember_40d3fcb7-e7a4-4c04-93eb-1a1080b34e29" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_bad18b15-79ed-45d2-ae76-14c4240b27c8" 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_ScheduleOfPropertyPlantAndEquipmentTable_01d4f0a5-5fdb-4033-91ef-e83ff547b668" xlink:to="loc_srt_RangeAxis_bad18b15-79ed-45d2-ae76-14c4240b27c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_572ea0d5-b168-4d4e-91f0-df6e3f449749" 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_bad18b15-79ed-45d2-ae76-14c4240b27c8" xlink:to="loc_srt_RangeMember_572ea0d5-b168-4d4e-91f0-df6e3f449749" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_11de2efc-03d1-42bd-bdb7-4b1a1347bca4" 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_572ea0d5-b168-4d4e-91f0-df6e3f449749" xlink:to="loc_srt_MinimumMember_11de2efc-03d1-42bd-bdb7-4b1a1347bca4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_e7af0ced-07e0-4bb2-8367-5caae3585549" 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_572ea0d5-b168-4d4e-91f0-df6e3f449749" xlink:to="loc_srt_MaximumMember_e7af0ced-07e0-4bb2-8367-5caae3585549" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_fdc4d823-6b8d-4383-8e47-21a737aa3f99" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_01d4f0a5-5fdb-4033-91ef-e83ff547b668" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentLineItems_fdc4d823-6b8d-4383-8e47-21a737aa3f99" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_e034c672-ac01-4b19-9f02-e7800c2b24c6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_fdc4d823-6b8d-4383-8e47-21a737aa3f99" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_e034c672-ac01-4b19-9f02-e7800c2b24c6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_4536adfb-9a51-4791-93da-1a27369a9d64" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_fdc4d823-6b8d-4383-8e47-21a737aa3f99" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_4536adfb-9a51-4791-93da-1a27369a9d64" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_8f370cc8-9460-415f-8732-9df0cf481ccb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_fdc4d823-6b8d-4383-8e47-21a737aa3f99" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_8f370cc8-9460-415f-8732-9df0cf481ccb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_6d12b92e-1ef0-40db-86a3-29c9f1bdfad9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_fdc4d823-6b8d-4383-8e47-21a737aa3f99" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_6d12b92e-1ef0-40db-86a3-29c9f1bdfad9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/GoodwillDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#GoodwillDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/GoodwillDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_7ce06929-6435-4755-8103-c6f715b448a3" 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_18418f9c-3370-443e-aff3-e3cfba7f072d" 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_7ce06929-6435-4755-8103-c6f715b448a3" xlink:to="loc_us-gaap_ScheduleOfGoodwillTable_18418f9c-3370-443e-aff3-e3cfba7f072d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_fab74dcd-7116-4b2d-801a-9face167dc2e" 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_18418f9c-3370-443e-aff3-e3cfba7f072d" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_fab74dcd-7116-4b2d-801a-9face167dc2e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_5c2bf575-d27b-45a2-accd-fb23c0487487" 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_fab74dcd-7116-4b2d-801a-9face167dc2e" xlink:to="loc_us-gaap_SegmentDomain_5c2bf575-d27b-45a2-accd-fb23c0487487" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_VegetationManagementMember_4cda4a1d-24d8-441c-ada7-4e5784e2a283" xlink:href="alg-20221231.xsd#alg_VegetationManagementMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_5c2bf575-d27b-45a2-accd-fb23c0487487" xlink:to="loc_alg_VegetationManagementMember_4cda4a1d-24d8-441c-ada7-4e5784e2a283" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_IndustrialManagementMember_77dd64bd-dab2-4dae-98b4-18b0d2bccfd8" xlink:href="alg-20221231.xsd#alg_IndustrialManagementMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_5c2bf575-d27b-45a2-accd-fb23c0487487" xlink:to="loc_alg_IndustrialManagementMember_77dd64bd-dab2-4dae-98b4-18b0d2bccfd8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillLineItems_65b1848c-0364-4b12-947b-e1279331a5bb" 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_18418f9c-3370-443e-aff3-e3cfba7f072d" xlink:to="loc_us-gaap_GoodwillLineItems_65b1848c-0364-4b12-947b-e1279331a5bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillRollForward_142002a1-3b34-4c02-907a-d8233ed84223" 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_65b1848c-0364-4b12-947b-e1279331a5bb" xlink:to="loc_us-gaap_GoodwillRollForward_142002a1-3b34-4c02-907a-d8233ed84223" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_6bf7b849-c84f-4880-abbc-d48200c32d9a" 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_142002a1-3b34-4c02-907a-d8233ed84223" xlink:to="loc_us-gaap_Goodwill_6bf7b849-c84f-4880-abbc-d48200c32d9a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_e3e3dc83-3f82-4135-92df-f5e7960ac065" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_142002a1-3b34-4c02-907a-d8233ed84223" xlink:to="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_e3e3dc83-3f82-4135-92df-f5e7960ac065" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod_30f2cd98-f439-4047-8e8f-b955074ea531" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAcquiredDuringPeriod"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_142002a1-3b34-4c02-907a-d8233ed84223" xlink:to="loc_us-gaap_GoodwillAcquiredDuringPeriod_30f2cd98-f439-4047-8e8f-b955074ea531" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_0467b1a2-c211-42c8-b20c-5355fbec7dc5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_142002a1-3b34-4c02-907a-d8233ed84223" xlink:to="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_0467b1a2-c211-42c8-b20c-5355fbec7dc5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_7d8f1230-8f38-46ef-b48c-6c9cfd39f937" 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_142002a1-3b34-4c02-907a-d8233ed84223" xlink:to="loc_us-gaap_Goodwill_7d8f1230-8f38-46ef-b48c-6c9cfd39f937" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_bca5ee50-64cc-4994-96b0-da4479f84059" 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_2092cccd-62b3-464d-94c4-9c3ccbd921b7" xlink:href="alg-20221231.xsd#alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_bca5ee50-64cc-4994-96b0-da4479f84059" xlink:to="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_2092cccd-62b3-464d-94c4-9c3ccbd921b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_285fc675-603f-423c-bcbc-11074d5a4758" 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_2092cccd-62b3-464d-94c4-9c3ccbd921b7" xlink:to="loc_srt_RangeAxis_285fc675-603f-423c-bcbc-11074d5a4758" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_77722f8c-703b-41e2-bda6-56849db90bdd" 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_285fc675-603f-423c-bcbc-11074d5a4758" xlink:to="loc_srt_RangeMember_77722f8c-703b-41e2-bda6-56849db90bdd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_558782dc-fa8c-4232-a026-4bd1c062a462" 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_77722f8c-703b-41e2-bda6-56849db90bdd" xlink:to="loc_srt_MinimumMember_558782dc-fa8c-4232-a026-4bd1c062a462" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_6ca6adb5-8151-47c2-8831-102e692528b1" 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_77722f8c-703b-41e2-bda6-56849db90bdd" xlink:to="loc_srt_MaximumMember_6ca6adb5-8151-47c2-8831-102e692528b1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cf44fe73-5c87-434a-a141-4373e5555ba0" 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_2092cccd-62b3-464d-94c4-9c3ccbd921b7" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cf44fe73-5c87-434a-a141-4373e5555ba0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_dbd6e19e-a81f-4d0c-9f10-da79298602fb" 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_cf44fe73-5c87-434a-a141-4373e5555ba0" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_dbd6e19e-a81f-4d0c-9f10-da79298602fb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksAndTradeNamesMember_1c40936f-101c-4ff1-a9fb-eed8d534368f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksAndTradeNamesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_dbd6e19e-a81f-4d0c-9f10-da79298602fb" xlink:to="loc_us-gaap_TrademarksAndTradeNamesMember_1c40936f-101c-4ff1-a9fb-eed8d534368f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember_6ea5fb7b-622f-46a9-b9fa-7bf9af51e274" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelationshipsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_dbd6e19e-a81f-4d0c-9f10-da79298602fb" xlink:to="loc_us-gaap_CustomerRelationshipsMember_6ea5fb7b-622f-46a9-b9fa-7bf9af51e274" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntellectualPropertyMember_916add89-ed76-4d55-bfae-7d799c09beef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntellectualPropertyMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_dbd6e19e-a81f-4d0c-9f10-da79298602fb" xlink:to="loc_us-gaap_IntellectualPropertyMember_916add89-ed76-4d55-bfae-7d799c09beef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OffMarketFavorableLeaseMember_7591c3bf-2a55-489f-8d91-bea587015bc5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OffMarketFavorableLeaseMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_dbd6e19e-a81f-4d0c-9f10-da79298602fb" xlink:to="loc_us-gaap_OffMarketFavorableLeaseMember_7591c3bf-2a55-489f-8d91-bea587015bc5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_36d3f1df-b81e-427a-aee9-6698e180bbbf" 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_2092cccd-62b3-464d-94c4-9c3ccbd921b7" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_36d3f1df-b81e-427a-aee9-6698e180bbbf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_9b29676a-6b4e-44ac-8d68-3667ca74bf5d" 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_36d3f1df-b81e-427a-aee9-6698e180bbbf" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_9b29676a-6b4e-44ac-8d68-3667ca74bf5d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksAndTradeNamesMember_f3ef7707-bd69-49e1-b8f8-2ee184108399" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksAndTradeNamesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_9b29676a-6b4e-44ac-8d68-3667ca74bf5d" xlink:to="loc_us-gaap_TrademarksAndTradeNamesMember_f3ef7707-bd69-49e1-b8f8-2ee184108399" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_6cb41ff0-d62e-4894-b6bb-ec9ac23ffe55" xlink:href="alg-20221231.xsd#alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_2092cccd-62b3-464d-94c4-9c3ccbd921b7" xlink:to="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_6cb41ff0-d62e-4894-b6bb-ec9ac23ffe55" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife_7e846349-1665-4d6c-af3a-1e914e5d9845" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_6cb41ff0-d62e-4894-b6bb-ec9ac23ffe55" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife_7e846349-1665-4d6c-af3a-1e914e5d9845" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_bf654399-3fec-492d-a299-0e21857fede1" 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_6cb41ff0-d62e-4894-b6bb-ec9ac23ffe55" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_bf654399-3fec-492d-a299-0e21857fede1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_f52a1d2e-cbfb-40c1-afa0-d9fa3cf7f153" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_6cb41ff0-d62e-4894-b6bb-ec9ac23ffe55" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_f52a1d2e-cbfb-40c1-afa0-d9fa3cf7f153" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_f3b8826d-f4a2-4f5a-b259-2d5270da4fb0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_6cb41ff0-d62e-4894-b6bb-ec9ac23ffe55" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_f3b8826d-f4a2-4f5a-b259-2d5270da4fb0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_13f06d9b-c079-42ba-8e02-7d844a67f0b0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_6cb41ff0-d62e-4894-b6bb-ec9ac23ffe55" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_13f06d9b-c079-42ba-8e02-7d844a67f0b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_238eb57e-25b6-4c41-8c16-8fbe763f3953" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_6cb41ff0-d62e-4894-b6bb-ec9ac23ffe55" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_238eb57e-25b6-4c41-8c16-8fbe763f3953" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#IntangibleAssetsAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_ad9ece0f-5a17-4a15-9ba2-5a7355f179d2" 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_88ea2138-ed23-429c-843a-0288b3889c70" xlink:href="alg-20221231.xsd#alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_ad9ece0f-5a17-4a15-9ba2-5a7355f179d2" xlink:to="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_88ea2138-ed23-429c-843a-0288b3889c70" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_5b3f26a8-35a3-4ef6-9f11-788f45450489" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_88ea2138-ed23-429c-843a-0288b3889c70" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_5b3f26a8-35a3-4ef6-9f11-788f45450489" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c89e4778-f324-465a-822a-d0561729e4cb" 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_5b3f26a8-35a3-4ef6-9f11-788f45450489" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c89e4778-f324-465a-822a-d0561729e4cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksAndTradeNamesMember_a1467ccc-31b9-4f15-bb3b-e62c1badd43c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksAndTradeNamesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c89e4778-f324-465a-822a-d0561729e4cb" xlink:to="loc_us-gaap_TrademarksAndTradeNamesMember_a1467ccc-31b9-4f15-bb3b-e62c1badd43c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember_2ee51e6a-9827-49dd-982e-3d2cdac00421" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelationshipsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c89e4778-f324-465a-822a-d0561729e4cb" xlink:to="loc_us-gaap_CustomerRelationshipsMember_2ee51e6a-9827-49dd-982e-3d2cdac00421" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntellectualPropertyMember_64114975-8174-4b51-b200-b4b1826952cf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntellectualPropertyMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c89e4778-f324-465a-822a-d0561729e4cb" xlink:to="loc_us-gaap_IntellectualPropertyMember_64114975-8174-4b51-b200-b4b1826952cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OffMarketFavorableLeaseMember_2c2d81cc-cf74-45f1-9d37-f19f314365c3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OffMarketFavorableLeaseMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c89e4778-f324-465a-822a-d0561729e4cb" xlink:to="loc_us-gaap_OffMarketFavorableLeaseMember_2c2d81cc-cf74-45f1-9d37-f19f314365c3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_d9de7404-6ceb-4bdb-a882-07fd29ca0bca" 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_88ea2138-ed23-429c-843a-0288b3889c70" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_d9de7404-6ceb-4bdb-a882-07fd29ca0bca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_f42b540f-de92-471f-a4ee-8d15c847ff85" 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_d9de7404-6ceb-4bdb-a882-07fd29ca0bca" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_f42b540f-de92-471f-a4ee-8d15c847ff85" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradeNamesMember_4751c294-d4e8-42f5-8f34-3e99e15851bc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradeNamesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_f42b540f-de92-471f-a4ee-8d15c847ff85" xlink:to="loc_us-gaap_TradeNamesMember_4751c294-d4e8-42f5-8f34-3e99e15851bc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_7ee2bf74-a6db-4291-ac67-61f76745aac1" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_88ea2138-ed23-429c-843a-0288b3889c70" xlink:to="loc_dei_LegalEntityAxis_7ee2bf74-a6db-4291-ac67-61f76745aac1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_860634f6-a7fa-415c-b34b-0703250d4264" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_7ee2bf74-a6db-4291-ac67-61f76745aac1" xlink:to="loc_dei_EntityDomain_860634f6-a7fa-415c-b34b-0703250d4264" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_GradallMember_ffc67e78-6c5f-4aad-b5b8-af0403c7b1c9" xlink:href="alg-20221231.xsd#alg_GradallMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_860634f6-a7fa-415c-b34b-0703250d4264" xlink:to="loc_alg_GradallMember_ffc67e78-6c5f-4aad-b5b8-af0403c7b1c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_BushHogMember_2ca480ef-5c91-42ae-8499-f4e1c1594b78" xlink:href="alg-20221231.xsd#alg_BushHogMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_860634f6-a7fa-415c-b34b-0703250d4264" xlink:to="loc_alg_BushHogMember_2ca480ef-5c91-42ae-8499-f4e1c1594b78" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_b956faab-fb8c-4644-856d-fc0e277f5f04" xlink:href="alg-20221231.xsd#alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable_88ea2138-ed23-429c-843a-0288b3889c70" xlink:to="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_b956faab-fb8c-4644-856d-fc0e277f5f04" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_9a2472b2-0004-465a-bfc3-fb3159dea442" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_b956faab-fb8c-4644-856d-fc0e277f5f04" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_9a2472b2-0004-465a-bfc3-fb3159dea442" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_f1a40ef8-5fd2-4147-bd48-e24149b77fc1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_b956faab-fb8c-4644-856d-fc0e277f5f04" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_f1a40ef8-5fd2-4147-bd48-e24149b77fc1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_e3c2b23b-3769-4175-b55f-4f489a688f1b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_b956faab-fb8c-4644-856d-fc0e277f5f04" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_e3c2b23b-3769-4175-b55f-4f489a688f1b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_06c923bf-4e68-4186-a3fc-a68235fb27d3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_b956faab-fb8c-4644-856d-fc0e277f5f04" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_06c923bf-4e68-4186-a3fc-a68235fb27d3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_265bcc89-ac5c-461a-84a3-8468c11c342d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_b956faab-fb8c-4644-856d-fc0e277f5f04" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_265bcc89-ac5c-461a-84a3-8468c11c342d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_d572ddd7-2e63-497b-8e5d-918510ee1371" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_b956faab-fb8c-4644-856d-fc0e277f5f04" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_d572ddd7-2e63-497b-8e5d-918510ee1371" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_15464205-6553-4c46-b50d-6851e014255a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_b956faab-fb8c-4644-856d-fc0e277f5f04" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_15464205-6553-4c46-b50d-6851e014255a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_8142bdc9-fbda-4311-82c5-dbf9e300f05a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems_b956faab-fb8c-4644-856d-fc0e277f5f04" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_8142bdc9-fbda-4311-82c5-dbf9e300f05a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/LeasesLeaseCostDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#LeasesLeaseCostDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/LeasesLeaseCostDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_e20a741b-7bb1-4ad0-9360-6cb0d28fa328" 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_FinanceLeaseRightOfUseAssetAmortization_25eaa714-94fe-4cde-97da-4c4d1616a214" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_e20a741b-7bb1-4ad0-9360-6cb0d28fa328" xlink:to="loc_us-gaap_FinanceLeaseRightOfUseAssetAmortization_25eaa714-94fe-4cde-97da-4c4d1616a214" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseInterestExpense_c04ba9fd-3bba-458b-987b-10754f5fde10" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseInterestExpense"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_e20a741b-7bb1-4ad0-9360-6cb0d28fa328" xlink:to="loc_us-gaap_FinanceLeaseInterestExpense_c04ba9fd-3bba-458b-987b-10754f5fde10" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost_99bac49d-2992-46dd-b6fb-01efd0dfecbf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseCost"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_e20a741b-7bb1-4ad0-9360-6cb0d28fa328" xlink:to="loc_us-gaap_OperatingLeaseCost_99bac49d-2992-46dd-b6fb-01efd0dfecbf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermLeaseCost_6a2d49c0-36a6-4e09-b74e-59ec0f93a686" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermLeaseCost"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_e20a741b-7bb1-4ad0-9360-6cb0d28fa328" xlink:to="loc_us-gaap_ShortTermLeaseCost_6a2d49c0-36a6-4e09-b74e-59ec0f93a686" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableLeaseCost_59e5e582-1851-4b01-97b1-e07876aad7dd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableLeaseCost"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_e20a741b-7bb1-4ad0-9360-6cb0d28fa328" xlink:to="loc_us-gaap_VariableLeaseCost_59e5e582-1851-4b01-97b1-e07876aad7dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_cb39d9ab-0031-4900-9bfa-6635d8de1282" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCost"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_e20a741b-7bb1-4ad0-9360-6cb0d28fa328" xlink:to="loc_us-gaap_LeaseCost_cb39d9ab-0031-4900-9bfa-6635d8de1282" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/LeasesMaturityScheduleDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#LeasesMaturityScheduleDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/LeasesMaturityScheduleDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_74ed7ee6-7f9d-4782-9e4b-8e66fda19013" 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_OperatingLeaseLiabilitiesPaymentsDueAbstract_212a53c6-41f4-42e8-a1e3-095646e0c5a9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_74ed7ee6-7f9d-4782-9e4b-8e66fda19013" xlink:to="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_212a53c6-41f4-42e8-a1e3-095646e0c5a9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_3356b30c-e8bd-4a2f-aefe-e21b9c92b5d0" 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_OperatingLeaseLiabilitiesPaymentsDueAbstract_212a53c6-41f4-42e8-a1e3-095646e0c5a9" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_3356b30c-e8bd-4a2f-aefe-e21b9c92b5d0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_afb43eb3-a5aa-4412-a137-a8d73cc402c0" 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_OperatingLeaseLiabilitiesPaymentsDueAbstract_212a53c6-41f4-42e8-a1e3-095646e0c5a9" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_afb43eb3-a5aa-4412-a137-a8d73cc402c0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_0df503b9-8a80-4f24-9cc7-2785a7fa3197" 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_OperatingLeaseLiabilitiesPaymentsDueAbstract_212a53c6-41f4-42e8-a1e3-095646e0c5a9" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_0df503b9-8a80-4f24-9cc7-2785a7fa3197" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_e898a692-0f6a-415a-a975-a1833fea6287" 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_OperatingLeaseLiabilitiesPaymentsDueAbstract_212a53c6-41f4-42e8-a1e3-095646e0c5a9" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_e898a692-0f6a-415a-a975-a1833fea6287" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_8e1b1c99-ea7b-4f53-8b43-1b362160bd0b" 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_OperatingLeaseLiabilitiesPaymentsDueAbstract_212a53c6-41f4-42e8-a1e3-095646e0c5a9" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_8e1b1c99-ea7b-4f53-8b43-1b362160bd0b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_ac5b5f50-7dbf-4058-80f7-323f8d0f234e" 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_OperatingLeaseLiabilitiesPaymentsDueAbstract_212a53c6-41f4-42e8-a1e3-095646e0c5a9" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_ac5b5f50-7dbf-4058-80f7-323f8d0f234e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_29f545ad-5a76-442c-b1bc-f19cb57cb968" 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_OperatingLeaseLiabilitiesPaymentsDueAbstract_212a53c6-41f4-42e8-a1e3-095646e0c5a9" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_29f545ad-5a76-442c-b1bc-f19cb57cb968" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_fc4c2aef-6be5-41e1-82c7-fc1962e0e110" 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_OperatingLeaseLiabilitiesPaymentsDueAbstract_212a53c6-41f4-42e8-a1e3-095646e0c5a9" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_fc4c2aef-6be5-41e1-82c7-fc1962e0e110" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_b4e70690-7547-4499-8556-77042ea077b5" 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_OperatingLeaseLiabilitiesPaymentsDueAbstract_212a53c6-41f4-42e8-a1e3-095646e0c5a9" xlink:to="loc_us-gaap_OperatingLeaseLiability_b4e70690-7547-4499-8556-77042ea077b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/LeasesMaturityScheduleDetails_1" xlink:type="simple" xlink:href="alg-20221231.xsd#LeasesMaturityScheduleDetails_1"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/LeasesMaturityScheduleDetails_1" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.alamo-group.com/role/LeasesAdditionalInformationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#LeasesAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/LeasesAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_86346626-a1fc-4d5e-93cc-ee542b8257b5" 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_OperatingLeaseExpense_7539d199-34ed-4d8d-b6be-ee56272d33da" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_86346626-a1fc-4d5e-93cc-ee542b8257b5" xlink:to="loc_us-gaap_OperatingLeaseExpense_7539d199-34ed-4d8d-b6be-ee56272d33da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_LesseeOperatingLeaseLeaseNotYetCommencedAmount_7e346c1b-0950-4a1d-8d1a-37579aa631e4" xlink:href="alg-20221231.xsd#alg_LesseeOperatingLeaseLeaseNotYetCommencedAmount"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_86346626-a1fc-4d5e-93cc-ee542b8257b5" xlink:to="loc_alg_LesseeOperatingLeaseLeaseNotYetCommencedAmount_7e346c1b-0950-4a1d-8d1a-37579aa631e4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/LeasesSupplementalBalanceSheetInformationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#LeasesSupplementalBalanceSheetInformationDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/LeasesSupplementalBalanceSheetInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_a64aa73b-6a68-4835-a68d-d41a8879c4f9" 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_LesseeOperatingLeaseDescriptionAbstract_171770f4-6ca9-4617-86a6-4ba818067309" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseDescriptionAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_a64aa73b-6a68-4835-a68d-d41a8879c4f9" xlink:to="loc_us-gaap_LesseeOperatingLeaseDescriptionAbstract_171770f4-6ca9-4617-86a6-4ba818067309" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_024ced21-d65a-4954-9ec3-e10065a0ac8e" 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_LesseeOperatingLeaseDescriptionAbstract_171770f4-6ca9-4617-86a6-4ba818067309" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_024ced21-d65a-4954-9ec3-e10065a0ac8e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_91de8caf-503f-43c7-ae6d-c52d95ee1619" 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_LesseeOperatingLeaseDescriptionAbstract_171770f4-6ca9-4617-86a6-4ba818067309" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_91de8caf-503f-43c7-ae6d-c52d95ee1619" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_d1f4f679-b5ec-4caf-bbeb-3f3d9a7bcaf5" 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_LesseeOperatingLeaseDescriptionAbstract_171770f4-6ca9-4617-86a6-4ba818067309" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_d1f4f679-b5ec-4caf-bbeb-3f3d9a7bcaf5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_90175f38-7d29-43f6-961c-31961da6ed19" 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_LesseeOperatingLeaseDescriptionAbstract_171770f4-6ca9-4617-86a6-4ba818067309" xlink:to="loc_us-gaap_OperatingLeaseLiability_90175f38-7d29-43f6-961c-31961da6ed19" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList_dea253bb-5481-46ec-845f-5af2032f1fa2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeOperatingLeaseDescriptionAbstract_171770f4-6ca9-4617-86a6-4ba818067309" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList_dea253bb-5481-46ec-845f-5af2032f1fa2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_2eb2b42a-b6dd-4f26-8659-dca267d1de52" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeOperatingLeaseDescriptionAbstract_171770f4-6ca9-4617-86a6-4ba818067309" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_2eb2b42a-b6dd-4f26-8659-dca267d1de52" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList_f33bfa6f-7091-4188-aa39-d2aad32680ce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeOperatingLeaseDescriptionAbstract_171770f4-6ca9-4617-86a6-4ba818067309" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList_f33bfa6f-7091-4188-aa39-d2aad32680ce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_f1e54f06-d325-4923-ab05-3b51500a2813" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeOperatingLeaseDescriptionAbstract_171770f4-6ca9-4617-86a6-4ba818067309" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_f1e54f06-d325-4923-ab05-3b51500a2813" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_ff732b97-f8fb-4529-96fd-058e6571e6c4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeOperatingLeaseDescriptionAbstract_171770f4-6ca9-4617-86a6-4ba818067309" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_ff732b97-f8fb-4529-96fd-058e6571e6c4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/LeasesSupplementalCashFlowInformationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#LeasesSupplementalCashFlowInformationDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/LeasesSupplementalCashFlowInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_a8906a93-21a3-440c-9f67-95d698a2db8d" 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_OperatingLeasePayments_0d7dcc6d-7a5b-4d67-b23f-ac37597fce62" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeasePayments"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_a8906a93-21a3-440c-9f67-95d698a2db8d" xlink:to="loc_us-gaap_OperatingLeasePayments_0d7dcc6d-7a5b-4d67-b23f-ac37597fce62" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/AccruedLiabilitiesDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#AccruedLiabilitiesDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/AccruedLiabilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PayablesAndAccrualsAbstract_072d6807-033d-43a6-97a6-f841378e9c23" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PayablesAndAccrualsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedEmployeeBenefitsCurrent_b99b88d9-7f5b-4aa4-9be0-e6b763365424" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedEmployeeBenefitsCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_072d6807-033d-43a6-97a6-f841378e9c23" xlink:to="loc_us-gaap_AccruedEmployeeBenefitsCurrent_b99b88d9-7f5b-4aa4-9be0-e6b763365424" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_85d818c5-1572-409e-9761-587a7e1da8a5" 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_PayablesAndAccrualsAbstract_072d6807-033d-43a6-97a6-f841378e9c23" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_85d818c5-1572-409e-9761-587a7e1da8a5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TaxesPayableCurrent_dc8cf35a-5824-4aec-a745-490dfd77b113" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TaxesPayableCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_072d6807-033d-43a6-97a6-f841378e9c23" xlink:to="loc_us-gaap_TaxesPayableCurrent_dc8cf35a-5824-4aec-a745-490dfd77b113" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_2ed122eb-4841-43cf-a332-b6ff072bf7ed" 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_PayablesAndAccrualsAbstract_072d6807-033d-43a6-97a6-f841378e9c23" xlink:to="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_2ed122eb-4841-43cf-a332-b6ff072bf7ed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities_5d4e7b88-309e-4627-8f47-be5d503cd196" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_072d6807-033d-43a6-97a6-f841378e9c23" xlink:to="loc_us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities_5d4e7b88-309e-4627-8f47-be5d503cd196" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent_325c218b-9745-4ee2-99b8-e03004da2f0d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_072d6807-033d-43a6-97a6-f841378e9c23" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityCurrent_325c218b-9745-4ee2-99b8-e03004da2f0d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesCurrent_0cdb4e8d-c88a-432e-ac33-0ab3539a023b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherLiabilitiesCurrent"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_072d6807-033d-43a6-97a6-f841378e9c23" xlink:to="loc_us-gaap_OtherLiabilitiesCurrent_0cdb4e8d-c88a-432e-ac33-0ab3539a023b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_effcafd7-7917-48e2-868e-b5061878dc12" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrent"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_072d6807-033d-43a6-97a6-f841378e9c23" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_effcafd7-7917-48e2-868e-b5061878dc12" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#LongTermDebtScheduleofLongTermDebtDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_d705e122-f239-4ba2-b6e2-29b61b6eb821" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_67c44b01-ec34-44ca-934a-3697a46e742f" 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_DebtDisclosureAbstract_d705e122-f239-4ba2-b6e2-29b61b6eb821" xlink:to="loc_us-gaap_DebtInstrumentTable_67c44b01-ec34-44ca-934a-3697a46e742f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_d1bb132c-727d-4d0c-baf6-8a330340e6bc" 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_DebtInstrumentTable_67c44b01-ec34-44ca-934a-3697a46e742f" xlink:to="loc_us-gaap_CreditFacilityAxis_d1bb132c-727d-4d0c-baf6-8a330340e6bc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_e41df83f-e524-4933-9220-d1c7a522f523" 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_d1bb132c-727d-4d0c-baf6-8a330340e6bc" xlink:to="loc_us-gaap_CreditFacilityDomain_e41df83f-e524-4933-9220-d1c7a522f523" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditMember_b4b24dd9-6873-4c70-8b21-3c9b661a2c50" 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_CreditFacilityDomain_e41df83f-e524-4933-9220-d1c7a522f523" xlink:to="loc_us-gaap_LineOfCreditMember_b4b24dd9-6873-4c70-8b21-3c9b661a2c50" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_cd84ebb4-c1d4-4fc2-80f3-3349d004615f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_67c44b01-ec34-44ca-934a-3697a46e742f" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_cd84ebb4-c1d4-4fc2-80f3-3349d004615f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_93a2363c-700a-4acb-8821-0e5de14004ac" 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_cd84ebb4-c1d4-4fc2-80f3-3349d004615f" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_93a2363c-700a-4acb-8821-0e5de14004ac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnsecuredDebtMember_1b9a1a96-e821-44a3-956a-40b6471e7a67" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnsecuredDebtMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_93a2363c-700a-4acb-8821-0e5de14004ac" xlink:to="loc_us-gaap_UnsecuredDebtMember_1b9a1a96-e821-44a3-956a-40b6471e7a67" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MediumTermNotesMember_3377e2cd-237b-4042-8b40-9baae68facd3" 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_93a2363c-700a-4acb-8821-0e5de14004ac" xlink:to="loc_us-gaap_MediumTermNotesMember_3377e2cd-237b-4042-8b40-9baae68facd3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_fa0ac032-a9b2-4813-939a-dac6d2ca9016" 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_67c44b01-ec34-44ca-934a-3697a46e742f" xlink:to="loc_us-gaap_DebtInstrumentLineItems_fa0ac032-a9b2-4813-939a-dac6d2ca9016" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebt_998d7612-0616-47f2-9259-4f756c481a36" 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_DebtInstrumentLineItems_fa0ac032-a9b2-4813-939a-dac6d2ca9016" xlink:to="loc_us-gaap_LongTermDebt_998d7612-0616-47f2-9259-4f756c481a36" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiability_78937f0c-f0a2-417a-8e9f-d97c3dd35739" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiability"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_fa0ac032-a9b2-4813-939a-dac6d2ca9016" xlink:to="loc_us-gaap_FinanceLeaseLiability_78937f0c-f0a2-417a-8e9f-d97c3dd35739" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities_ea7dd858-259d-4177-bf4b-531848c71b7f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_fa0ac032-a9b2-4813-939a-dac6d2ca9016" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities_ea7dd858-259d-4177-bf4b-531848c71b7f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_a3283979-6112-4aff-b4e9-7732cdae7e3f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_fa0ac032-a9b2-4813-939a-dac6d2ca9016" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_a3283979-6112-4aff-b4e9-7732cdae7e3f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_9d2abefe-1626-450d-9df6-9924b75b9aea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_fa0ac032-a9b2-4813-939a-dac6d2ca9016" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_9d2abefe-1626-450d-9df6-9924b75b9aea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_bbd9031a-5eb9-4127-bd1e-bdb0a203d304" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_fa0ac032-a9b2-4813-939a-dac6d2ca9016" xlink:to="loc_us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_bbd9031a-5eb9-4127-bd1e-bdb0a203d304" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList_f6af6bb9-290f-452d-b3bf-e6db770797cd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_fa0ac032-a9b2-4813-939a-dac6d2ca9016" xlink:to="loc_us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList_f6af6bb9-290f-452d-b3bf-e6db770797cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#LongTermDebtAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_86149615-cc13-429b-96a2-5499b2bc17fc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_fb0bf9f5-cb76-4c21-a735-2b2f36eff44a" 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_DebtDisclosureAbstract_86149615-cc13-429b-96a2-5499b2bc17fc" xlink:to="loc_us-gaap_DebtInstrumentTable_fb0bf9f5-cb76-4c21-a735-2b2f36eff44a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_b4538bc9-72c7-49ba-8ba8-b43c19ddb5c0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_fb0bf9f5-cb76-4c21-a735-2b2f36eff44a" xlink:to="loc_us-gaap_DebtInstrumentAxis_b4538bc9-72c7-49ba-8ba8-b43c19ddb5c0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_62260239-9f64-4348-b0a3-9b30ec2b4665" 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_b4538bc9-72c7-49ba-8ba8-b43c19ddb5c0" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_62260239-9f64-4348-b0a3-9b30ec2b4665" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember_73f09fcd-6b00-4268-b86e-610b5e20c031" xlink:href="alg-20221231.xsd#alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_62260239-9f64-4348-b0a3-9b30ec2b4665" xlink:to="loc_alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember_73f09fcd-6b00-4268-b86e-610b5e20c031" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_f3ba6524-1752-440b-b969-95219163c049" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_fb0bf9f5-cb76-4c21-a735-2b2f36eff44a" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_f3ba6524-1752-440b-b969-95219163c049" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_2da51752-45bc-48ea-aba0-e5a35aadcd16" 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_f3ba6524-1752-440b-b969-95219163c049" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_2da51752-45bc-48ea-aba0-e5a35aadcd16" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnsecuredDebtMember_194aa423-d7cd-4a45-a2c1-2b3e73ee5015" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnsecuredDebtMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_2da51752-45bc-48ea-aba0-e5a35aadcd16" xlink:to="loc_us-gaap_UnsecuredDebtMember_194aa423-d7cd-4a45-a2c1-2b3e73ee5015" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_76265e2b-bb57-4986-a1ad-e02b0a513fcd" 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_fb0bf9f5-cb76-4c21-a735-2b2f36eff44a" xlink:to="loc_us-gaap_CreditFacilityAxis_76265e2b-bb57-4986-a1ad-e02b0a513fcd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_a380309f-736c-44aa-90ae-056affbbf2dd" 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_76265e2b-bb57-4986-a1ad-e02b0a513fcd" xlink:to="loc_us-gaap_CreditFacilityDomain_a380309f-736c-44aa-90ae-056affbbf2dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditMember_f81ba2d5-f048-477e-b8cb-eb003079d630" 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_CreditFacilityDomain_a380309f-736c-44aa-90ae-056affbbf2dd" xlink:to="loc_us-gaap_LineOfCreditMember_f81ba2d5-f048-477e-b8cb-eb003079d630" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_TermFacilityMember_c42b8128-a39c-4e5c-8a2a-e1dcc3f4d02a" xlink:href="alg-20221231.xsd#alg_TermFacilityMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_a380309f-736c-44aa-90ae-056affbbf2dd" xlink:to="loc_alg_TermFacilityMember_c42b8128-a39c-4e5c-8a2a-e1dcc3f4d02a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandbyLettersOfCreditMember_9cdf9d15-1e76-4a0a-87d0-60a273c2c244" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StandbyLettersOfCreditMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_a380309f-736c-44aa-90ae-056affbbf2dd" xlink:to="loc_us-gaap_StandbyLettersOfCreditMember_9cdf9d15-1e76-4a0a-87d0-60a273c2c244" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateAxis_532a3bd4-87b9-48b4-9283-72d84d863db2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_fb0bf9f5-cb76-4c21-a735-2b2f36eff44a" xlink:to="loc_us-gaap_VariableRateAxis_532a3bd4-87b9-48b4-9283-72d84d863db2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain_14fa4b38-853b-4c36-827f-1c158e28bd5d" 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_532a3bd4-87b9-48b4-9283-72d84d863db2" xlink:to="loc_us-gaap_VariableRateDomain_14fa4b38-853b-4c36-827f-1c158e28bd5d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember_d0d1b686-7ea5-4b61-804f-7a8bc90fcf10" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_14fa4b38-853b-4c36-827f-1c158e28bd5d" xlink:to="loc_us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember_d0d1b686-7ea5-4b61-804f-7a8bc90fcf10" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BaseRateMember_30e8d244-d70a-4aa9-8d7f-6cd8c79eab7b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BaseRateMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_14fa4b38-853b-4c36-827f-1c158e28bd5d" xlink:to="loc_us-gaap_BaseRateMember_30e8d244-d70a-4aa9-8d7f-6cd8c79eab7b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_0d986e5f-7747-461b-ace6-081cda77eee9" 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_DebtInstrumentTable_fb0bf9f5-cb76-4c21-a735-2b2f36eff44a" xlink:to="loc_srt_RangeAxis_0d986e5f-7747-461b-ace6-081cda77eee9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_bb701c32-5d46-4f01-a498-cf4b82b9e96b" 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_0d986e5f-7747-461b-ace6-081cda77eee9" xlink:to="loc_srt_RangeMember_bb701c32-5d46-4f01-a498-cf4b82b9e96b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_8c068f16-4e7e-4cfb-8657-a7f2067d3e14" 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_bb701c32-5d46-4f01-a498-cf4b82b9e96b" xlink:to="loc_srt_MinimumMember_8c068f16-4e7e-4cfb-8657-a7f2067d3e14" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_3383907b-bb4c-4c60-a074-56d0ca0ddfd7" 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_bb701c32-5d46-4f01-a498-cf4b82b9e96b" xlink:to="loc_srt_MaximumMember_3383907b-bb4c-4c60-a074-56d0ca0ddfd7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_fb0bf9f5-cb76-4c21-a735-2b2f36eff44a" xlink:to="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_8d6aee44-49c1-4ba0-9e25-016e0c786059" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_8d6aee44-49c1-4ba0-9e25-016e0c786059" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityExpirationPeriod_566497b5-25e3-46d8-909f-7c9968dd2e8d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityExpirationPeriod"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LineOfCreditFacilityExpirationPeriod_566497b5-25e3-46d8-909f-7c9968dd2e8d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentPeriodicPayment_b1e0e430-95a4-4500-aaf7-f8cf64c692cd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentPeriodicPayment"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_DebtInstrumentPeriodicPayment_b1e0e430-95a4-4500-aaf7-f8cf64c692cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_1788a45f-d47d-4a5d-8b54-e6c25ca04cad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_1788a45f-d47d-4a5d-8b54-e6c25ca04cad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_2c145518-2b26-4521-a363-f4825926f0ce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_2c145518-2b26-4521-a363-f4825926f0ce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount_4c9a3e6d-c920-4d69-bdb5-fbfa06f097d3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount_4c9a3e6d-c920-4d69-bdb5-fbfa06f097d3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DebtInstrumentNumberOfCovenants_23a777b0-0012-4793-8adc-2f764479a1bf" xlink:href="alg-20221231.xsd#alg_DebtInstrumentNumberOfCovenants"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_alg_DebtInstrumentNumberOfCovenants_23a777b0-0012-4793-8adc-2f764479a1bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding_9101d437-bafd-4ef6-b2c6-50bcf80ecd32" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding_9101d437-bafd-4ef6-b2c6-50bcf80ecd32" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtWeightedAverageInterestRate_5e513001-cb28-4bc0-8f44-768aadd19d55" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtWeightedAverageInterestRate"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LongtermDebtWeightedAverageInterestRate_5e513001-cb28-4bc0-8f44-768aadd19d55" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityCapacityAvailableForTradePurchases_33245a6c-cc1d-4ad5-b9da-6f7f4943eb51" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityCapacityAvailableForTradePurchases"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LineOfCreditFacilityCapacityAvailableForTradePurchases_33245a6c-cc1d-4ad5-b9da-6f7f4943eb51" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_6eabf2f2-2e65-407d-b069-39f164eab900" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_6eabf2f2-2e65-407d-b069-39f164eab900" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_08cf17a2-4be4-4bd6-baca-a44b0adb0bd1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_08cf17a2-4be4-4bd6-baca-a44b0adb0bd1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_ef96e2ae-35d6-4e41-834d-5d1ecf21355a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_ef96e2ae-35d6-4e41-834d-5d1ecf21355a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_408f2f9b-c42e-45b9-a23f-382a23497048" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_408f2f9b-c42e-45b9-a23f-382a23497048" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_6a0fc7b1-d4aa-475c-85f4-129b3cd36a73" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_6a0fc7b1-d4aa-475c-85f4-129b3cd36a73" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_9f99fdb3-bde8-43ec-91b2-2c3da996895f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_9f99fdb3-bde8-43ec-91b2-2c3da996895f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive_b9e9df80-52c7-4852-b82f-fdcd5d9d65ad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2ad93b69-00ee-431d-9806-c26b4b04e6d1" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive_b9e9df80-52c7-4852-b82f-fdcd5d9d65ad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/IncomeTaxesScheduleofIncomeLossbeforeProvisionforIncomeTaxesDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#IncomeTaxesScheduleofIncomeLossbeforeProvisionforIncomeTaxesDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/IncomeTaxesScheduleofIncomeLossbeforeProvisionforIncomeTaxesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_b2dac5ed-1942-4d6b-bd5a-9be67d5c03ec" 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_058a0c2e-d7ca-4bd1-8c7f-384b9dee372b" 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_b2dac5ed-1942-4d6b-bd5a-9be67d5c03ec" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_058a0c2e-d7ca-4bd1-8c7f-384b9dee372b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_f778fe8f-1ee2-425f-8991-f0ec659941c6" 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_b2dac5ed-1942-4d6b-bd5a-9be67d5c03ec" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_f778fe8f-1ee2-425f-8991-f0ec659941c6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_f2156f5a-e844-4d5d-a8d5-dfb727574219" 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_b2dac5ed-1942-4d6b-bd5a-9be67d5c03ec" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_f2156f5a-e844-4d5d-a8d5-dfb727574219" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_c49855c9-92e2-4617-b76d-3bd404680b22" 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_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_c05ff7bf-e024-4b67-beaf-3eeb1ae2dc1c" 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_IncomeTaxDisclosureAbstract_c49855c9-92e2-4617-b76d-3bd404680b22" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_c05ff7bf-e024-4b67-beaf-3eeb1ae2dc1c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentFederalTaxExpenseBenefit_1b21c4b1-2b3c-49d0-bb94-d69e5c61472e" 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_c05ff7bf-e024-4b67-beaf-3eeb1ae2dc1c" xlink:to="loc_us-gaap_CurrentFederalTaxExpenseBenefit_1b21c4b1-2b3c-49d0-bb94-d69e5c61472e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentForeignTaxExpenseBenefit_66aa474b-334b-4b42-b64c-252490c11c48" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentForeignTaxExpenseBenefit"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_c05ff7bf-e024-4b67-beaf-3eeb1ae2dc1c" xlink:to="loc_us-gaap_CurrentForeignTaxExpenseBenefit_66aa474b-334b-4b42-b64c-252490c11c48" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_5d4a187a-91b4-477a-a054-f9478da46fea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_c05ff7bf-e024-4b67-beaf-3eeb1ae2dc1c" xlink:to="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_5d4a187a-91b4-477a-a054-f9478da46fea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_8e439ac9-4207-48da-b6b1-b12fcec0f483" 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_c05ff7bf-e024-4b67-beaf-3eeb1ae2dc1c" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_8e439ac9-4207-48da-b6b1-b12fcec0f483" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_7b184cc6-9076-4d93-b11f-8ac84201c96f" 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_IncomeTaxDisclosureAbstract_c49855c9-92e2-4617-b76d-3bd404680b22" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_7b184cc6-9076-4d93-b11f-8ac84201c96f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_b9dc9fcf-f2a1-4a07-84e5-2990f7db5615" 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_7b184cc6-9076-4d93-b11f-8ac84201c96f" xlink:to="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_b9dc9fcf-f2a1-4a07-84e5-2990f7db5615" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_a45108d1-0b3f-48e6-a36a-e4a3687091d8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_7b184cc6-9076-4d93-b11f-8ac84201c96f" xlink:to="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_a45108d1-0b3f-48e6-a36a-e4a3687091d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_c4e384dc-4569-4eb8-91eb-4d2d47ddb9c1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_7b184cc6-9076-4d93-b11f-8ac84201c96f" xlink:to="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_c4e384dc-4569-4eb8-91eb-4d2d47ddb9c1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_a7081c49-8a9e-4957-85ec-8970ef576449" 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_7b184cc6-9076-4d93-b11f-8ac84201c96f" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_a7081c49-8a9e-4957-85ec-8970ef576449" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_add86887-5acb-41c2-bfd7-82983b73bfce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_7b184cc6-9076-4d93-b11f-8ac84201c96f" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_add86887-5acb-41c2-bfd7-82983b73bfce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#IncomeTaxesIncomeTaxReconciliationDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_8ef3dd8d-c6e6-4385-80eb-bd920967eb14" 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_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_543810de-c8f3-4e70-b8bf-2f0ccf94877e" 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_IncomeTaxDisclosureAbstract_8ef3dd8d-c6e6-4385-80eb-bd920967eb14" xlink:to="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_543810de-c8f3-4e70-b8bf-2f0ccf94877e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract_2aec2020-d0c6-4108-868a-72bd086b9225" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_8ef3dd8d-c6e6-4385-80eb-bd920967eb14" xlink:to="loc_us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract_2aec2020-d0c6-4108-868a-72bd086b9225" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential_b99ea7c9-1b98-4a5f-8dbe-2559129f4635" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract_2aec2020-d0c6-4108-868a-72bd086b9225" xlink:to="loc_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential_b99ea7c9-1b98-4a5f-8dbe-2559129f4635" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount_8e3c728c-5c32-4fd8-8d32-cb5ed599781f" xlink:href="alg-20221231.xsd#alg_EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract_2aec2020-d0c6-4108-868a-72bd086b9225" xlink:to="loc_alg_EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount_8e3c728c-5c32-4fd8-8d32-cb5ed599781f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost_1f7b8bd2-aa2a-4f79-b8c9-d3428e8bf2a9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract_2aec2020-d0c6-4108-868a-72bd086b9225" xlink:to="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost_1f7b8bd2-aa2a-4f79-b8c9-d3428e8bf2a9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_1664f773-a9d8-43bf-9401-25fc8dcb189b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract_2aec2020-d0c6-4108-868a-72bd086b9225" xlink:to="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_1664f773-a9d8-43bf-9401-25fc8dcb189b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_IncomeTaxRateReconciliationForeignTaxExpense_34eb9dbe-83f5-4986-bff4-1047601c53c3" xlink:href="alg-20221231.xsd#alg_IncomeTaxRateReconciliationForeignTaxExpense"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract_2aec2020-d0c6-4108-868a-72bd086b9225" xlink:to="loc_alg_IncomeTaxRateReconciliationForeignTaxExpense_34eb9dbe-83f5-4986-bff4-1047601c53c3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxCreditsResearch_790215a6-aa1a-47b6-ad19-f75178d60c91" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationTaxCreditsResearch"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract_2aec2020-d0c6-4108-868a-72bd086b9225" xlink:to="loc_us-gaap_IncomeTaxReconciliationTaxCreditsResearch_790215a6-aa1a-47b6-ad19-f75178d60c91" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount_c6da0472-711d-4817-8da1-c3bfb8223d49" xlink:href="alg-20221231.xsd#alg_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract_2aec2020-d0c6-4108-868a-72bd086b9225" xlink:to="loc_alg_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount_c6da0472-711d-4817-8da1-c3bfb8223d49" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount_f03b9616-505c-4725-a203-98446f4caf41" xlink:href="alg-20221231.xsd#alg_EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract_2aec2020-d0c6-4108-868a-72bd086b9225" xlink:to="loc_alg_EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount_f03b9616-505c-4725-a203-98446f4caf41" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_89a418be-5fb5-4a19-b00d-7259753fb2ff" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract_2aec2020-d0c6-4108-868a-72bd086b9225" xlink:to="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_89a418be-5fb5-4a19-b00d-7259753fb2ff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017_73282d87-0720-494f-b36b-306a8e7ba0f5" xlink:href="alg-20221231.xsd#alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract_2aec2020-d0c6-4108-868a-72bd086b9225" xlink:to="loc_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017_73282d87-0720-494f-b36b-306a8e7ba0f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent_58c940e6-7a29-4738-901d-42576d90b715" xlink:href="alg-20221231.xsd#alg_EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_8ef3dd8d-c6e6-4385-80eb-bd920967eb14" xlink:to="loc_alg_EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent_58c940e6-7a29-4738-901d-42576d90b715" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_a4946927-3564-4b7d-91ef-4dbf4bdaac97" 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_DeferredTaxAssetsGrossAbstract_340ae83e-66b0-4368-b517-6feea5fa6023" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGrossAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_a4946927-3564-4b7d-91ef-4dbf4bdaac97" xlink:to="loc_us-gaap_DeferredTaxAssetsGrossAbstract_340ae83e-66b0-4368-b517-6feea5fa6023" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsInventory_70db85c6-da47-4927-ae06-50d62100b254" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsInventory"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsGrossAbstract_340ae83e-66b0-4368-b517-6feea5fa6023" xlink:to="loc_us-gaap_DeferredTaxAssetsInventory_70db85c6-da47-4927-ae06-50d62100b254" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_25a1fff0-981a-41e1-b7fc-a9c49a0bdb90" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsGrossAbstract_340ae83e-66b0-4368-b517-6feea5fa6023" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_25a1fff0-981a-41e1-b7fc-a9c49a0bdb90" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_858cba7c-14e3-483c-8a13-2e100dcb513d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsGrossAbstract_340ae83e-66b0-4368-b517-6feea5fa6023" xlink:to="loc_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_858cba7c-14e3-483c-8a13-2e100dcb513d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_f6d08434-7011-4383-86b5-e830f8229637" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsGrossAbstract_340ae83e-66b0-4368-b517-6feea5fa6023" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_f6d08434-7011-4383-86b5-e830f8229637" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions_a7e8cc8b-0b4d-4c37-a1a4-7942fe237350" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsGrossAbstract_340ae83e-66b0-4368-b517-6feea5fa6023" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions_a7e8cc8b-0b4d-4c37-a1a4-7942fe237350" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_267a2caf-8192-4623-880d-3be21454c89b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsGrossAbstract_340ae83e-66b0-4368-b517-6feea5fa6023" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_267a2caf-8192-4623-880d-3be21454c89b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves_97b1a7cb-d78d-4045-b534-975d81ee4880" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsGrossAbstract_340ae83e-66b0-4368-b517-6feea5fa6023" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves_97b1a7cb-d78d-4045-b534-975d81ee4880" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign_c56c7311-e05a-4593-8bb5-d10a8ab64779" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsGrossAbstract_340ae83e-66b0-4368-b517-6feea5fa6023" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign_c56c7311-e05a-4593-8bb5-d10a8ab64779" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DeferredTaxAssetsLeaseLiability_4753267d-5a31-4649-84cd-8145ac804e1e" xlink:href="alg-20221231.xsd#alg_DeferredTaxAssetsLeaseLiability"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsGrossAbstract_340ae83e-66b0-4368-b517-6feea5fa6023" xlink:to="loc_alg_DeferredTaxAssetsLeaseLiability_4753267d-5a31-4649-84cd-8145ac804e1e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment_1309ccf9-6925-4176-a88b-edc1e67e4ad2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsGrossAbstract_340ae83e-66b0-4368-b517-6feea5fa6023" xlink:to="loc_us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment_1309ccf9-6925-4176-a88b-edc1e67e4ad2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOther_70240dba-ad4d-4445-af86-324509d71ff5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOther"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsGrossAbstract_340ae83e-66b0-4368-b517-6feea5fa6023" xlink:to="loc_us-gaap_DeferredTaxAssetsOther_70240dba-ad4d-4445-af86-324509d71ff5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_9a9dfb86-9d73-46f9-aa4f-0c2657001cad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsGrossAbstract_340ae83e-66b0-4368-b517-6feea5fa6023" xlink:to="loc_us-gaap_DeferredTaxAssetsGross_9a9dfb86-9d73-46f9-aa4f-0c2657001cad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_9801f3a7-c220-464e-a0ea-a0bbc40debc8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsValuationAllowance"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsGrossAbstract_340ae83e-66b0-4368-b517-6feea5fa6023" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_9801f3a7-c220-464e-a0ea-a0bbc40debc8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsNet_abd071d6-6cc6-4748-9528-56057ef916e7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsNet"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsGrossAbstract_340ae83e-66b0-4368-b517-6feea5fa6023" xlink:to="loc_us-gaap_DeferredTaxAssetsNet_abd071d6-6cc6-4748-9528-56057ef916e7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesAbstract_c89e7f94-70e5-46cd-a5d4-30f39d4d749f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_a4946927-3564-4b7d-91ef-4dbf4bdaac97" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesAbstract_c89e7f94-70e5-46cd-a5d4-30f39d4d749f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts_372ccc91-33f9-4113-ad02-2d22f814467d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_c89e7f94-70e5-46cd-a5d4-30f39d4d749f" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts_372ccc91-33f9-4113-ad02-2d22f814467d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_13bdcadd-157d-44cb-beba-7c35c063752d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_c89e7f94-70e5-46cd-a5d4-30f39d4d749f" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_13bdcadd-157d-44cb-beba-7c35c063752d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DeferredTaxLiabilitiesLeaseAsset_46b535b1-8134-4a9d-9d6a-b8c55a95aadf" xlink:href="alg-20221231.xsd#alg_DeferredTaxLiabilitiesLeaseAsset"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_c89e7f94-70e5-46cd-a5d4-30f39d4d749f" xlink:to="loc_alg_DeferredTaxLiabilitiesLeaseAsset_46b535b1-8134-4a9d-9d6a-b8c55a95aadf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_4f51c067-b378-4265-843c-8bd617041d85" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_c89e7f94-70e5-46cd-a5d4-30f39d4d749f" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_4f51c067-b378-4265-843c-8bd617041d85" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesOther_42ad2ce6-757b-4aa5-9e2f-391ee0bf47b2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesOther"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_c89e7f94-70e5-46cd-a5d4-30f39d4d749f" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesOther_42ad2ce6-757b-4aa5-9e2f-391ee0bf47b2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_b534571f-586e-483a-aed1-45b4cc8bffc3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_c89e7f94-70e5-46cd-a5d4-30f39d4d749f" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilities_b534571f-586e-483a-aed1-45b4cc8bffc3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilities_5234f6bc-8cb1-4b7a-ab07-df922103ad50" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilities"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_c89e7f94-70e5-46cd-a5d4-30f39d4d749f" xlink:to="loc_us-gaap_DeferredTaxLiabilities_5234f6bc-8cb1-4b7a-ab07-df922103ad50" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/IncomeTaxesAdditionalInformationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#IncomeTaxesAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/IncomeTaxesAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_189557ad-ddd4-4951-95c7-dcce063ed59d" 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_dbf010da-2ad0-409a-8cde-faed2b7c03dc" 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_189557ad-ddd4-4951-95c7-dcce063ed59d" xlink:to="loc_us-gaap_OperatingLossCarryforwardsTable_dbf010da-2ad0-409a-8cde-faed2b7c03dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_f3cd7bce-24fe-4026-8721-b5b981042e10" 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_dbf010da-2ad0-409a-8cde-faed2b7c03dc" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_f3cd7bce-24fe-4026-8721-b5b981042e10" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_98a17e4f-a42b-4711-b3e1-13c3fccc923b" 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_f3cd7bce-24fe-4026-8721-b5b981042e10" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_98a17e4f-a42b-4711-b3e1-13c3fccc923b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCountryMember_35190acc-c9fd-421f-a2c4-41bc2655a4fc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignCountryMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_98a17e4f-a42b-4711-b3e1-13c3fccc923b" xlink:to="loc_us-gaap_ForeignCountryMember_35190acc-c9fd-421f-a2c4-41bc2655a4fc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StateAndLocalJurisdictionMember_e0483fb1-5f07-4c6e-944c-e46a378beec4" 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_98a17e4f-a42b-4711-b3e1-13c3fccc923b" xlink:to="loc_us-gaap_StateAndLocalJurisdictionMember_e0483fb1-5f07-4c6e-944c-e46a378beec4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsLineItems_40ead41c-8280-4be0-8d73-648dc2df0bb6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwardsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable_dbf010da-2ad0-409a-8cde-faed2b7c03dc" xlink:to="loc_us-gaap_OperatingLossCarryforwardsLineItems_40ead41c-8280-4be0-8d73-648dc2df0bb6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration_96d49ea5-edc4-44ca-8ac2-7273f18e789c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_40ead41c-8280-4be0-8d73-648dc2df0bb6" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration_96d49ea5-edc4-44ca-8ac2-7273f18e789c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwards_ba508610-e513-4ff6-8a94-802bc9d89e77" 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_40ead41c-8280-4be0-8d73-648dc2df0bb6" xlink:to="loc_us-gaap_OperatingLossCarryforwards_ba508610-e513-4ff6-8a94-802bc9d89e77" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_1aefc735-3ec4-4842-aa24-13babb0e7776" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_40ead41c-8280-4be0-8d73-648dc2df0bb6" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_1aefc735-3ec4-4842-aa24-13babb0e7776" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary_e135f5cd-fa78-4165-bdba-f3b9d53362ce" xlink:href="alg-20221231.xsd#alg_TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_40ead41c-8280-4be0-8d73-648dc2df0bb6" xlink:to="loc_alg_TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary_e135f5cd-fa78-4165-bdba-f3b9d53362ce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/IncomeTaxesScheduleofUnrecognizedTaxBenefitsDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#IncomeTaxesScheduleofUnrecognizedTaxBenefitsDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/IncomeTaxesScheduleofUnrecognizedTaxBenefitsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_5ca377e2-5aab-4f71-9f9f-59bda18ea353" 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_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_2944e3c5-500d-4126-8570-5e7305d2dedd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_5ca377e2-5aab-4f71-9f9f-59bda18ea353" xlink:to="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_2944e3c5-500d-4126-8570-5e7305d2dedd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefits_947277b3-c5ff-40fb-a212-362bef5d983d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefits"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_2944e3c5-500d-4126-8570-5e7305d2dedd" xlink:to="loc_us-gaap_UnrecognizedTaxBenefits_947277b3-c5ff-40fb-a212-362bef5d983d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_24178a70-a021-49f5-b1f0-34e5a5e5e726" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_2944e3c5-500d-4126-8570-5e7305d2dedd" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_24178a70-a021-49f5-b1f0-34e5a5e5e726" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_2f46e2fd-4911-464f-8005-da9984f396ee" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_2944e3c5-500d-4126-8570-5e7305d2dedd" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_2f46e2fd-4911-464f-8005-da9984f396ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefits_3fa202bf-6720-48d0-9622-9956586adbf2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefits"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_2944e3c5-500d-4126-8570-5e7305d2dedd" xlink:to="loc_us-gaap_UnrecognizedTaxBenefits_3fa202bf-6720-48d0-9622-9956586adbf2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/CommonStockDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#CommonStockDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/CommonStockDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_9988ff5c-5f22-4d80-8d80-6ea51048ab6e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfStockByClassTable_c9829a60-e4e0-4542-9def-0635368edc72" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfStockByClassTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_9988ff5c-5f22-4d80-8d80-6ea51048ab6e" xlink:to="loc_us-gaap_ScheduleOfStockByClassTable_c9829a60-e4e0-4542-9def-0635368edc72" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_0721cf46-d892-46bd-9a23-b873ea06fe12" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_c9829a60-e4e0-4542-9def-0635368edc72" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_0721cf46-d892-46bd-9a23-b873ea06fe12" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_1ecea379-6188-4309-9906-cd7771a3f71a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_0721cf46-d892-46bd-9a23-b873ea06fe12" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_1ecea379-6188-4309-9906-cd7771a3f71a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_35f08353-e127-4532-b439-8448099064d7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_1ecea379-6188-4309-9906-cd7771a3f71a" xlink:to="loc_us-gaap_SubsequentEventMember_35f08353-e127-4532-b439-8448099064d7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockLineItems_c85d4215-66f4-46ed-b455-d0cb9b38f396" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_c9829a60-e4e0-4542-9def-0635368edc72" xlink:to="loc_us-gaap_ClassOfStockLineItems_c85d4215-66f4-46ed-b455-d0cb9b38f396" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockDividendsPerShareDeclared_a8157d2e-a3b6-4647-9524-d64835aa74c4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockDividendsPerShareDeclared"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_c85d4215-66f4-46ed-b455-d0cb9b38f396" xlink:to="loc_us-gaap_CommonStockDividendsPerShareDeclared_a8157d2e-a3b6-4647-9524-d64835aa74c4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockDividendsPerShareCashPaid_f400e0f8-850c-48b6-9967-8704afa55960" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockDividendsPerShareCashPaid"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_c85d4215-66f4-46ed-b455-d0cb9b38f396" xlink:to="loc_us-gaap_CommonStockDividendsPerShareCashPaid_f400e0f8-850c-48b6-9967-8704afa55960" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_74818a0a-8b7a-4099-b411-bd7a8f49bb1f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_c85d4215-66f4-46ed-b455-d0cb9b38f396" xlink:to="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_74818a0a-8b7a-4099-b411-bd7a8f49bb1f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired_4db6e0d3-376a-4a78-b836-908826381af7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockSharesAcquired"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_c85d4215-66f4-46ed-b455-d0cb9b38f396" xlink:to="loc_us-gaap_TreasuryStockSharesAcquired_4db6e0d3-376a-4a78-b836-908826381af7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#StockOptionsAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_52dabccf-7998-41c0-972a-f3d29b77f658" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1d0706dd-bd75-4fba-83b9-f8f3570d86e3" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_52dabccf-7998-41c0-972a-f3d29b77f658" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1d0706dd-bd75-4fba-83b9-f8f3570d86e3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_7c7be37b-e5bc-4805-9484-eb038bfea198" 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_1d0706dd-bd75-4fba-83b9-f8f3570d86e3" xlink:to="loc_us-gaap_PlanNameAxis_7c7be37b-e5bc-4805-9484-eb038bfea198" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_32cab3cb-1ecd-44a5-a574-ad39f767284a" 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_7c7be37b-e5bc-4805-9484-eb038bfea198" xlink:to="loc_us-gaap_PlanNameDomain_32cab3cb-1ecd-44a5-a574-ad39f767284a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_IncentiveStockOption2015PlanMember_a0cf0037-07aa-4d25-bcec-2c05eb75f25b" xlink:href="alg-20221231.xsd#alg_IncentiveStockOption2015PlanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_32cab3cb-1ecd-44a5-a574-ad39f767284a" xlink:to="loc_alg_IncentiveStockOption2015PlanMember_a0cf0037-07aa-4d25-bcec-2c05eb75f25b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_TwoZeroZeroNineEquityIncentivePlanMember_e1c9d75c-2e32-4725-a5e9-f32f36399e67" xlink:href="alg-20221231.xsd#alg_TwoZeroZeroNineEquityIncentivePlanMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_32cab3cb-1ecd-44a5-a574-ad39f767284a" xlink:to="loc_alg_TwoZeroZeroNineEquityIncentivePlanMember_e1c9d75c-2e32-4725-a5e9-f32f36399e67" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_05b218b5-78bd-43c3-baaf-52f927772815" 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_1d0706dd-bd75-4fba-83b9-f8f3570d86e3" xlink:to="loc_us-gaap_AwardTypeAxis_05b218b5-78bd-43c3-baaf-52f927772815" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_c0c219a2-dccb-42f4-bb7d-9b674278fe7c" 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_05b218b5-78bd-43c3-baaf-52f927772815" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_c0c219a2-dccb-42f4-bb7d-9b674278fe7c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_QualifiedStockOptionsMember_0d48e9d4-9a4e-4107-ad8c-4de2d88df46c" xlink:href="alg-20221231.xsd#alg_QualifiedStockOptionsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_c0c219a2-dccb-42f4-bb7d-9b674278fe7c" xlink:to="loc_alg_QualifiedStockOptionsMember_0d48e9d4-9a4e-4107-ad8c-4de2d88df46c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_NonQualifiedOptionsMember_d4b2c57a-060d-4c04-901d-ed8b9cdeb7b1" xlink:href="alg-20221231.xsd#alg_NonQualifiedOptionsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_c0c219a2-dccb-42f4-bb7d-9b674278fe7c" xlink:to="loc_alg_NonQualifiedOptionsMember_d4b2c57a-060d-4c04-901d-ed8b9cdeb7b1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_9648a1a0-54e6-4a0c-93c9-f60d4feba606" 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_c0c219a2-dccb-42f4-bb7d-9b674278fe7c" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_9648a1a0-54e6-4a0c-93c9-f60d4feba606" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockMember_af2bea7d-4565-414e-8c50-1357a32876bf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_c0c219a2-dccb-42f4-bb7d-9b674278fe7c" xlink:to="loc_us-gaap_RestrictedStockMember_af2bea7d-4565-414e-8c50-1357a32876bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember_e6992407-84e8-488d-a7cb-c497c20ccb59" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PerformanceSharesMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_c0c219a2-dccb-42f4-bb7d-9b674278fe7c" xlink:to="loc_us-gaap_PerformanceSharesMember_e6992407-84e8-488d-a7cb-c497c20ccb59" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VestingAxis_464ce6d2-45f4-4a7c-a645-44e8c86b288f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VestingAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1d0706dd-bd75-4fba-83b9-f8f3570d86e3" xlink:to="loc_us-gaap_VestingAxis_464ce6d2-45f4-4a7c-a645-44e8c86b288f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VestingDomain_aa83947f-7f4f-4a52-a3e8-779562fed592" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VestingDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VestingAxis_464ce6d2-45f4-4a7c-a645-44e8c86b288f" xlink:to="loc_us-gaap_VestingDomain_aa83947f-7f4f-4a52-a3e8-779562fed592" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAwardTrancheOneMember_1ac7a801-a37b-4ce8-bece-e8b710451876" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAwardTrancheOneMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VestingDomain_aa83947f-7f4f-4a52-a3e8-779562fed592" xlink:to="loc_us-gaap_ShareBasedCompensationAwardTrancheOneMember_1ac7a801-a37b-4ce8-bece-e8b710451876" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAwardTrancheTwoMember_fe2b2ecd-4b0f-448d-8809-ff6da67ea92e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAwardTrancheTwoMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VestingDomain_aa83947f-7f4f-4a52-a3e8-779562fed592" xlink:to="loc_us-gaap_ShareBasedCompensationAwardTrancheTwoMember_fe2b2ecd-4b0f-448d-8809-ff6da67ea92e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAwardTrancheThreeMember_50a5ade7-de3a-4ac9-af03-423ac0ac4c42" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAwardTrancheThreeMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VestingDomain_aa83947f-7f4f-4a52-a3e8-779562fed592" xlink:to="loc_us-gaap_ShareBasedCompensationAwardTrancheThreeMember_50a5ade7-de3a-4ac9-af03-423ac0ac4c42" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_SharebasedCompensationAwardTrancheFourMember_e260ba3a-22d9-42da-9832-ae2660e9330a" xlink:href="alg-20221231.xsd#alg_SharebasedCompensationAwardTrancheFourMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VestingDomain_aa83947f-7f4f-4a52-a3e8-779562fed592" xlink:to="loc_alg_SharebasedCompensationAwardTrancheFourMember_e260ba3a-22d9-42da-9832-ae2660e9330a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_SharebasedCompensationAwardTrancheFiveMember_75dc5760-a2bc-4597-9596-d0ff876a6a14" xlink:href="alg-20221231.xsd#alg_SharebasedCompensationAwardTrancheFiveMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VestingDomain_aa83947f-7f4f-4a52-a3e8-779562fed592" xlink:to="loc_alg_SharebasedCompensationAwardTrancheFiveMember_75dc5760-a2bc-4597-9596-d0ff876a6a14" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardDateAxis_641d1a63-49f7-43fe-a48a-1de2752e8b1c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardDateAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1d0706dd-bd75-4fba-83b9-f8f3570d86e3" xlink:to="loc_us-gaap_AwardDateAxis_641d1a63-49f7-43fe-a48a-1de2752e8b1c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardDateDomain_28c89b42-2a8f-4406-88b7-a74e745cbb29" 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_641d1a63-49f7-43fe-a48a-1de2752e8b1c" xlink:to="loc_us-gaap_AwardDateDomain_28c89b42-2a8f-4406-88b7-a74e745cbb29" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_AwardDateTwoMember_6b00a45b-2260-4869-bb59-2ed827e704ad" xlink:href="alg-20221231.xsd#alg_AwardDateTwoMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardDateDomain_28c89b42-2a8f-4406-88b7-a74e745cbb29" xlink:to="loc_alg_AwardDateTwoMember_6b00a45b-2260-4869-bb59-2ed827e704ad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_5e3d6a68-a10f-4401-b295-5e31fe47d508" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1d0706dd-bd75-4fba-83b9-f8f3570d86e3" xlink:to="loc_srt_RangeAxis_5e3d6a68-a10f-4401-b295-5e31fe47d508" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_bc8d003d-ccf6-4635-8c17-db2e566c9dfc" 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_5e3d6a68-a10f-4401-b295-5e31fe47d508" xlink:to="loc_srt_RangeMember_bc8d003d-ccf6-4635-8c17-db2e566c9dfc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_b803295b-5b79-420d-bba0-9d97373f68d2" 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_bc8d003d-ccf6-4635-8c17-db2e566c9dfc" xlink:to="loc_srt_MaximumMember_b803295b-5b79-420d-bba0-9d97373f68d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" 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_1d0706dd-bd75-4fba-83b9-f8f3570d86e3" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_e00b2e78-8cc8-41e0-aaa5-0a94890b6044" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_e00b2e78-8cc8-41e0-aaa5-0a94890b6044" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_bba09de0-72de-4fed-bef0-2e3c551e3801" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_bba09de0-72de-4fed-bef0-2e3c551e3801" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_14fcec85-3ed6-4dc0-bd23-563e76b6aef4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_14fcec85-3ed6-4dc0-bd23-563e76b6aef4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_7ed88cb4-305f-4d41-bab6-42efb761ca74" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_7ed88cb4-305f-4d41-bab6-42efb761ca74" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_65e47e36-e58d-41aa-b188-006b894b6112" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_65e47e36-e58d-41aa-b188-006b894b6112" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_5a6efd7c-48c8-4248-8411-306bdc41dcc1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_5a6efd7c-48c8-4248-8411-306bdc41dcc1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_d61b3db1-f82e-44ca-b5a4-17074fbbe8d5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_d61b3db1-f82e-44ca-b5a4-17074fbbe8d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1_61e17ec2-8f9e-4486-98a8-39dc7c2d6c32" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1_61e17ec2-8f9e-4486-98a8-39dc7c2d6c32" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_41020b89-8734-4da5-880e-e0335c54df33" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_41020b89-8734-4da5-880e-e0335c54df33" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_35990ad7-ecfa-4375-9dad-92d506046841" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_35990ad7-ecfa-4375-9dad-92d506046841" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromStockOptionsExercised_8a728d32-033c-4f5d-a358-89ddc7d54d27" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromStockOptionsExercised"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_ProceedsFromStockOptionsExercised_8a728d32-033c-4f5d-a358-89ddc7d54d27" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms_892bc504-12ce-4e6d-9808-8c193d4a4dc4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms_892bc504-12ce-4e6d-9808-8c193d4a4dc4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_fbf01bf1-5ec2-461f-bbaa-4981f2107982" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_8fbd2b8e-df82-4f77-a330-9a4f04f04d1e" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_fbf01bf1-5ec2-461f-bbaa-4981f2107982" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#StockOptionsScheduleofQualifiedStockOptionActivityDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_a2dd3716-9c40-49ec-9885-267964b7c4d0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_86b5fd60-014f-4642-ade9-c19e9d0c7cfe" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_a2dd3716-9c40-49ec-9885-267964b7c4d0" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_86b5fd60-014f-4642-ade9-c19e9d0c7cfe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_444dd7a1-6ca0-44d5-8f2c-b9b30c0c9b6f" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_86b5fd60-014f-4642-ade9-c19e9d0c7cfe" xlink:to="loc_us-gaap_AwardTypeAxis_444dd7a1-6ca0-44d5-8f2c-b9b30c0c9b6f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2356e5d9-4f91-4194-986e-c5fc7a2c2223" 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_444dd7a1-6ca0-44d5-8f2c-b9b30c0c9b6f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2356e5d9-4f91-4194-986e-c5fc7a2c2223" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_QualifiedStockOptionsMember_1c3ea0de-43af-49d9-a049-768d2d954f95" xlink:href="alg-20221231.xsd#alg_QualifiedStockOptionsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2356e5d9-4f91-4194-986e-c5fc7a2c2223" xlink:to="loc_alg_QualifiedStockOptionsMember_1c3ea0de-43af-49d9-a049-768d2d954f95" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_763f431b-c212-47b4-b81f-98149f72ae66" 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_86b5fd60-014f-4642-ade9-c19e9d0c7cfe" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_763f431b-c212-47b4-b81f-98149f72ae66" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_1415765c-6c97-48df-88f4-9ad6773fbf7b" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_763f431b-c212-47b4-b81f-98149f72ae66" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_1415765c-6c97-48df-88f4-9ad6773fbf7b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_e8efc0e9-afd9-45a1-8f2c-99d81d7c335b" 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_1415765c-6c97-48df-88f4-9ad6773fbf7b" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_e8efc0e9-afd9-45a1-8f2c-99d81d7c335b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_ddbec8ea-342a-4822-b0bd-7fafc028718c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_1415765c-6c97-48df-88f4-9ad6773fbf7b" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_ddbec8ea-342a-4822-b0bd-7fafc028718c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_b4399990-c271-4e5c-8be1-b69bdb4a0872" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_1415765c-6c97-48df-88f4-9ad6773fbf7b" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_b4399990-c271-4e5c-8be1-b69bdb4a0872" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_27d601df-2134-4371-b302-b807bdf19df4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_1415765c-6c97-48df-88f4-9ad6773fbf7b" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_27d601df-2134-4371-b302-b807bdf19df4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_a48e397e-e6dc-4fbb-b8f4-a6d174f664cf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_1415765c-6c97-48df-88f4-9ad6773fbf7b" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_a48e397e-e6dc-4fbb-b8f4-a6d174f664cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_34015693-aef7-4a52-8ad1-54e410dfaa0f" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_763f431b-c212-47b4-b81f-98149f72ae66" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_34015693-aef7-4a52-8ad1-54e410dfaa0f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_f30f9557-5501-468c-a559-fb887ca30e2c" 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_34015693-aef7-4a52-8ad1-54e410dfaa0f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_f30f9557-5501-468c-a559-fb887ca30e2c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_985519ad-0d3d-4574-a165-61b5f136bf4e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_34015693-aef7-4a52-8ad1-54e410dfaa0f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_985519ad-0d3d-4574-a165-61b5f136bf4e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_7b3f7332-31d0-4f79-86c3-f45c6339a524" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_34015693-aef7-4a52-8ad1-54e410dfaa0f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_7b3f7332-31d0-4f79-86c3-f45c6339a524" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_c10b323b-0c42-4cf7-aa6d-0d6ab03c5883" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_34015693-aef7-4a52-8ad1-54e410dfaa0f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_c10b323b-0c42-4cf7-aa6d-0d6ab03c5883" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_4be98d00-d1e2-4321-85f4-f63f242e1e48" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_34015693-aef7-4a52-8ad1-54e410dfaa0f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_4be98d00-d1e2-4321-85f4-f63f242e1e48" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_43370a30-d6ae-4123-b689-d89feb164847" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_763f431b-c212-47b4-b81f-98149f72ae66" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_43370a30-d6ae-4123-b689-d89feb164847" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_ef656343-b1a7-4b46-b4b5-e6005d068af5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_763f431b-c212-47b4-b81f-98149f72ae66" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_ef656343-b1a7-4b46-b4b5-e6005d068af5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_c6be27e0-aabb-45e7-8540-745e6ced0156" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_763f431b-c212-47b4-b81f-98149f72ae66" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_c6be27e0-aabb-45e7-8540-745e6ced0156" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_978964a0-0fb1-488b-8dc5-044bfaaebfb3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_cc7b056c-c401-4976-badb-14c1eb2e98a5" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_978964a0-0fb1-488b-8dc5-044bfaaebfb3" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_cc7b056c-c401-4976-badb-14c1eb2e98a5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_4cbc98b2-8cb7-4ccc-9b8f-adad6e81f1a7" 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_cc7b056c-c401-4976-badb-14c1eb2e98a5" xlink:to="loc_us-gaap_AwardTypeAxis_4cbc98b2-8cb7-4ccc-9b8f-adad6e81f1a7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e451b720-4103-4a14-9062-f34591de1f79" 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_4cbc98b2-8cb7-4ccc-9b8f-adad6e81f1a7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e451b720-4103-4a14-9062-f34591de1f79" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_QualifiedStockOptionsMember_93ec7d78-8a55-4699-9ccc-b85098ed6d87" xlink:href="alg-20221231.xsd#alg_QualifiedStockOptionsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e451b720-4103-4a14-9062-f34591de1f79" xlink:to="loc_alg_QualifiedStockOptionsMember_93ec7d78-8a55-4699-9ccc-b85098ed6d87" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_9adcd907-c52b-45b5-9a0e-836b0c164a58" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_cc7b056c-c401-4976-badb-14c1eb2e98a5" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_9adcd907-c52b-45b5-9a0e-836b0c164a58" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_afbd7ff9-b07e-4c85-bf0c-d7ac72ee43c9" 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_9adcd907-c52b-45b5-9a0e-836b0c164a58" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_afbd7ff9-b07e-4c85-bf0c-d7ac72ee43c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_QualifiedStockOptionsExercisePriceRangeOneMember_20d2208e-f70b-4205-a72b-2ddd21306001" xlink:href="alg-20221231.xsd#alg_QualifiedStockOptionsExercisePriceRangeOneMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_afbd7ff9-b07e-4c85-bf0c-d7ac72ee43c9" xlink:to="loc_alg_QualifiedStockOptionsExercisePriceRangeOneMember_20d2208e-f70b-4205-a72b-2ddd21306001" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_QualifiedStockOptionsExercisePriceRangeTwoMember_822584f4-7880-4cb1-a168-a407713cbf30" xlink:href="alg-20221231.xsd#alg_QualifiedStockOptionsExercisePriceRangeTwoMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_afbd7ff9-b07e-4c85-bf0c-d7ac72ee43c9" xlink:to="loc_alg_QualifiedStockOptionsExercisePriceRangeTwoMember_822584f4-7880-4cb1-a168-a407713cbf30" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_QualifiedStockOptionsExercisePriceRangeThreeMember_ec2df00a-fcdd-4c06-b668-8ece61d57379" xlink:href="alg-20221231.xsd#alg_QualifiedStockOptionsExercisePriceRangeThreeMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_afbd7ff9-b07e-4c85-bf0c-d7ac72ee43c9" xlink:to="loc_alg_QualifiedStockOptionsExercisePriceRangeThreeMember_ec2df00a-fcdd-4c06-b668-8ece61d57379" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_88eb048f-a4ea-470a-a3ab-77e1e0124a39" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_cc7b056c-c401-4976-badb-14c1eb2e98a5" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_88eb048f-a4ea-470a-a3ab-77e1e0124a39" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_0ff2aedf-88b1-467e-8fa2-9d459d92c110" 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_88eb048f-a4ea-470a-a3ab-77e1e0124a39" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_0ff2aedf-88b1-467e-8fa2-9d459d92c110" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_b4d3b0a7-bee7-4d20-ac50-ae5f473893eb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_88eb048f-a4ea-470a-a3ab-77e1e0124a39" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_b4d3b0a7-bee7-4d20-ac50-ae5f473893eb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_d622a8ca-3a6a-4958-aa8c-616722117950" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_88eb048f-a4ea-470a-a3ab-77e1e0124a39" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_d622a8ca-3a6a-4958-aa8c-616722117950" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_1b27e55b-226e-451a-91c1-b1dbe975f2de" 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_88eb048f-a4ea-470a-a3ab-77e1e0124a39" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_1b27e55b-226e-451a-91c1-b1dbe975f2de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_fcd4be4b-2e69-4502-bb01-4863c7d33a37" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_88eb048f-a4ea-470a-a3ab-77e1e0124a39" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_fcd4be4b-2e69-4502-bb01-4863c7d33a37" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_9e47d34e-3ee4-44c4-8954-bcc969c17b35" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_88eb048f-a4ea-470a-a3ab-77e1e0124a39" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_9e47d34e-3ee4-44c4-8954-bcc969c17b35" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_46f14dc4-4403-4fcd-b0f5-215247c1a67f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_88eb048f-a4ea-470a-a3ab-77e1e0124a39" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_46f14dc4-4403-4fcd-b0f5-215247c1a67f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_7d331c1e-f454-46fe-a24b-a8a5acbd304f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_88eb048f-a4ea-470a-a3ab-77e1e0124a39" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_7d331c1e-f454-46fe-a24b-a8a5acbd304f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_a722751b-9bb5-4bf0-b790-9e04106fc8b2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_88eb048f-a4ea-470a-a3ab-77e1e0124a39" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_a722751b-9bb5-4bf0-b790-9e04106fc8b2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/StockOptionsEquityIncentivePlanDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#StockOptionsEquityIncentivePlanDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/StockOptionsEquityIncentivePlanDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_74a1fc8b-8b4b-4863-9dd0-1b025970fe23" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c26ec162-0009-4e5a-b6f3-d70f65461df7" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_74a1fc8b-8b4b-4863-9dd0-1b025970fe23" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c26ec162-0009-4e5a-b6f3-d70f65461df7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_70ae28b9-e9f3-45ca-8eea-f59fd9fc342c" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c26ec162-0009-4e5a-b6f3-d70f65461df7" xlink:to="loc_us-gaap_AwardTypeAxis_70ae28b9-e9f3-45ca-8eea-f59fd9fc342c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_76bddc1c-6a32-45b8-af8e-1f0d127604f6" 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_70ae28b9-e9f3-45ca-8eea-f59fd9fc342c" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_76bddc1c-6a32-45b8-af8e-1f0d127604f6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_NonQualifiedOptionsMember_2b3892a3-8f52-4988-b7ef-0ef1bd244959" xlink:href="alg-20221231.xsd#alg_NonQualifiedOptionsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_76bddc1c-6a32-45b8-af8e-1f0d127604f6" xlink:to="loc_alg_NonQualifiedOptionsMember_2b3892a3-8f52-4988-b7ef-0ef1bd244959" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fac37a83-c1db-4904-8771-36500a35542c" 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_c26ec162-0009-4e5a-b6f3-d70f65461df7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fac37a83-c1db-4904-8771-36500a35542c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_152d29a6-f28c-4045-b5d3-b5ad644334d6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fac37a83-c1db-4904-8771-36500a35542c" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_152d29a6-f28c-4045-b5d3-b5ad644334d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_3fcc5287-4265-4712-99f2-eebe72fcc943" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_776cf7e0-53c5-418f-84f9-ead4874811d4" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_3fcc5287-4265-4712-99f2-eebe72fcc943" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_776cf7e0-53c5-418f-84f9-ead4874811d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_479dc705-f9ca-47a4-89db-92d71f5b8494" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_776cf7e0-53c5-418f-84f9-ead4874811d4" xlink:to="loc_us-gaap_AwardTypeAxis_479dc705-f9ca-47a4-89db-92d71f5b8494" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_afa1de5a-da33-4b73-b0dc-8a4196fe2e0b" 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_479dc705-f9ca-47a4-89db-92d71f5b8494" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_afa1de5a-da33-4b73-b0dc-8a4196fe2e0b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_NonQualifiedOptionsMember_6333de61-56b6-4034-9fd1-f38c4eda7b63" xlink:href="alg-20221231.xsd#alg_NonQualifiedOptionsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_afa1de5a-da33-4b73-b0dc-8a4196fe2e0b" xlink:to="loc_alg_NonQualifiedOptionsMember_6333de61-56b6-4034-9fd1-f38c4eda7b63" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_16b2a92b-2b87-406e-84a9-e3cf6d15a0ea" 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_776cf7e0-53c5-418f-84f9-ead4874811d4" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_16b2a92b-2b87-406e-84a9-e3cf6d15a0ea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_35eed432-f36b-429c-b668-63e68d054ea1" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_16b2a92b-2b87-406e-84a9-e3cf6d15a0ea" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_35eed432-f36b-429c-b668-63e68d054ea1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_a214edc4-4089-48f9-b0ac-31b6858addef" 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_35eed432-f36b-429c-b668-63e68d054ea1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_a214edc4-4089-48f9-b0ac-31b6858addef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_aec8074e-b181-4151-8243-a1b9a44be502" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_35eed432-f36b-429c-b668-63e68d054ea1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_aec8074e-b181-4151-8243-a1b9a44be502" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_f1dcfb72-0aac-42e2-bbf1-3ca337d9c15a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_35eed432-f36b-429c-b668-63e68d054ea1" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_f1dcfb72-0aac-42e2-bbf1-3ca337d9c15a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_f4655774-f14e-4021-bc42-a8409bbe02fe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_35eed432-f36b-429c-b668-63e68d054ea1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_f4655774-f14e-4021-bc42-a8409bbe02fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_69cfd02a-2c80-4a72-8933-f8690d8e2a2c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_35eed432-f36b-429c-b668-63e68d054ea1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_69cfd02a-2c80-4a72-8933-f8690d8e2a2c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_82e723e1-4072-4057-a081-da17be189214" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_16b2a92b-2b87-406e-84a9-e3cf6d15a0ea" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_82e723e1-4072-4057-a081-da17be189214" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_86d6d3f5-a6b8-4bf1-a1d5-c216b81d8b31" 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_82e723e1-4072-4057-a081-da17be189214" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_86d6d3f5-a6b8-4bf1-a1d5-c216b81d8b31" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_3b1549a8-8249-4292-b787-4f916b82a185" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_82e723e1-4072-4057-a081-da17be189214" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_3b1549a8-8249-4292-b787-4f916b82a185" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_044323d7-72aa-4d52-8ab6-05132530ce86" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_82e723e1-4072-4057-a081-da17be189214" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_044323d7-72aa-4d52-8ab6-05132530ce86" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_1ce36a77-7324-4726-bb6c-d14596c00274" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_82e723e1-4072-4057-a081-da17be189214" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_1ce36a77-7324-4726-bb6c-d14596c00274" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_7f98bd18-dfcf-48cb-b929-bd5604b20f54" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_82e723e1-4072-4057-a081-da17be189214" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_7f98bd18-dfcf-48cb-b929-bd5604b20f54" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_e9f52400-6ec2-4def-b408-9d2abbae4c14" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_16b2a92b-2b87-406e-84a9-e3cf6d15a0ea" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_e9f52400-6ec2-4def-b408-9d2abbae4c14" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_5d5e119b-dda2-4dcb-9645-eb795358d3b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_16b2a92b-2b87-406e-84a9-e3cf6d15a0ea" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_5d5e119b-dda2-4dcb-9645-eb795358d3b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_d36caf1f-0e73-420e-b906-a4015e4695c4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_80f8e224-d4a1-4e9c-9825-2ef597aab943" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_d36caf1f-0e73-420e-b906-a4015e4695c4" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_80f8e224-d4a1-4e9c-9825-2ef597aab943" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_263831d1-f9c6-46ee-a038-5060dda9df70" 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_80f8e224-d4a1-4e9c-9825-2ef597aab943" xlink:to="loc_us-gaap_AwardTypeAxis_263831d1-f9c6-46ee-a038-5060dda9df70" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_8baea75b-fb0c-4518-8778-090ccb06680f" 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_263831d1-f9c6-46ee-a038-5060dda9df70" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_8baea75b-fb0c-4518-8778-090ccb06680f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_NonQualifiedOptionsMember_b64c0b34-4d09-457f-aa48-0ef752b1c923" xlink:href="alg-20221231.xsd#alg_NonQualifiedOptionsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_8baea75b-fb0c-4518-8778-090ccb06680f" xlink:to="loc_alg_NonQualifiedOptionsMember_b64c0b34-4d09-457f-aa48-0ef752b1c923" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_d5c93eff-00b9-4634-9126-1d1392df8348" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_80f8e224-d4a1-4e9c-9825-2ef597aab943" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_d5c93eff-00b9-4634-9126-1d1392df8348" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_000b2321-14f7-4fb5-bd2c-6e1b31035af4" 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_d5c93eff-00b9-4634-9126-1d1392df8348" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_000b2321-14f7-4fb5-bd2c-6e1b31035af4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_NonQualifiedStockOptionsExercisePriceRangeThreeMember_94eaf6cd-9ba6-4f88-9c49-862ee129299d" xlink:href="alg-20221231.xsd#alg_NonQualifiedStockOptionsExercisePriceRangeThreeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_000b2321-14f7-4fb5-bd2c-6e1b31035af4" xlink:to="loc_alg_NonQualifiedStockOptionsExercisePriceRangeThreeMember_94eaf6cd-9ba6-4f88-9c49-862ee129299d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_63a58844-ae69-438c-a324-efd1baff070c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_80f8e224-d4a1-4e9c-9825-2ef597aab943" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_63a58844-ae69-438c-a324-efd1baff070c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_cd57d346-6387-47cf-ba2f-11facdbf58e2" 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_63a58844-ae69-438c-a324-efd1baff070c" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_cd57d346-6387-47cf-ba2f-11facdbf58e2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_5c73c2d4-e8c9-476c-b64b-f1e56c6e2910" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_63a58844-ae69-438c-a324-efd1baff070c" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_5c73c2d4-e8c9-476c-b64b-f1e56c6e2910" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_55eec631-9df3-417f-8852-549a1d4ac5dd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_63a58844-ae69-438c-a324-efd1baff070c" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_55eec631-9df3-417f-8852-549a1d4ac5dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_6f8b89c2-e49b-4026-9e14-62ae32576faf" 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_63a58844-ae69-438c-a324-efd1baff070c" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_6f8b89c2-e49b-4026-9e14-62ae32576faf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_cb01d462-32fb-4300-9807-75569c387bbf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_63a58844-ae69-438c-a324-efd1baff070c" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_cb01d462-32fb-4300-9807-75569c387bbf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_6dba4f91-bd93-4af9-805e-16125dfb31b5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_63a58844-ae69-438c-a324-efd1baff070c" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_6dba4f91-bd93-4af9-805e-16125dfb31b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_8c73052b-7c25-4331-8a17-f483bf49c60f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_63a58844-ae69-438c-a324-efd1baff070c" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_8c73052b-7c25-4331-8a17-f483bf49c60f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_e57078a9-22c1-4818-93ef-d302d1b54549" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_63a58844-ae69-438c-a324-efd1baff070c" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_e57078a9-22c1-4818-93ef-d302d1b54549" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_af969e06-62d2-4e47-a6ae-eb68d9ac3071" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_63a58844-ae69-438c-a324-efd1baff070c" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_af969e06-62d2-4e47-a6ae-eb68d9ac3071" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#StockOptionsScheduleofRestrictedStockAwardActivityDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_ee20c892-9ef6-4072-a70d-744a3cffe146" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_92df54c5-7a3d-4438-8b43-06ac62e84c4f" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_ee20c892-9ef6-4072-a70d-744a3cffe146" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_92df54c5-7a3d-4438-8b43-06ac62e84c4f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_1e87a85d-fe0e-4e68-807a-5f02e5b49856" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_92df54c5-7a3d-4438-8b43-06ac62e84c4f" xlink:to="loc_us-gaap_AwardTypeAxis_1e87a85d-fe0e-4e68-807a-5f02e5b49856" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_9760c52e-c917-4146-9f32-f4d0d5873591" 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_1e87a85d-fe0e-4e68-807a-5f02e5b49856" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_9760c52e-c917-4146-9f32-f4d0d5873591" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockMember_19d1e0c1-1986-4f62-b6c3-964fedac6f98" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_9760c52e-c917-4146-9f32-f4d0d5873591" xlink:to="loc_us-gaap_RestrictedStockMember_19d1e0c1-1986-4f62-b6c3-964fedac6f98" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1331d774-f5e4-41e5-a461-843ed98017dd" 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_92df54c5-7a3d-4438-8b43-06ac62e84c4f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1331d774-f5e4-41e5-a461-843ed98017dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_6a59a58d-9880-4e7a-8e22-9f18d12be944" 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_1331d774-f5e4-41e5-a461-843ed98017dd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_6a59a58d-9880-4e7a-8e22-9f18d12be944" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_f023f589-285e-4f61-b799-e7878c3c8231" 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_6a59a58d-9880-4e7a-8e22-9f18d12be944" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_f023f589-285e-4f61-b799-e7878c3c8231" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_de67db9e-0fdc-40a2-b4f2-9c7cb4aad751" 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_6a59a58d-9880-4e7a-8e22-9f18d12be944" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_de67db9e-0fdc-40a2-b4f2-9c7cb4aad751" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_8ef80e2f-14c8-4c17-804a-e1aecb18440f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_6a59a58d-9880-4e7a-8e22-9f18d12be944" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_8ef80e2f-14c8-4c17-804a-e1aecb18440f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_9aaac74e-e259-42a7-82d7-7ee2fb5fec8f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_6a59a58d-9880-4e7a-8e22-9f18d12be944" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_9aaac74e-e259-42a7-82d7-7ee2fb5fec8f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_2c3b2a45-21c2-4c10-b09e-2053c934de7a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_6a59a58d-9880-4e7a-8e22-9f18d12be944" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_2c3b2a45-21c2-4c10-b09e-2053c934de7a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_a3156eb1-2b5e-4c04-b9b2-5a99183ed71e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1331d774-f5e4-41e5-a461-843ed98017dd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_a3156eb1-2b5e-4c04-b9b2-5a99183ed71e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_4fdfc099-d439-45ea-aa1d-599cb4d6c2a6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_a3156eb1-2b5e-4c04-b9b2-5a99183ed71e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_4fdfc099-d439-45ea-aa1d-599cb4d6c2a6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_9842e83a-8fc5-43c3-b761-658f5b710d71" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_a3156eb1-2b5e-4c04-b9b2-5a99183ed71e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_9842e83a-8fc5-43c3-b761-658f5b710d71" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_c06930bc-5e1b-47be-985d-7574363bdf5b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_a3156eb1-2b5e-4c04-b9b2-5a99183ed71e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_c06930bc-5e1b-47be-985d-7574363bdf5b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_944f1cc8-afdb-440c-b1d7-6272a4d9a906" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_a3156eb1-2b5e-4c04-b9b2-5a99183ed71e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_944f1cc8-afdb-440c-b1d7-6272a4d9a906" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_4994feb2-e55d-4f7e-af08-c9742d078521" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_a3156eb1-2b5e-4c04-b9b2-5a99183ed71e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_4994feb2-e55d-4f7e-af08-c9742d078521" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#RetirementBenefitPlansAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_edabb9ca-5427-4246-9b55-59dc64ab9dfb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_0fb0ba8f-a77f-4c18-a139-cc2806718567" 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_us-gaap_CompensationAndRetirementDisclosureAbstract_edabb9ca-5427-4246-9b55-59dc64ab9dfb" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_0fb0ba8f-a77f-4c18-a139-cc2806718567" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanSponsorLocationAxis_0668ff0e-013a-4b4c-969c-355f5415df6e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanSponsorLocationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_0fb0ba8f-a77f-4c18-a139-cc2806718567" xlink:to="loc_us-gaap_RetirementPlanSponsorLocationAxis_0668ff0e-013a-4b4c-969c-355f5415df6e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanSponsorLocationDomain_f3b16a18-735f-405e-88f4-d87c78230c07" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanSponsorLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanSponsorLocationAxis_0668ff0e-013a-4b4c-969c-355f5415df6e" xlink:to="loc_us-gaap_RetirementPlanSponsorLocationDomain_f3b16a18-735f-405e-88f4-d87c78230c07" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DomesticPlanMember_f1d688c6-ef80-4a51-ad3e-38d8401975fe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DomesticPlanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanSponsorLocationDomain_f3b16a18-735f-405e-88f4-d87c78230c07" xlink:to="loc_us-gaap_DomesticPlanMember_f1d688c6-ef80-4a51-ad3e-38d8401975fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_US_6d52c18a-6909-42bd-85d4-e6641cb01f24" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_US"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DomesticPlanMember_f1d688c6-ef80-4a51-ad3e-38d8401975fe" xlink:to="loc_country_US_6d52c18a-6909-42bd-85d4-e6641cb01f24" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignPlanMember_f557b929-ae18-45e6-a056-cc1810cadb4d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignPlanMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanSponsorLocationDomain_f3b16a18-735f-405e-88f4-d87c78230c07" xlink:to="loc_us-gaap_ForeignPlanMember_f557b929-ae18-45e6-a056-cc1810cadb4d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanNameAxis_00a63436-305d-42fa-8a23-81f4aea4ccac" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanNameAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_0fb0ba8f-a77f-4c18-a139-cc2806718567" xlink:to="loc_us-gaap_RetirementPlanNameAxis_00a63436-305d-42fa-8a23-81f4aea4ccac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanNameDomain_7a296fd4-ebbe-4d0e-a208-9245e02a3c03" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanNameAxis_00a63436-305d-42fa-8a23-81f4aea4ccac" xlink:to="loc_us-gaap_RetirementPlanNameDomain_7a296fd4-ebbe-4d0e-a208-9245e02a3c03" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_GradallCompanyEmployeesRetirementPlanMember_ac916d13-68cc-4e68-81ff-c0fd87b7eb3c" xlink:href="alg-20221231.xsd#alg_GradallCompanyEmployeesRetirementPlanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanNameDomain_7a296fd4-ebbe-4d0e-a208-9245e02a3c03" xlink:to="loc_alg_GradallCompanyEmployeesRetirementPlanMember_ac916d13-68cc-4e68-81ff-c0fd87b7eb3c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember_9372e4ec-a1e8-49f9-bcc0-1ce55930cad7" xlink:href="alg-20221231.xsd#alg_InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanNameDomain_7a296fd4-ebbe-4d0e-a208-9245e02a3c03" xlink:to="loc_alg_InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember_9372e4ec-a1e8-49f9-bcc0-1ce55930cad7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_00a2361b-68f9-4c2d-87be-3c14369e7512" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_0fb0ba8f-a77f-4c18-a139-cc2806718567" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_00a2361b-68f9-4c2d-87be-3c14369e7512" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_24c4ca06-4922-469d-980c-9d9062dcf108" 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_00a2361b-68f9-4c2d-87be-3c14369e7512" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_24c4ca06-4922-469d-980c-9d9062dcf108" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_b36bc0ad-a158-4815-98d0-9f934952471b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionPlansDefinedBenefitMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_24c4ca06-4922-469d-980c-9d9062dcf108" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_b36bc0ad-a158-4815-98d0-9f934952471b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_da734903-7df7-4b34-8336-01b89c9c8437" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_24c4ca06-4922-469d-980c-9d9062dcf108" xlink:to="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_da734903-7df7-4b34-8336-01b89c9c8437" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_d59f6617-2011-48ed-a351-d85a16896a2a" 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_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_0fb0ba8f-a77f-4c18-a139-cc2806718567" xlink:to="loc_srt_RangeAxis_d59f6617-2011-48ed-a351-d85a16896a2a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_08f9a068-53a1-4382-8805-78361c211930" 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_d59f6617-2011-48ed-a351-d85a16896a2a" xlink:to="loc_srt_RangeMember_08f9a068-53a1-4382-8805-78361c211930" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_591129fa-ff50-446c-aade-7790656e73b8" 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_08f9a068-53a1-4382-8805-78361c211930" xlink:to="loc_srt_MinimumMember_591129fa-ff50-446c-aade-7790656e73b8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_86f7c7a6-9d8d-4da1-bd1b-6a27dce0ec5a" 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_08f9a068-53a1-4382-8805-78361c211930" xlink:to="loc_srt_MaximumMember_86f7c7a6-9d8d-4da1-bd1b-6a27dce0ec5a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementScenarioAxis_65552f30-dc88-4921-894a-a76494ec550c" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementScenarioAxis"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_0fb0ba8f-a77f-4c18-a139-cc2806718567" xlink:to="loc_srt_StatementScenarioAxis_65552f30-dc88-4921-894a-a76494ec550c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain_1c45b786-ddc9-467e-8937-22221a4c072b" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementScenarioAxis_65552f30-dc88-4921-894a-a76494ec550c" xlink:to="loc_srt_ScenarioUnspecifiedDomain_1c45b786-ddc9-467e-8937-22221a4c072b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioForecastMember_d2b857b7-fedd-45df-b89c-0ecdc474bb2f" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioForecastMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ScenarioUnspecifiedDomain_1c45b786-ddc9-467e-8937-22221a4c072b" xlink:to="loc_srt_ScenarioForecastMember_d2b857b7-fedd-45df-b89c-0ecdc474bb2f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_0fb0ba8f-a77f-4c18-a139-cc2806718567" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans_6ef1c6c0-992a-473f-9a75-0cba58b21f57" xlink:href="alg-20221231.xsd#alg_DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans_6ef1c6c0-992a-473f-9a75-0cba58b21f57" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_FormerEmployeesCoveredByPensionPlan_13d3c5fb-4d3e-4006-8427-90c545aa02ba" xlink:href="alg-20221231.xsd#alg_FormerEmployeesCoveredByPensionPlan"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_FormerEmployeesCoveredByPensionPlan_13d3c5fb-4d3e-4006-8427-90c545aa02ba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_CurrentEmployeesCoveredByPensionPlan_29aeac8c-e716-4669-983f-c485b36546f5" xlink:href="alg-20221231.xsd#alg_CurrentEmployeesCoveredByPensionPlan"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_CurrentEmployeesCoveredByPensionPlan_29aeac8c-e716-4669-983f-c485b36546f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax_92120658-9781-4968-a4ab-aa611ba2b488" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax_92120658-9781-4968-a4ab-aa611ba2b488" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DeferredCompensationArrangementRequisiteServicePeriod_64c0a1de-fb32-42a3-8170-82f1b67aa157" xlink:href="alg-20221231.xsd#alg_DeferredCompensationArrangementRequisiteServicePeriod"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_DeferredCompensationArrangementRequisiteServicePeriod_64c0a1de-fb32-42a3-8170-82f1b67aa157" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption_fed7c7e3-e9f0-405a-a28b-0a37551dae37" xlink:href="alg-20221231.xsd#alg_PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption_fed7c7e3-e9f0-405a-a28b-0a37551dae37" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit_d4b7bb37-1c49-4daf-a575-7f45e03ca11d" xlink:href="alg-20221231.xsd#alg_DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit_d4b7bb37-1c49-4daf-a575-7f45e03ca11d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DeferredCompensationArrangementWithIndividualRetirementAge_ea51cc31-08c7-4bc2-b974-ccaf45e2cbf2" xlink:href="alg-20221231.xsd#alg_DeferredCompensationArrangementWithIndividualRetirementAge"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_DeferredCompensationArrangementWithIndividualRetirementAge_ea51cc31-08c7-4bc2-b974-ccaf45e2cbf2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl_4920c0c1-1860-4a08-afb0-957a2d084ff7" xlink:href="alg-20221231.xsd#alg_DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl_4920c0c1-1860-4a08-afb0-957a2d084ff7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DeferredCompensationArrangementMaximumContractualTerm_1314c588-0006-4c4a-a737-2e2b8d3d0c3d" xlink:href="alg-20221231.xsd#alg_DeferredCompensationArrangementMaximumContractualTerm"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_DeferredCompensationArrangementMaximumContractualTerm_1314c588-0006-4c4a-a737-2e2b8d3d0c3d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DefinedBenefitPlanRetirementBenefitPercentage_4b7c72e1-fd20-40a4-be37-6da04f98b9b0" xlink:href="alg-20221231.xsd#alg_DefinedBenefitPlanRetirementBenefitPercentage"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_DefinedBenefitPlanRetirementBenefitPercentage_4b7c72e1-fd20-40a4-be37-6da04f98b9b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DefinedContributionPlanNumberOfPlans_969e5453-068f-48b0-8a76-156cc227f63f" xlink:href="alg-20221231.xsd#alg_DefinedContributionPlanNumberOfPlans"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_DefinedContributionPlanNumberOfPlans_969e5453-068f-48b0-8a76-156cc227f63f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount_cb70213d-c3bf-4a8f-8ce0-d045d787b55c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount_cb70213d-c3bf-4a8f-8ce0-d045d787b55c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_DefinedContributionPlanNumberOfSubsidiaries_2be7378c-bd6d-44e9-b37b-0cb23030c919" xlink:href="alg-20221231.xsd#alg_DefinedContributionPlanNumberOfSubsidiaries"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_alg_DefinedContributionPlanNumberOfSubsidiaries_2be7378c-bd6d-44e9-b37b-0cb23030c919" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_a4d2664b-a10f-4211-bcee-9bbea015c96f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_8ebde169-8ae6-4390-a0a3-44253b5847fd" xlink:to="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_a4d2664b-a10f-4211-bcee-9bbea015c96f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_e4308179-71be-45b6-81a9-e4beedd02158" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_0d5adc9e-3347-4067-b14e-bfa50b190053" 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_us-gaap_CompensationAndRetirementDisclosureAbstract_e4308179-71be-45b6-81a9-e4beedd02158" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_0d5adc9e-3347-4067-b14e-bfa50b190053" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_1846b9e7-7bf8-450d-9226-1d6a6573ac90" 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_0d5adc9e-3347-4067-b14e-bfa50b190053" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_1846b9e7-7bf8-450d-9226-1d6a6573ac90" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_3483ae73-e0af-4fbe-bc42-9543028afd96" 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_1846b9e7-7bf8-450d-9226-1d6a6573ac90" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_3483ae73-e0af-4fbe-bc42-9543028afd96" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_1df04353-da77-458f-9938-8896c1dfb900" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionPlansDefinedBenefitMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_3483ae73-e0af-4fbe-bc42-9543028afd96" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_1df04353-da77-458f-9938-8896c1dfb900" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_71271af6-a3ac-47bd-9393-ad117ba52303" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_3483ae73-e0af-4fbe-bc42-9543028afd96" xlink:to="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_71271af6-a3ac-47bd-9393-ad117ba52303" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_23efec39-bec9-44cd-bcc7-1b05f1b0f3ee" 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_0d5adc9e-3347-4067-b14e-bfa50b190053" xlink:to="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_23efec39-bec9-44cd-bcc7-1b05f1b0f3ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_0a2ce67c-c71d-44a0-96f2-32ff12b6b30d" 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_DefinedBenefitPlanDisclosureLineItems_23efec39-bec9-44cd-bcc7-1b05f1b0f3ee" xlink:to="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_0a2ce67c-c71d-44a0-96f2-32ff12b6b30d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanBenefitObligation_e44fa7bd-b131-4fb5-9f57-1bed8ca2b8d8" 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_0a2ce67c-c71d-44a0-96f2-32ff12b6b30d" xlink:to="loc_us-gaap_DefinedBenefitPlanBenefitObligation_e44fa7bd-b131-4fb5-9f57-1bed8ca2b8d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanServiceCost_5e37543b-2fe1-4f53-b0f5-3a0abb7d6727" 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_0a2ce67c-c71d-44a0-96f2-32ff12b6b30d" xlink:to="loc_us-gaap_DefinedBenefitPlanServiceCost_5e37543b-2fe1-4f53-b0f5-3a0abb7d6727" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanInterestCost_d4a7840b-a4c6-4171-8971-298c4d453621" 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_0a2ce67c-c71d-44a0-96f2-32ff12b6b30d" xlink:to="loc_us-gaap_DefinedBenefitPlanInterestCost_d4a7840b-a4c6-4171-8971-298c4d453621" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanActuarialGainLoss_73790f1c-7633-41af-9c08-65ae98e3cbdf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanActuarialGainLoss"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_0a2ce67c-c71d-44a0-96f2-32ff12b6b30d" xlink:to="loc_us-gaap_DefinedBenefitPlanActuarialGainLoss_73790f1c-7633-41af-9c08-65ae98e3cbdf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid_0c5c98b2-d65a-463a-aaf6-3c6fb4c4937a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_0a2ce67c-c71d-44a0-96f2-32ff12b6b30d" xlink:to="loc_us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid_0c5c98b2-d65a-463a-aaf6-3c6fb4c4937a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanBenefitObligation_2817d903-d9f1-4c8f-a18b-860c836fb6ab" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanBenefitObligation"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInBenefitObligationRollForward_0a2ce67c-c71d-44a0-96f2-32ff12b6b30d" xlink:to="loc_us-gaap_DefinedBenefitPlanBenefitObligation_2817d903-d9f1-4c8f-a18b-860c836fb6ab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward_41bca57f-ff39-4fc0-8651-590f605c1cdf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_23efec39-bec9-44cd-bcc7-1b05f1b0f3ee" xlink:to="loc_us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward_41bca57f-ff39-4fc0-8651-590f605c1cdf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_15bc85da-e70d-4a7e-a929-31268718fe8e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward_41bca57f-ff39-4fc0-8651-590f605c1cdf" xlink:to="loc_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_15bc85da-e70d-4a7e-a929-31268718fe8e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets_8d588fed-0016-4cd8-bf7c-aab4a21a0769" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward_41bca57f-ff39-4fc0-8651-590f605c1cdf" xlink:to="loc_us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets_8d588fed-0016-4cd8-bf7c-aab4a21a0769" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanContributionsByEmployer_6f2476b0-1e86-4576-8f65-f64518212839" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanContributionsByEmployer"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward_41bca57f-ff39-4fc0-8651-590f605c1cdf" xlink:to="loc_us-gaap_DefinedBenefitPlanContributionsByEmployer_6f2476b0-1e86-4576-8f65-f64518212839" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid_75f244be-790b-446c-b771-ea1fa061dd2b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward_41bca57f-ff39-4fc0-8651-590f605c1cdf" xlink:to="loc_us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid_75f244be-790b-446c-b771-ea1fa061dd2b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_928739e2-a4eb-4634-ba9a-2145bac46839" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward_41bca57f-ff39-4fc0-8651-590f605c1cdf" xlink:to="loc_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_928739e2-a4eb-4634-ba9a-2145bac46839" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanFundedStatusOfPlan_a41c98b2-bedf-4d0c-8652-40295a4d03d5" 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_DefinedBenefitPlanDisclosureLineItems_23efec39-bec9-44cd-bcc7-1b05f1b0f3ee" xlink:to="loc_us-gaap_DefinedBenefitPlanFundedStatusOfPlan_a41c98b2-bedf-4d0c-8652-40295a4d03d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofAssumptionsUsedDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#RetirementBenefitPlansScheduleofAssumptionsUsedDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofAssumptionsUsedDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_73df2d9e-a88d-42a9-b06a-e4d3fe78cc9c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_3f881ec5-ff31-44ab-a62a-c0e11f6520ea" 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_us-gaap_CompensationAndRetirementDisclosureAbstract_73df2d9e-a88d-42a9-b06a-e4d3fe78cc9c" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_3f881ec5-ff31-44ab-a62a-c0e11f6520ea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_829ca27d-38fa-477e-a8af-6135429cd838" 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_3f881ec5-ff31-44ab-a62a-c0e11f6520ea" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_829ca27d-38fa-477e-a8af-6135429cd838" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_98d2a852-3416-47e9-be1e-59db4f0b90f3" 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_829ca27d-38fa-477e-a8af-6135429cd838" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_98d2a852-3416-47e9-be1e-59db4f0b90f3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_7b4563a9-8633-48ea-b3d0-cbf612d5be68" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionPlansDefinedBenefitMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_98d2a852-3416-47e9-be1e-59db4f0b90f3" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_7b4563a9-8633-48ea-b3d0-cbf612d5be68" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_ab9ac360-c237-497e-a9ee-f9fa52b070bb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_98d2a852-3416-47e9-be1e-59db4f0b90f3" xlink:to="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_ab9ac360-c237-497e-a9ee-f9fa52b070bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_7bc63f66-e222-4aa3-a03c-77632080fb79" 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_3f881ec5-ff31-44ab-a62a-c0e11f6520ea" xlink:to="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_7bc63f66-e222-4aa3-a03c-77632080fb79" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate_70db4a47-e713-4106-8584-108f098ca36b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_7bc63f66-e222-4aa3-a03c-77632080fb79" xlink:to="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate_70db4a47-e713-4106-8584-108f098ca36b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease_0c8b2678-9c28-4fa0-87c4-6f34f84b5391" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_7bc63f66-e222-4aa3-a03c-77632080fb79" xlink:to="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease_0c8b2678-9c28-4fa0-87c4-6f34f84b5391" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate_2bae1632-ef55-4317-b81d-f9cfc1b4450b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_7bc63f66-e222-4aa3-a03c-77632080fb79" xlink:to="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate_2bae1632-ef55-4317-b81d-f9cfc1b4450b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease_4527be56-32a5-4998-8feb-232fdfdf0986" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_7bc63f66-e222-4aa3-a03c-77632080fb79" xlink:to="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease_4527be56-32a5-4998-8feb-232fdfdf0986" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets_c3e64e34-80fb-48b7-a69b-4ae9ddeafa94" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_7bc63f66-e222-4aa3-a03c-77632080fb79" xlink:to="loc_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets_c3e64e34-80fb-48b7-a69b-4ae9ddeafa94" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_fccaa19c-624b-495e-b2d0-e58c29a89891" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_31572194-5358-46a5-99fc-fde46489d0ea" 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_us-gaap_CompensationAndRetirementDisclosureAbstract_fccaa19c-624b-495e-b2d0-e58c29a89891" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_31572194-5358-46a5-99fc-fde46489d0ea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_a1cc7108-fd81-4e5b-b777-dbc54d19d7ab" 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_31572194-5358-46a5-99fc-fde46489d0ea" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_a1cc7108-fd81-4e5b-b777-dbc54d19d7ab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_513e7927-68f6-4edb-8c84-44940198fbd9" 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_a1cc7108-fd81-4e5b-b777-dbc54d19d7ab" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_513e7927-68f6-4edb-8c84-44940198fbd9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_1e844ba2-06cb-4e2e-a545-f7fa6afbcf67" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionPlansDefinedBenefitMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_513e7927-68f6-4edb-8c84-44940198fbd9" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_1e844ba2-06cb-4e2e-a545-f7fa6afbcf67" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_357506ef-2b0a-4e26-a03a-bb391c3cb91c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_513e7927-68f6-4edb-8c84-44940198fbd9" xlink:to="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_357506ef-2b0a-4e26-a03a-bb391c3cb91c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_805cc496-264f-42df-8dec-eacb23e05328" 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_31572194-5358-46a5-99fc-fde46489d0ea" xlink:to="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_805cc496-264f-42df-8dec-eacb23e05328" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanServiceCost_a1e6ed6e-b5d3-456a-a07a-c84e148b04a2" 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_DefinedBenefitPlanDisclosureLineItems_805cc496-264f-42df-8dec-eacb23e05328" xlink:to="loc_us-gaap_DefinedBenefitPlanServiceCost_a1e6ed6e-b5d3-456a-a07a-c84e148b04a2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanInterestCost_6c0583f2-5588-4810-9123-99dfcd342016" 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_DefinedBenefitPlanDisclosureLineItems_805cc496-264f-42df-8dec-eacb23e05328" xlink:to="loc_us-gaap_DefinedBenefitPlanInterestCost_6c0583f2-5588-4810-9123-99dfcd342016" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets_c5bcba88-9e03-41a2-93f5-e3bb6087b276" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_805cc496-264f-42df-8dec-eacb23e05328" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets_c5bcba88-9e03-41a2-93f5-e3bb6087b276" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_9cfe43b3-ed06-4775-9c44-3632dedf2823" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_805cc496-264f-42df-8dec-eacb23e05328" xlink:to="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_9cfe43b3-ed06-4775-9c44-3632dedf2823" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses_774bb641-28b3-49e1-9957-a6b9a2455529" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_805cc496-264f-42df-8dec-eacb23e05328" xlink:to="loc_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses_774bb641-28b3-49e1-9957-a6b9a2455529" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_f3b202bc-6d03-461e-96cb-ac27fe10f12e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_805cc496-264f-42df-8dec-eacb23e05328" xlink:to="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_f3b202bc-6d03-461e-96cb-ac27fe10f12e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansWeightedAverageAssetAllocationsDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#RetirementBenefitPlansWeightedAverageAssetAllocationsDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/RetirementBenefitPlansWeightedAverageAssetAllocationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_09977753-0ba8-4ed3-9a4c-1e3a8b6bd85a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_d937855f-dd45-4263-825a-c7b5e22bdca3" 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_us-gaap_CompensationAndRetirementDisclosureAbstract_09977753-0ba8-4ed3-9a4c-1e3a8b6bd85a" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_d937855f-dd45-4263-825a-c7b5e22bdca3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_9d4f4f73-3435-4a24-b227-c9ad9d2bed40" 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_d937855f-dd45-4263-825a-c7b5e22bdca3" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_9d4f4f73-3435-4a24-b227-c9ad9d2bed40" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_0376f105-46d9-4db6-9c54-08df24b0f769" 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_9d4f4f73-3435-4a24-b227-c9ad9d2bed40" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_0376f105-46d9-4db6-9c54-08df24b0f769" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_b1eaccb4-44b5-4ab2-bfcc-efdf68ff04f0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionPlansDefinedBenefitMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_0376f105-46d9-4db6-9c54-08df24b0f769" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_b1eaccb4-44b5-4ab2-bfcc-efdf68ff04f0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis_3765bc43-d45e-4fc3-a667-ca97fb2d5479" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_d937855f-dd45-4263-825a-c7b5e22bdca3" xlink:to="loc_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis_3765bc43-d45e-4fc3-a667-ca97fb2d5479" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanAssetCategoriesDomain_d698dccb-a766-4e9a-a68a-fc9a36ee3523" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanAssetCategoriesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis_3765bc43-d45e-4fc3-a667-ca97fb2d5479" xlink:to="loc_us-gaap_PlanAssetCategoriesDomain_d698dccb-a766-4e9a-a68a-fc9a36ee3523" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanEquitySecuritiesMember_ae9735f4-59ed-414b-a064-351ab46550fa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanEquitySecuritiesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d698dccb-a766-4e9a-a68a-fc9a36ee3523" xlink:to="loc_us-gaap_DefinedBenefitPlanEquitySecuritiesMember_ae9735f4-59ed-414b-a064-351ab46550fa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDebtSecurityMember_b64f4ef3-c013-4543-9461-21f246b0a2ee" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanDebtSecurityMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d698dccb-a766-4e9a-a68a-fc9a36ee3523" xlink:to="loc_us-gaap_DefinedBenefitPlanDebtSecurityMember_b64f4ef3-c013-4543-9461-21f246b0a2ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermInvestmentsMember_e12752fb-6461-4c58-b09c-742daa009588" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermInvestmentsMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d698dccb-a766-4e9a-a68a-fc9a36ee3523" xlink:to="loc_us-gaap_ShortTermInvestmentsMember_e12752fb-6461-4c58-b09c-742daa009588" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherInvestmentsMember_7b295101-5625-48e6-8d4e-430352ffd6d4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherInvestmentsMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d698dccb-a766-4e9a-a68a-fc9a36ee3523" xlink:to="loc_us-gaap_OtherInvestmentsMember_7b295101-5625-48e6-8d4e-430352ffd6d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_867cc7a0-30c1-4308-8b67-6eea783e0a2c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_d937855f-dd45-4263-825a-c7b5e22bdca3" xlink:to="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_867cc7a0-30c1-4308-8b67-6eea783e0a2c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations_74c0b08a-3f76-42a3-a712-52e41a96d01a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_867cc7a0-30c1-4308-8b67-6eea783e0a2c" xlink:to="loc_us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations_74c0b08a-3f76-42a3-a712-52e41a96d01a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_e5071b76-a158-4fae-b599-a94392354683" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_a2d7b477-bd7f-45e1-8df6-3dfd726c9f8d" 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_us-gaap_CompensationAndRetirementDisclosureAbstract_e5071b76-a158-4fae-b599-a94392354683" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_a2d7b477-bd7f-45e1-8df6-3dfd726c9f8d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis_fd699d33-a843-462e-8176-991bf99edf92" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_a2d7b477-bd7f-45e1-8df6-3dfd726c9f8d" xlink:to="loc_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis_fd699d33-a843-462e-8176-991bf99edf92" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanAssetCategoriesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis_fd699d33-a843-462e-8176-991bf99edf92" xlink:to="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_MidCapMutualFundsMember_2b439e92-5a41-4939-bcb1-67d6eb2c3325" xlink:href="alg-20221231.xsd#alg_MidCapMutualFundsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_MidCapMutualFundsMember_2b439e92-5a41-4939-bcb1-67d6eb2c3325" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_InternationalMutualFundsMember_ba5f45d4-01b4-4ecd-b4de-d9e043c8a59d" xlink:href="alg-20221231.xsd#alg_InternationalMutualFundsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_InternationalMutualFundsMember_ba5f45d4-01b4-4ecd-b4de-d9e043c8a59d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_LiabilityDrivenSolutionCITIMember_39a53742-e427-4d18-8f95-e5d15ff0fcee" xlink:href="alg-20221231.xsd#alg_LiabilityDrivenSolutionCITIMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_LiabilityDrivenSolutionCITIMember_39a53742-e427-4d18-8f95-e5d15ff0fcee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_LiabilityDrivenSolutionCITIIMember_1714062c-3556-4051-b801-2c6c00cccbe6" xlink:href="alg-20221231.xsd#alg_LiabilityDrivenSolutionCITIIMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_LiabilityDrivenSolutionCITIIMember_1714062c-3556-4051-b801-2c6c00cccbe6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoInternationalEquityIndexFundMember_2795cdcc-403b-4272-b11f-4ad60baf1042" xlink:href="alg-20221231.xsd#alg_WellsFargoInternationalEquityIndexFundMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_WellsFargoInternationalEquityIndexFundMember_2795cdcc-403b-4272-b11f-4ad60baf1042" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoCausewayMember_e2285c71-6ea9-49cf-a09f-915388383dee" xlink:href="alg-20221231.xsd#alg_WellsFargoCausewayMember"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_WellsFargoCausewayMember_e2285c71-6ea9-49cf-a09f-915388383dee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoLargeCapGrowthIndexFundMember_d8805e04-6817-4542-8564-f0af65443191" xlink:href="alg-20221231.xsd#alg_WellsFargoLargeCapGrowthIndexFundMember"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_WellsFargoLargeCapGrowthIndexFundMember_d8805e04-6817-4542-8564-f0af65443191" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoLargeCapValueIndexFundMember_67c9c297-e179-468e-9c93-639f5507fd26" xlink:href="alg-20221231.xsd#alg_WellsFargoLargeCapValueIndexFundMember"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_WellsFargoLargeCapValueIndexFundMember_67c9c297-e179-468e-9c93-639f5507fd26" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoMultiManagerSmallCapMember_6f1c9ca1-d941-44b8-af09-06cf6836a85f" xlink:href="alg-20221231.xsd#alg_WellsFargoMultiManagerSmallCapMember"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_WellsFargoMultiManagerSmallCapMember_6f1c9ca1-d941-44b8-af09-06cf6836a85f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember_d38a9689-2acb-4d7c-83d5-dc312e679090" xlink:href="alg-20221231.xsd#alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember_d38a9689-2acb-4d7c-83d5-dc312e679090" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoStandardAndPoorsMidCapIndexFundMember_00e50094-92c2-4f48-a95f-81f1922b144c" xlink:href="alg-20221231.xsd#alg_WellsFargoStandardAndPoorsMidCapIndexFundMember"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_WellsFargoStandardAndPoorsMidCapIndexFundMember_00e50094-92c2-4f48-a95f-81f1922b144c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoMFSValueCITFMember_e97e509b-a71d-46fb-ad99-967758121c14" xlink:href="alg-20221231.xsd#alg_WellsFargoMFSValueCITFMember"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_WellsFargoMFSValueCITFMember_e97e509b-a71d-46fb-ad99-967758121c14" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember_268746b5-0fba-4214-966f-a9fa09122216" xlink:href="alg-20221231.xsd#alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember_268746b5-0fba-4214-966f-a9fa09122216" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_TRowePriceEquityIncomeMember_7618d823-5e80-4816-b367-9296a4e3187d" xlink:href="alg-20221231.xsd#alg_TRowePriceEquityIncomeMember"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_TRowePriceEquityIncomeMember_7618d823-5e80-4816-b367-9296a4e3187d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WellsFargoVoyaLargeCapGrowthCITFMember_4c2615af-8f78-4edf-88e8-cc607a123085" xlink:href="alg-20221231.xsd#alg_WellsFargoVoyaLargeCapGrowthCITFMember"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_WellsFargoVoyaLargeCapGrowthCITFMember_4c2615af-8f78-4edf-88e8-cc607a123085" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_CashAndShortTermInvestmentsMember_64249f6a-1265-4f7c-ab69-1da346572079" xlink:href="alg-20221231.xsd#alg_CashAndShortTermInvestmentsMember"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanAssetCategoriesDomain_d3d4582d-5693-45c9-90c0-04db50e6f977" xlink:to="loc_alg_CashAndShortTermInvestmentsMember_64249f6a-1265-4f7c-ab69-1da346572079" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_dfa7ce8a-97ab-4911-8142-00b760da2332" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_a2d7b477-bd7f-45e1-8df6-3dfd726c9f8d" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_dfa7ce8a-97ab-4911-8142-00b760da2332" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_26110155-d7eb-42b3-af85-ced42c7b53ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_dfa7ce8a-97ab-4911-8142-00b760da2332" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_26110155-d7eb-42b3-af85-ced42c7b53ae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_32b70385-80d0-41ac-9732-cb1b7bb29a00" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_26110155-d7eb-42b3-af85-ced42c7b53ae" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_32b70385-80d0-41ac-9732-cb1b7bb29a00" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_3f95ad57-4e36-4ee2-92d3-8c4539d98cad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_26110155-d7eb-42b3-af85-ced42c7b53ae" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_3f95ad57-4e36-4ee2-92d3-8c4539d98cad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_83d94e5e-bebd-47f5-b109-fc6ef423aad1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_26110155-d7eb-42b3-af85-ced42c7b53ae" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_83d94e5e-bebd-47f5-b109-fc6ef423aad1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_076df507-dab3-4e1b-95b8-09f9e75a4941" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_a2d7b477-bd7f-45e1-8df6-3dfd726c9f8d" xlink:to="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_076df507-dab3-4e1b-95b8-09f9e75a4941" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_e2deabc9-cbd0-4994-8eeb-7b0bc91ed478" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_076df507-dab3-4e1b-95b8-09f9e75a4941" xlink:to="loc_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets_e2deabc9-cbd0-4994-8eeb-7b0bc91ed478" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_6d14627f-b276-4c32-b466-073c497a7311" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_361ae17c-c951-471f-a9ab-789acabc7396" 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_us-gaap_CompensationAndRetirementDisclosureAbstract_6d14627f-b276-4c32-b466-073c497a7311" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_361ae17c-c951-471f-a9ab-789acabc7396" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_63df2229-fdce-4389-8906-5aab7f6e020b" 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_361ae17c-c951-471f-a9ab-789acabc7396" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_63df2229-fdce-4389-8906-5aab7f6e020b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_ba7c96fb-0c69-49d1-a77f-ed2fef032f0e" 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_63df2229-fdce-4389-8906-5aab7f6e020b" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_ba7c96fb-0c69-49d1-a77f-ed2fef032f0e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_6b34f98d-0551-414c-b887-176bb27779a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionPlansDefinedBenefitMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_ba7c96fb-0c69-49d1-a77f-ed2fef032f0e" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_6b34f98d-0551-414c-b887-176bb27779a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_3a8b2573-d53b-4241-9e9d-a2c1e11c05f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_ba7c96fb-0c69-49d1-a77f-ed2fef032f0e" xlink:to="loc_us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember_3a8b2573-d53b-4241-9e9d-a2c1e11c05f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_c3b398b8-90a0-4e08-8d6d-b278f8354233" 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_361ae17c-c951-471f-a9ab-789acabc7396" xlink:to="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_c3b398b8-90a0-4e08-8d6d-b278f8354233" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths_6dcd5d85-78ff-4242-bf8e-ecd3ac8559f4" 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_DefinedBenefitPlanDisclosureLineItems_c3b398b8-90a0-4e08-8d6d-b278f8354233" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths_6dcd5d85-78ff-4242-bf8e-ecd3ac8559f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo_6b7e59bb-e9f8-4949-9511-eda99ce70b70" 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_DefinedBenefitPlanDisclosureLineItems_c3b398b8-90a0-4e08-8d6d-b278f8354233" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo_6b7e59bb-e9f8-4949-9511-eda99ce70b70" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree_d549b50c-b33a-4625-84b1-d51c2b3257c0" 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_DefinedBenefitPlanDisclosureLineItems_c3b398b8-90a0-4e08-8d6d-b278f8354233" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree_d549b50c-b33a-4625-84b1-d51c2b3257c0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour_5b94bfc3-7008-4059-a0f5-c43bf1c6a064" 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_DefinedBenefitPlanDisclosureLineItems_c3b398b8-90a0-4e08-8d6d-b278f8354233" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour_5b94bfc3-7008-4059-a0f5-c43bf1c6a064" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive_00598bbd-88f7-494c-a45b-9781ae026269" 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_DefinedBenefitPlanDisclosureLineItems_c3b398b8-90a0-4e08-8d6d-b278f8354233" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive_00598bbd-88f7-494c-a45b-9781ae026269" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter_62e877fb-669d-44b8-9228-fa9b12491f18" 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_DefinedBenefitPlanDisclosureLineItems_c3b398b8-90a0-4e08-8d6d-b278f8354233" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter_62e877fb-669d-44b8-9228-fa9b12491f18" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#RevenueandSegmentReportingScheduleofSegmentReportingDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_c0aa33df-7973-4aac-8294-e1f412f9e3fd" 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_ScheduleOfSegmentReportingInformationBySegmentTable_ef232385-435f-43b1-af42-9692dabfdcad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_c0aa33df-7973-4aac-8294-e1f412f9e3fd" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_ef232385-435f-43b1-af42-9692dabfdcad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_a83c66f5-952a-4a83-b050-2c43be72de14" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductOrServiceAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_ef232385-435f-43b1-af42-9692dabfdcad" xlink:to="loc_srt_ProductOrServiceAxis_a83c66f5-952a-4a83-b050-2c43be72de14" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_a62c638c-e3de-4fb4-8598-6193b72a9ff6" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_a83c66f5-952a-4a83-b050-2c43be72de14" xlink:to="loc_srt_ProductsAndServicesDomain_a62c638c-e3de-4fb4-8598-6193b72a9ff6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_WholegoodUnitsMember_2eb971de-ec84-4ddd-a581-5e6368e02bf5" xlink:href="alg-20221231.xsd#alg_WholegoodUnitsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_a62c638c-e3de-4fb4-8598-6193b72a9ff6" xlink:to="loc_alg_WholegoodUnitsMember_2eb971de-ec84-4ddd-a581-5e6368e02bf5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_PartsMember_19fbaccc-b4e3-41d3-97e4-9b3fd6f4294a" xlink:href="alg-20221231.xsd#alg_PartsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_a62c638c-e3de-4fb4-8598-6193b72a9ff6" xlink:to="loc_alg_PartsMember_19fbaccc-b4e3-41d3-97e4-9b3fd6f4294a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductAndServiceOtherMember_4594198d-9a45-41c0-894b-2e448867ae6f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductAndServiceOtherMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_a62c638c-e3de-4fb4-8598-6193b72a9ff6" xlink:to="loc_us-gaap_ProductAndServiceOtherMember_4594198d-9a45-41c0-894b-2e448867ae6f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_d6073915-66ac-4a10-96a9-a7a3e71ee8e5" 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_ScheduleOfSegmentReportingInformationBySegmentTable_ef232385-435f-43b1-af42-9692dabfdcad" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_d6073915-66ac-4a10-96a9-a7a3e71ee8e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_712eb5f1-0a71-42ca-a873-b1ed0c860bc8" 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_d6073915-66ac-4a10-96a9-a7a3e71ee8e5" xlink:to="loc_us-gaap_SegmentDomain_712eb5f1-0a71-42ca-a873-b1ed0c860bc8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_VegetationManagementMember_ee9f4619-9d4d-4f4b-8a3d-d209ba551381" xlink:href="alg-20221231.xsd#alg_VegetationManagementMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_712eb5f1-0a71-42ca-a873-b1ed0c860bc8" xlink:to="loc_alg_VegetationManagementMember_ee9f4619-9d4d-4f4b-8a3d-d209ba551381" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_IndustrialManagementMember_77ebdfff-5372-44fc-8393-a8d09a5e2795" xlink:href="alg-20221231.xsd#alg_IndustrialManagementMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_712eb5f1-0a71-42ca-a873-b1ed0c860bc8" xlink:to="loc_alg_IndustrialManagementMember_77ebdfff-5372-44fc-8393-a8d09a5e2795" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_b12cdb73-fa5b-44b7-818c-88d9143c1e6d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_ef232385-435f-43b1-af42-9692dabfdcad" xlink:to="loc_us-gaap_SegmentReportingInformationLineItems_b12cdb73-fa5b-44b7-818c-88d9143c1e6d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_cc5e7913-4742-41d3-92e0-7b090341c33b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_b12cdb73-fa5b-44b7-818c-88d9143c1e6d" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_cc5e7913-4742-41d3-92e0-7b090341c33b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_701b7caf-e222-4085-8c13-9ffee5bcd947" 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_SegmentReportingInformationLineItems_b12cdb73-fa5b-44b7-818c-88d9143c1e6d" xlink:to="loc_us-gaap_OperatingIncomeLoss_701b7caf-e222-4085-8c13-9ffee5bcd947" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_f8db21cf-9e50-4285-a624-95d0568f80b9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_b12cdb73-fa5b-44b7-818c-88d9143c1e6d" xlink:to="loc_us-gaap_Goodwill_f8db21cf-9e50-4285-a624-95d0568f80b9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_a93421c1-93bc-4e47-a721-c92b62f14582" 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_SegmentReportingInformationLineItems_b12cdb73-fa5b-44b7-818c-88d9143c1e6d" xlink:to="loc_us-gaap_Assets_a93421c1-93bc-4e47-a721-c92b62f14582" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/RevenueandSegmentReportingAdditionalInformationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#RevenueandSegmentReportingAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/RevenueandSegmentReportingAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_50d9b3aa-5db0-4ff9-97b0-606de5cfb256" 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_NumberOfReportableSegments_c684c16f-0990-408b-8d1b-fa4bab017566" 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_SegmentReportingAbstract_50d9b3aa-5db0-4ff9-97b0-606de5cfb256" xlink:to="loc_us-gaap_NumberOfReportableSegments_c684c16f-0990-408b-8d1b-fa4bab017566" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#AccumulatedOtherComprehensiveLossDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_2a76027f-fa4a-46a1-b7a6-8c12e3440fda" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_afded7ac-49e5-4109-a383-d51ee383d3c4" 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_EquityAbstract_2a76027f-fa4a-46a1-b7a6-8c12e3440fda" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_afded7ac-49e5-4109-a383-d51ee383d3c4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_bb68faff-4e77-47b6-9cdf-1518ef726a19" 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_afded7ac-49e5-4109-a383-d51ee383d3c4" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_bb68faff-4e77-47b6-9cdf-1518ef726a19" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_708f3bcf-54cc-4724-b0a7-5cad080a09d9" 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_bb68faff-4e77-47b6-9cdf-1518ef726a19" xlink:to="loc_us-gaap_EquityComponentDomain_708f3bcf-54cc-4724-b0a7-5cad080a09d9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedTranslationAdjustmentMember_47f377f1-6663-44dd-be7d-7b98c081238a" 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_708f3bcf-54cc-4724-b0a7-5cad080a09d9" xlink:to="loc_us-gaap_AccumulatedTranslationAdjustmentMember_47f377f1-6663-44dd-be7d-7b98c081238a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember_9e129d95-ed21-484a-93d6-9cf41f79997b" 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_708f3bcf-54cc-4724-b0a7-5cad080a09d9" xlink:to="loc_us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember_9e129d95-ed21-484a-93d6-9cf41f79997b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember_2bf14a98-a1ea-4225-a1ec-996a61e88fe0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_708f3bcf-54cc-4724-b0a7-5cad080a09d9" xlink:to="loc_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember_2bf14a98-a1ea-4225-a1ec-996a61e88fe0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_7dd49e04-682e-40bf-91a0-d3ed04664c51" 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_708f3bcf-54cc-4724-b0a7-5cad080a09d9" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_7dd49e04-682e-40bf-91a0-d3ed04664c51" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_32310723-2644-4710-a08c-abddbfd13481" 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_afded7ac-49e5-4109-a383-d51ee383d3c4" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_32310723-2644-4710-a08c-abddbfd13481" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_d40eb41c-611a-41d0-9b7e-3e0e11d074d4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AOCIAttributableToParentNetOfTaxRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_32310723-2644-4710-a08c-abddbfd13481" xlink:to="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_d40eb41c-611a-41d0-9b7e-3e0e11d074d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_22149c5a-fbe8-42ae-bafe-4e9bc938f44c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_d40eb41c-611a-41d0-9b7e-3e0e11d074d4" xlink:to="loc_us-gaap_StockholdersEquity_22149c5a-fbe8-42ae-bafe-4e9bc938f44c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent_90370194-ebab-41b0-a2b9-1add21dae9d2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_d40eb41c-611a-41d0-9b7e-3e0e11d074d4" xlink:to="loc_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent_90370194-ebab-41b0-a2b9-1add21dae9d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent_322ad0f6-d29e-4eb5-a840-c9801db9d4fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_d40eb41c-611a-41d0-9b7e-3e0e11d074d4" xlink:to="loc_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent_322ad0f6-d29e-4eb5-a840-c9801db9d4fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_9d75718a-6eb1-473e-8ba9-aa840d44ab5a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_d40eb41c-611a-41d0-9b7e-3e0e11d074d4" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_9d75718a-6eb1-473e-8ba9-aa840d44ab5a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_c567589f-ef19-4dd8-a872-baa4d29afc24" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AOCIAttributableToParentNetOfTaxRollForward_d40eb41c-611a-41d0-9b7e-3e0e11d074d4" xlink:to="loc_us-gaap_StockholdersEquity_c567589f-ef19-4dd8-a872-baa4d29afc24" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofInternationalOperationsDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#InternationalOperationsandGeographicInformationScheduleofInternationalOperationsDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofInternationalOperationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_060c88b7-821e-49bb-9da1-79bf20692714" 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_ScheduleOfSegmentReportingInformationBySegmentTable_30d06afa-a57f-4c6c-b55f-f3c429d055d0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_060c88b7-821e-49bb-9da1-79bf20692714" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_30d06afa-a57f-4c6c-b55f-f3c429d055d0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis_34289ce1-21be-4f02-a5c2-af93788ba0c6" 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_ScheduleOfSegmentReportingInformationBySegmentTable_30d06afa-a57f-4c6c-b55f-f3c429d055d0" xlink:to="loc_srt_StatementGeographicalAxis_34289ce1-21be-4f02-a5c2-af93788ba0c6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_85ac9db8-527c-49aa-9160-d0f8113e5ac8" 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_34289ce1-21be-4f02-a5c2-af93788ba0c6" xlink:to="loc_srt_SegmentGeographicalDomain_85ac9db8-527c-49aa-9160-d0f8113e5ac8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NonUsMember_94e9914a-f4d4-403c-9db0-597e3b34b476" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonUsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_85ac9db8-527c-49aa-9160-d0f8113e5ac8" xlink:to="loc_us-gaap_NonUsMember_94e9914a-f4d4-403c-9db0-597e3b34b476" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_d400549e-7ab5-4023-bb78-0feca38f7114" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_30d06afa-a57f-4c6c-b55f-f3c429d055d0" xlink:to="loc_us-gaap_SegmentReportingInformationLineItems_d400549e-7ab5-4023-bb78-0feca38f7114" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Revenues_c4754ed8-a01c-41a0-ba46-14fee97985d4" 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_SegmentReportingInformationLineItems_d400549e-7ab5-4023-bb78-0feca38f7114" xlink:to="loc_us-gaap_Revenues_c4754ed8-a01c-41a0-ba46-14fee97985d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_e43a62da-3685-461b-ae36-ad249889aa7e" 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_SegmentReportingInformationLineItems_d400549e-7ab5-4023-bb78-0feca38f7114" xlink:to="loc_us-gaap_OperatingIncomeLoss_e43a62da-3685-461b-ae36-ad249889aa7e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_7d0554cf-a414-498f-90b5-1d82d5c8ad4f" 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_SegmentReportingInformationLineItems_d400549e-7ab5-4023-bb78-0feca38f7114" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_7d0554cf-a414-498f-90b5-1d82d5c8ad4f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_89277b50-28d0-45dd-8068-ff63e32a0bde" 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_SegmentReportingInformationLineItems_d400549e-7ab5-4023-bb78-0feca38f7114" xlink:to="loc_us-gaap_Assets_89277b50-28d0-45dd-8068-ff63e32a0bde" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails" xlink:type="simple" xlink:href="alg-20221231.xsd#InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails"/>
  <link:presentationLink xlink:role="http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_927b4048-97c0-41a6-8668-71a9d67e1222" 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_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_ccecd82e-0e48-4649-811f-2772e9fed79c" 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_SegmentReportingAbstract_927b4048-97c0-41a6-8668-71a9d67e1222" xlink:to="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_ccecd82e-0e48-4649-811f-2772e9fed79c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis_18b5bf45-4adf-4c67-80f5-80a41d10862d" 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_ccecd82e-0e48-4649-811f-2772e9fed79c" xlink:to="loc_srt_StatementGeographicalAxis_18b5bf45-4adf-4c67-80f5-80a41d10862d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" 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_18b5bf45-4adf-4c67-80f5-80a41d10862d" xlink:to="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_US_8593e53c-2ca6-4d37-b59c-fc971da4671b" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_US"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" xlink:to="loc_country_US_8593e53c-2ca6-4d37-b59c-fc971da4671b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_FR_c02eb4e4-7439-4e92-85a8-b16b367eb93c" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_FR"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" xlink:to="loc_country_FR_c02eb4e4-7439-4e92-85a8-b16b367eb93c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_CA_1519d762-77f1-4a90-b54e-ed2c6764778b" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_CA"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" xlink:to="loc_country_CA_1519d762-77f1-4a90-b54e-ed2c6764778b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_GB_425ca351-2bc0-48da-bb16-0de0bc2ba778" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_GB"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" xlink:to="loc_country_GB_425ca351-2bc0-48da-bb16-0de0bc2ba778" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_BR_f8258981-a417-48d0-8120-1614ea668b94" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_BR"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" xlink:to="loc_country_BR_f8258981-a417-48d0-8120-1614ea668b94" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_NL_1f0879f6-980a-4b63-b2f0-9edd68c1cf5e" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_NL"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" xlink:to="loc_country_NL_1f0879f6-980a-4b63-b2f0-9edd68c1cf5e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_DE_cdfbb22c-21ef-4765-a3ca-050451a54c00" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_DE"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" xlink:to="loc_country_DE_cdfbb22c-21ef-4765-a3ca-050451a54c00" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_AU_0f0c8d72-a4c8-4390-9e67-f217ded6d6b0" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_AU"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" xlink:to="loc_country_AU_0f0c8d72-a4c8-4390-9e67-f217ded6d6b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_alg_OtherGeographicalAreasMember_20c029fb-a233-48d1-bdd5-53268d827aab" xlink:href="alg-20221231.xsd#alg_OtherGeographicalAreasMember"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_a8c9bbc5-b483-476a-90d8-6dd3bf308d62" xlink:to="loc_alg_OtherGeographicalAreasMember_20c029fb-a233-48d1-bdd5-53268d827aab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_6ffa8f67-1aa2-488d-b799-49b147287abf" 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_ccecd82e-0e48-4649-811f-2772e9fed79c" xlink:to="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_6ffa8f67-1aa2-488d-b799-49b147287abf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Revenues_339c085d-950d-4197-827d-819386614c2f" 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_6ffa8f67-1aa2-488d-b799-49b147287abf" xlink:to="loc_us-gaap_Revenues_339c085d-950d-4197-827d-819386614c2f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncurrentAssets_58914d6a-7cff-43de-84a7-f1144057a844" 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_6ffa8f67-1aa2-488d-b799-49b147287abf" xlink:to="loc_us-gaap_NoncurrentAssets_58914d6a-7cff-43de-84a7-f1144057a844" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>13
<FILENAME>alg-20221231_g1.jpg
<TEXT>
begin 644 alg-20221231_g1.jpg
M_]C_X  02D9)1@ ! @$ 8 !@  #_[@ .061O8F4 90     !_]L 0P " 0$!
M 0$" 0$! @(" @($ P(" @(%! 0#! 8%!@8&!08&!@<)" 8'"0<&!@@+" D*
M"@H*"@8("PP+"@P)"@H*_]L 0P$" @(" @(% P,%"@<&!PH*"@H*"@H*"@H*
M"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*_\  $0@#
M2 44 P$B  (1 0,1 ?_$ !\   $% 0$! 0$!           ! @,$!08'" D*
M"__$ +40  (! P,"! ,%!00$   !?0$" P $$042(3%!!A-180<B<10R@9&A
M""-"L<$54M'P)#-B<H()"A87&!D:)28G*"DJ-#4V-S@Y.D-$149'2$E*4U15
M5E=865IC9&5F9VAI:G-T=79W>'EZ@X2%AH>(B8J2DY25EI>8F9JBHZ2EIJ>H
MJ:JRL[2UMK>XN;K"P\3%QL?(R<K2T]35UM?8V=KAXN/DY>;GZ.GJ\?+S]/7V
M]_CY^O_$ !\!  ,! 0$! 0$! 0$        ! @,$!08'" D*"__$ +41  (!
M @0$ P0'!00$  $"=P ! @,1! 4A,08205$'87$3(C*!"!1"D:&QP0DC,U+P
M%6)RT0H6)#3A)?$7&!D:)B<H*2HU-C<X.3I#1$5&1TA)2E-455976%E:8V1E
M9F=H:6IS='5V=WAY>H*#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6V
MM[BYNL+#Q,7&Q\C)RM+3U-76U]C9VN+CY.7FY^CIZO+S]/7V]_CY^O_:  P#
M 0 "$0,1 #\ _?RBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **^:_\ @JA^VQJ7[$/[,LOC/P;'!)XKU^_72O#(N$#I;RLC/)<L
MAX81HI(!X+M&"""17Q=\!_\ @CA\=/VX/A=IW[37[4_[5^N6FM^*[-=2T:UN
M+-]0FAMY1OAEE>29 FY2K+%& %4J-P.54 _66BOSJ_X)H>&/^"C_ .RQ^U/K
M'[+/QD\/>)/%GPOMFEAM_%=XLCV-BXA$T%Q:3SD%HG&(W@0L$=^@9'SS7_!3
M;]L+]I+]H+]K[3_^";'['WB6YT:1[B*T\0:I87;6\MW<O%YTB-,GSQVT$.6D
M"<L1("&"@$ _3JBORYUK_@WK^(GA3PK)XV^%O[85[)X_MH3/"[Z6]G#<7 &?
M+6X2=I8N>!(0W0$J,\>D_P#!&+]O[XN?&[5/$G[)7[3-_<7GC/P=;O/8ZI?_
M /'U<V\4RP3P7)_CFBD9!OY9PQW9*%F /OVBOYX?CW\3/C;X8_:Q^)'C[PGX
MYUH1^%?B??7 0:G-Y<&-2F\K*;L;-R*N.G('>OU._P""LO[5EIHW_!,9?B+X
M#UB6TF^)L.E6VA7-O.5D2*Z5;MR"N#S;Q2*2.F^@#[0HK\>O^"#>K?$FV_;R
M\3^#?'WB75;F:Q^'=\+BROM0DE6*9;VP!!#$@,,D?G7-ZM\#_'G[9'_!7#XF
M?L\P?'G7?"=J_B36;F*]M&EN%B$#DB-8A-& #G'48]* /VIHK\9OVU?V0_VK
M_P#@E#:>&?V@OAA^VAKFMV=YKRV!8^=:217)BDF1)(&GFCN862&3=NXX *G.
M:_5[]F'XNW'Q[_9U\$_&B_L$M+GQ-X9L]0N[:+.R*:2)6D5<\[0^X#/;% '=
MT5^"O[<G[1OQT_:;_:<^)O[1OPA\3ZW%X/\  VI6EI:WNF:C)'!9VBSBUM9@
M%;'[Z96E'O(?2OV>_8Y_:"TW]J7]F;P=\=+!XQ+KFCHVIPQ=(+Z,F*YC [!9
MDD ]5P>] 'IE%?CC^VM\/?&_[1O_  6UUS]FS3?C#K7ABSU^YTV%+RRFED6T
MVZ!;SDK")4!R4/\ $/O$UU_[3G_!'SXV_LN_ SQ'^T%X!_;T\1ZA>>$M.?49
M+*:VN-/:6*/YG\N=+QRK@9*C;\QP,C.: /U?HK\_/V+OVK_BQ^TQ_P $??BY
MXF^*.O75[X@\)>%_$FD)K[N1/>)'I'GQ2NXP3*HFV%NIV*Q)8DGEO^"*7QA\
M8^#_ -@#XT?%J^N;S7K_ ,+ZAJ&I65M?74DIF:WTI)EB!)) 9EQ@>M 'Z645
M^*W[&'[+=W_P5WUOQ/\ $;]IK]M6^A\2VVJ&.T\+[DFNFB*!_/BBDD"Q6X+%
M%2), HV=O&?H']BS]G/_ (*'?L'?MN)\';&3Q#XX^"UY.MO>:Q.X%E%#)%NC
MN8XI)6-O+%(0D@3(8*W7Y" #]***_.K_ (+$?MV?''0OBMX=_8-_9.U2[L/%
M'B86PUC5-+F\N[WW4GEVUE#)D&$MP[R @A70!@-^>0M/^#>+QU<^%QXOU?\
M;&ND\?M#Y[7$>D2/;)<XSL^T&<3,-W'F[0>^SM0!^HE%?FW_ ,$F?VW?VA?#
M?[1VM_\ !.O]K_7+G5=<TI[N'P_JFHW)GNH[BU!:6U:8\W$31*\L<C$D!,9*
MLH7Y8_;U_:9^,?[._P#P5?\ &/Q)^'WC+4(Y?#GBBTN;?3I+V0VLJ"T@WPO&
M#CRY%9D8>CG&#S0!^Y=%?)G[7O[17A;]H3_@DKXP_:"^$VLS0VFL^#TN(&AG
M*S64PN(UE@9E(Q)&X=&QW4XX(J#_ ((>ZSK&O_\ !/GP_J6NZM<WMPVN:H&N
M+N=I'(%TP +,2>* /KJBN5^.'Q;\-? 7X/\ B7XS^+P[:=X9T:?4+F*,@/,(
MT)$2YXW.V$&>["OR>^ _P-_:^_X+>^,_$?QA^,?QTN_"W@#3-2-I:Z?:1O-:
MQS%0_P!DM;7S$3Y(VCWS.2QWIG>2=H!^Q=%?CW^TE^Q[^UK_ ,$;8]*_:-_9
MK_:.U#6_"8U..VU>QGMFABC=\E([JU\QXIX7VE?,&UE9E VDJU?2/[?_ .T[
M!^T;_P $9)OVC_ 5S<Z3)KPTF26*TNF5[.Y74HH;B$.N"0LJ2+GC< #CG% '
MWG17Y"_L0_\ !)GQ[^V#^S%X;_:(N?VVO$_A]_$#7H.DIIDMR(/(O)[;_6&\
M3=N\G=]T8W8YQD_<7_!/O_@GIKG[#>I>*=0UC]HS5O'@\206D<<>IZ:UN++R
M#,25W7$N[=YHS]W&P=>P!],445^*'@O0?C+^W[^U)\8_%>F_MP3?#;P[I7BN
M:33KC5_$L\-J\5Q=7"VUO$HGC4$10DX'ITH _:^BOEC_ ()M?L4_&/\ 9.?Q
M1KGQ._:AF^)%IXGMK$Z3(UQ<2):B(S%G1I99 0XE3E<?<[\5]$?%/X<>'/B_
M\.=:^&'BT3_V=KFGR6ET]K,8YHPPP)(W'*.IPRL.C*#0!OT5^4'_  3\^-_Q
M6_X)U_M]:_\ L+_M-^+KR\T'Q/J,=OH^KZE<NT0NF_X\KN,N3MCN$(B8 _*^
MP$CRVI_[:_Q7^*/_  4R_P""B6B_L7_LZ^,]0T_PEX-NI8=<UK2KETCWHRB_
MO6*$!UB $$0/#29P<2B@#]7**_)K_@OO;W?P0C^"GP\^&.OZII6F:9X=U*T@
MCMM2E5W2)K15,C!LR/U)9LDDDGDFO0A_P0!\;$9_X>&>*O\ PG9/_D^@#](Z
M*\&_8%_8KU;]B3X?ZWX'U?XWZCXZ?6-8%\E_J5BT#6X$21^4 TTN1\N[.1UZ
M5\D_\%T_CC\1?'7Q4^&G["WP)U.\_M_6+^/4;^#3KPPO+/.YMK*%G4C:.9W8
M,< -&QP!F@#]+Z*_/C_@@/\ M/:[X_\ A+XI_9H^(VKW4VO^"=4:[L%U&5FG
M-C<.1)&=Q+$Q7 ?.>GVA!VJC_P '%'B;Q)X9^#'PYG\.>(+[3WE\472R/8W;
MQ%Q]F'!*D9% 'Z*T5^7?PM_X(<>/_B7\*/#GQ(A_;[\3V4WB#P]9ZDMHVA2R
M+;M/ DNS=]N4L%+XS@9QG JM_P $D/V@?VD?A3^W;XM_8)^+GQ/OO&&D:>VI
MVL4UY?R72V5W8R$>; \I+I$ZJX,? W,IP"#D _4VBBOS#_X*)_M4?M*_M7_M
MLV?_  36_9*\9S^'K2*X6U\1ZM973P-=3^3Y]P9)H_G6W@BR&C7!=U<'=\@
M!^GE%?D_\:?^"&_QR_9L^&]W\=?V8/VFO$6N>-="A^V7&G:9IDME=WP7YG-J
M\$SR&4<E8R&+] <X!^F?"GQ._:H\:_\ !)+XDZY^U9X&U3PSXZTKX?:_;O=7
MD*VT^H1II\C0WOEH<PN=VU@0IWQ,P # 4 ?8]%? G_!O+XB\0>)?V5/&-YXB
MUV\U"5/B#*B2WMT\K*OV&T.T%B2!DDX]Z\K_ ."[WB[Q7X>_:W^#]EH'B?4+
M&&?3$,T5G>R1+(?MX'S!2 >..: /U/HK\R?^#CKQ5XH\,:=\(#X:\27^GF>?
M7O.-C>/%YF!I^-VPC.,G&?4UV?\ P0*^+OBW4OAS\2/V<_B1J]U<Z[X(\6B9
MA?W+22I'.K0O$"QR52:UD/L9?<4 ?H'17\\7[9O[0?Q1^,_[1GQ&^./A[QQK
M$/AZY\:RV6EO;:I+''Y"^8EL%56 _P!1;J3CH2/6ON[_ (+K^*?$_A_]D7X-
M7N@^([^QFGOD$TMG>/$TG^@*?F*D$\\\T ?I?17!?LJ7%Q>?LO?#>[NYWEEE
M\ Z.\LLC%F=C90DDD\DD]Z_.S_@GEXN\5ZE_P6Y^,F@ZCXGU"XL8-3\6B&RG
MO9'BC"ZJH7:A.!@<# X% 'ZH45^6MKX]\='_ (.*CX,/C35O['_M-Q_9/]HR
M_9L?\(R7QY6[9][YNG7GK7ZE4 %%9'C_ ,;^'?AGX%UGXC>+[T6VE:#I=QJ&
MI3G_ )9P0QM(Y]_E4\5^!5E^U1^U)I_QOMO^"A]Q?:RVBS_$^5S -1D^R-.N
MRY?3MN<!/LT@C Q]W/<4 ?T&45R6I/HG[0/P*N'\&>)VAT[QKX3?^RM9@3<T
M<-Y;'RYU 89(60,!D=.HZU^4'[??_!+GQ]^Q+^SM=_'>U_;0\3>)'M=4M;/^
MS)-/EM WG.5W>8+N3&/3;S[4 ?L917Y(_L<_\$AO'G[57[-OA7]H*X_;@\3Z
M&_B.VFF;2DTJ6X%OY=Q+#CS#>)NSY>?NCKCMFM_]MSQ=XKL/^"ZGPO\ #]CX
MGU"&PEU/PR);**]D6%PUP=V4!VG/?CF@#]3Z*_)CXU>+/%_[ '_!;+2O$VI^
M*=27P1XVU6*^:VN;Z1K9+/4MT%R2I.U5ANO,D"CHL:<8.*^[?^"FOQ_;]FW]
MB3QU\0-/OS;ZK=:6=)T-T?#B[NSY".A_O1J[R_\ ;(T >]45^3O[-'PW\>>
MO^")/Q<^/?B7Q1J[ZQXWA$VF7-QJ$ID@L+6Y2"+:6;*%I#<MD8W*R>U<?_P3
MZ_X)B>/_ -N/]GU?CC=_MF>)O#3MK5S8?V;'82W8Q$$^?S#=Q]=_3;QCK0!^
MR5%?$_[(/_!(3Q1^RS^T)H/QTU']L?7_ !9#HJW8?0;[1GABN?.M98!ES=R
M;3*''RG)4#CJ/MB@ HK\O?VQ?^"/_C;X;?#KXC_M,6G[;GB6?^RK+4M?CT)=
M(EC1L;YA;B07AVC^'=L]\=J\=_X)P?\ !.+X@?M]?!+5OB_>?MA>)O"S:9XJ
MFT<:?'9RW@D$=M;3^;O-W'C/VC;MP?N9SS@ '[245^?/_!27]K7QW_P37_9+
M^'W[*WPC\;S:EXXU'0EL/^$LGM\3P6=LB1O=*C,^V:5V"H26V[9#G<%->:?#
MK_@@9\6_C'X*MOBC^TK^U=J]CXWU:W6ZDM7T]]1DL)'&X+//+<*TL@R-P7 #
M @,W6@#]4:*_*O\ 8L_:;_:C_8 _;FMO^"?/[5WCFX\2^&]9OH+'0M1O+IY_
MLLEQ@6<]M))\X@D8K$T3'",21@HP?TC]K?\ X([^+_&OB_XA?M'6/[:WB+3(
M[V74==B\/V^C2&. ;7F%NL@O%X&-N[8/7':@#]#**_#W_@F?^PM\0O\ @H1X
M?\6ZY>?M8^)?"A\,7EI L44$U[]I\Y)6SDW,>S'E].<Y[8K]>_V3O@/=?LN?
ML\>'_@AJOQ$N?%$F@1W7F^(+^ PR7(ENIKC+*9)-NT2[/OGA >.@ /1Z*_ S
M]L']I3X^_M'?M'?$;]K/X2^)];A\)>$?$EE;6%YI]_(D%C;!VAL92@.!YK6Y
MD/7YI#ZU^V7[*GQXT;]IO]G;PA\==$\M4\1:-%/=01'(M[I<I<0_\ F21/\
M@- 'H-%?EKJGCWQTO_!Q6O@Q?&FK#1_[3A']DC49?LV/^$95\>5NV?>^;IUY
MZU^I5 !117Y;_P#!QOXM\5>&->^$:^&_$VH:>)K36S,+&]>+S,-8XW;",XR>
MOJ: /U(HK\TV_P""!GQ)ETD7^C?\%"?$@NV@$ELL^@S*F_&0"RW^0,]P"1UP
M>E0?\$,_VIOV@-<^-?CS]C_XR^.[[Q1:>'-+N+[3M0U"^>[>SEMKR*UEACF<
MEFB?SE95)POE_*!N- 'Z9T5^)GA#]GWQ[^VW_P %3/C'\!4_:#U_PE;6GB[Q
M/?PWEJ9;E56'5&C6(1>?&%&).H/&W&*^D?\ AP#XV_Z2&>*O_"=D_P#D^@#]
M(J*^-OVNO^"3_B7]J/Q%X3U[3OVN=<\*+X8\$67A^2WL='>47SV[RL;IB+N/
M:S^;@KAL;1\Q[?GA\&?V/?B)\6?^"@WB3]AN3]J7Q)81>'[K4H1XE5)I&G^R
M=_(^TJ%W?[YQ[T ?NQ17Y]_$/]B'Q3^P-_P3H^/$;_M&:UXRN==T:UGMKV[M
M'M)+ PR;2$/VB4_-YG)!7[O>NQ_X(+:[K?B']A1M0U_6+J^N/^$UU%?/O+AI
M7VA(,#<Q)QR>* /M.BORO_X*I^+O%>D?\%@?@GHND^)]0M;.>W\,>?:6][(D
M4F[7+E6W*" <@ '(Y IG_!Q!XF\6:+\5_A5IWASQ7J.FI=Z1?K+]AO)(@Q\^
M$ D*PSC- 'ZIT5^:VI?\$!_B?;V$T_AW_@H5XC-^D9:T6YT*=(S(.5#,M\64
M9_B )'7!Z4?\$(/VLOCQX^\;>.?V8?C+XVOO$UOX<L/M^DZGJ5ZUU+:%+@6\
ML F<EI(V+HR G"[&QP<  _2FBOP6A_;6^*W[)G_!2_QA\5[#Q)JNHZ5IGQ,U
MJVU?0Y;]VBN]/>_F66 *S;58*-R'HKHAZ#%?HC_P6,^*VF>,O^"9!^+'PG\7
MROIVM:EH]YI>J:=<-&9()9 P.5((R#@J>0<@C(H ^V**^$/!/QD_:4^$7_!*
M/X3_ !V^$'CCP5:)X?T1;_QE+\0KJ?;J-H/-5;:)HU9C*\C+MPRL65%!.XJ?
M+O\ @BS\6OVG=9O[7X%>"=&\%>'O"?A[69]=\::/KT]RFO7UIJ$1DMY;9#'M
M\D"2W*M@;MJDN!(H8 _4"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@#\T/^#DK1=8G^&?PL\101.=/M==U*VNG ^432PP-$#[E89L?0U]X?LI
M>)-"\7_LQ?#SQ+X:GCDL;SP3I<EL8B,*OV6,;>.A4@J1V(([57_:O_9@^'/[
M8'P1U;X'_$V*5;/4 LMG?VP'G6%TF3%<1YXW*201T9693PQK\^O"'["/_!;#
M]D;3+KX/?LO?'_2+_P &O/(UBZ7EH!"KDDE8[Z%GM6))8K"Q&XD[B>: /OK3
M_P!M/]F/4_VA;[]E:#XKV2^/;"58Y- EAE5I7: 3[8Y"OER,(SEE5BR[6! Q
M7YO? 74;/X8_\'"7B6S^(4BVLNK>)]9ATZ6Y. 'N[5Y;4 GNZ.B+ZF11WKZ3
M_P"":/\ P2D\3_LP?$C4?VGOVF/'=MXH^(VI).+8VL\EQ'8-.29YWGE >:XD
M!92V %#.,OOR-/\ X*9?\$H+7]LS7['XW_!SQE;^%?B-I<$<7VNZWI;:DD9S
M%YCQ O#+&?NRJ&. %(X4J ?9C,JJ68@ #))[5^1O_!,F^MOB?_P6K^)WQ(\
M.)]":\\4:C]K@_U<MK-?!(WR.,.TB,/K[5U>O?LK?\%_/B9X2?X'>-OCYIL?
MANY@^R7>H2ZY9QM- 1M827%O;_;)%9<A@Q)8$ALYKZX_X)P_\$Z? W[ ?P[O
M;"#6QKOBW7S&_B+7_(\M"$SLMX$))2)"S').YV)8X&U5 /S0^''P@_X7=\7O
MVT?!D%KYMW;Z)KVJV"@98SV6NQW:JONWDE/?>1WKFM&^,6I?ML^"?V8/V%O-
MFD?0?$%Q8:\PSAH)KU%A?_MC9JXX[9K]!?V"?^"?7QR_9\_;5^,'QQ^*UKH<
MGAGQU_:BZ7'9Z@9I72XU(7"B6,H H,><\GGBO-/^">7_  1X^,_[+_[< ^-W
MQ(ET.7PKX?34SX9>TU(S7$KRAH(&>,H-O[B61B<G# ?6@#G_ /@FS##;?\%P
M/CU;V\2QQQP>)E1$7 4#6K0  =A7B%[X>_:I\3_\%A_BAI7[&WBZRT/QLWB7
M6VM[^_\ )\M;<.?-7]]%(N2,?PY]Q7V[^Q]^P+\?/@C_ ,%,?BI^U;XV311X
M4\8)K0T<VFI&2Y_TK4H+B+?'L&W]W&V>3@X%9_[/'_!/+]H7X9?\%5/&'[87
MB9-#_P"$/UN]UB6R-OJ9>ZVW/^KW1;!CWYXH \>\5_\ !*7_ (*A_MC^,-'B
M_;<_::T9_#VEW!<BVO//DB5L;V@MH8(H?,(&W>Y! ]0,'ZI_X*'_ !6\,_L&
M?\$Z-2T'X<L=/DBT*W\(^"X?,_>1O)#Y*N&ZEXX$EEW=VCYZU]25\-?\%9_V
M%_VK/V[/'_@;PG\-+K0[+P-H"--J=S?ZH8YFNYY DD@B"'>(X479R"3)(..I
M /A7]C#]LW]BKX'_ +$OQ%_9M^,G@3QOJ'B'XC_:$U/5-%TBREM[>-8=EEM:
M6[C9C#)NFY089R.0*^@?^#=/]I?;+XP_9-\0:APP_P"$A\-I(W?Y(;N,9_[8
M.%'I*?6OT8\.?LW? /PKX>L/#&D_!SPR+73;**UMA+H=N[^7&@1=S%,L< 9)
MY-?&'Q4_X)G?M _#_P#X*9Z+^V9^R9IOANU\-B\M+O6M'EU#[&5W(;>^@CC6
M,KMDARX/3?*>.!0!\S_MI?#_ .*7Q3_X+JZUX ^"OQ%;PGXHU*[TQ-(\1)-)
M&;)U\/6SLVZ/YAE%9>/[U<;^VKX-_;1^ _Q>T?X"_M_?M3^.M3^'_B!DG?6=
M%U6XU&TO+='&YEMYI(E>2)RI9'&Y<JP# IN^X_$?_!/+]H75/^"QD7[<-JFA
M_P#"#I>VLK%M3(O-L>BI9M^ZV?\ /53_ !?=Y]J]_P#V_OV-?"W[;W[.^I_"
MC5/(MM:M\WOA35Y5_P"/*_13L)(!/EN"8W'/RMD#<JD '$7'P/\ @1\ /^"4
M?COP5^SC>_;_  M<_";7M1M-::<2R:JT^F3.;N1P &9QMZ !0JJ  H ^=?\
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
MV;_B/^UA^R#KOP3^%"V!UO4;^PFMQJ5T88=L-S'(^7"G!VJ<<=:TO^"<_P
M_'O[,'[&?@SX%_$\60UW0EOQ?#3[GSH?WVH7-PFU\#/R2KGCKD4 ?!O_  <G
M_P#(Y_"7_L%ZQ_Z,M*[(?\$'_P!H@C/_  \DU_\ \$MW_P#+"O0?^"QO_!/+
M]H7]N+Q%X"U3X'IH9B\.V6H1:C_:^IFW.Z9X"FW"-NXC;/3'%>??\,^?\'"W
M_1SF@?\ @?9?_(5 'V-^QG^SUK7[&'[.[_#SXE?&J;Q<VGWMWJ5WXEU&%X=D
M# ,0PDEE(5 I.=V/85^2GP?_ ."@GP:@_P""G/B+]NO]HC0/$FJ:=]HO9/"F
MGZ%903S0$H+6T$BSSQ*%CM-W()/F!2!W'W%I_P"S[_P5M\3?L<?%'X/?&;XC
MZ#XA\6^+S9Z?X>NY-5BBBLM.?S!?Y:*W3EX\1@$'[Y.1CGT;_@FK_P $[?#O
M[*G[-,'@CXT^!_#6L>+M1U:YU#6[E[**\2(L1'%%')(F2@BC1L8 #N_U(!^;
M?P5_;?\ A!\-O^"LQ_:>^#EKK&C> O&6OM#KMCKUO%!+!!?A/M3.L,LB>7'<
MG[0N&Z1J,<8KZK_X.0B#\$OAL0?^9IN__285ZI_P54_X)CI^UI\*= 3]G;PC
MX9T;Q9X?UEG0F&.RAN;*:/;,C-&G+!TA9<@X"N!]ZN)_;7_8$_;0_:S_ &*_
M@_\ "G48_#K>./!CO'XFFN=;/DW"I#Y$<RR>62[NB([# PS-0!\T_'/X'_\
M!5G]G+]D7PY^T#HW[8/B75?!,N@:?--I_ASQ-?0SZ)9S01^3N3Y1Y2ADC)1C
MM..-N6'TQ_P0M^!O[*7_  K_ %/]I'X9^.-7\3^/[Y3IWBN;Q!$D4^D.["5X
MDB5GRLK*'\\NQD"8^0B1*^SOA?\ "^+3/V=/#OP8^(^DV=\EMX+L]%UVQ<"6
M"X"VB031G(^=#AATY!KX@_9,_P"":?[7'[!_[<>H>/O@AJ6BZM\)]7O#::A8
MWVM-'=R:7(0Z;HRA#3V['Y6S\X1AE1*0 #]%*_)']D6YC\ _\%_?'>C^-W$%
MUJ_B+Q(FF&X.,F</=0 $_P!Z 8'KN '6OUNKXK_X*3_\$I]2_:H\=6'[2?[.
MOCN'PE\3=*6'=<S320PZ@8<&"3SH@7@N(\ +( V0J*<;0P /KCXF?$?P?\(/
MA[K/Q1^(&KK8:)H&FRWVIW;*6\N&-2S849+,<8"@$L2  217B/QP_:#^#/[5
M'_!//XP>.O@#X]M/$FECX=:_;27%I'(C13C397,3QR*KH^UE.UE!PP]:^./'
MG["W_!;S]J_1;?X+_M'_ !TT6#P@D\9NY)]0M%CF5""K.MC LMR00&593C<
M20?F'WO^S'^QS\*OV8_V:+?]F/P_;'4M)DLYX]>NKM KZM-<*5N)9 #QN!VA
M<G:BJN3MS0!\G?\ !N3=0/\ LK>-[-95,L?Q!=W3/(5K&U /XE6_(UY5_P %
MZBM[^VE\&=*MVW3G2X?W8Z_/J.%_,J?RK0LO^"6G_!3/]B#XGZWKG_!/KXV:
M?/X?UE\+%=7=ND[1*6,:7-O=Q-;R.@8J)5R3DD!-Q6NG_9Z_X)1_MB_&']JK
M1_VK?^"C'Q4L-3GT"[M[JUTFUNDGGNI+=_,@A(B1(+>W63YRD>=WS#:N\M0!
MA_\ !RM_R#?@W_UWU_\ ]!TZO//CW\7+S_@G!_P4T^.6IZ>9+:S^(7@+4KC1
MG0$*+^]MENH9L#^[?)+'GT8],\?5W_!9+]@?X]_MR6?P\@^!R:,6\,RZJVI_
MVOJ)M^+@6GE[,(V[_4OGICCUKGO^"P/_  3$^,_[:?Q$\'?$SX$+HGV_3M$G
MTS71J^H&WS$LHEMRA"-NYEN,],<=<\ 'Y\_%GX0?\*[_ ."77PK\<W=KLNO&
M_P 1M;U+>RX;[/%#%:1+],P2./\ KIGO7V/_ ,%[+:9_V,_@Q>*A\M-2B1FQ
MP"VG9 _\=/Y5W_[?G_!,3XS_ !I_9'^#/[/'P'71&N/AY9+!JDFI:@;=)6%I
M%&TBD(=Q:178\#[U>^_M@_L.Z+^V-^R-9_L^>*M:72M6TRWL[G1M7CC\U+/4
M((3&&*Y!>-E>1&&0</D<@4 =U^R%<P7O[)WPPN[:57CD^'FBLCJ<@@V,-?G'
M_P $U\:C_P %Q/C9>V;!XEU#Q?)O7D%3K$:@_3+#\ZO>!/V0/^"\_P"S[X+'
MP+^$'QETC_A%K4/!8R6VKV,JP1,3_J9+N#[1"O)(5=NW/ %?1'_!*W_@F'K_
M .Q+<Z_\7/C)XSM-<\>^)[7[+<-I\DDD%C;&02R)YL@5II))%1G8@ &, 9Y8
M@'S3:?\ *R>?^PJ__J+FOU@K\R_VL?\ @FG_ ,%!/$G_  4&\2?MB?LN^(O#
MFCR7%U!+H&IW.K*MQ#_Q+HK27,;PNHR!*O.>#GK4_P#PSY_P<+?]'.:!_P"!
M]E_\A4 =_P#\%]_VD_\ A5/[*-G\$=$O_+U;XB:EY$ZHV&73;8I+.>.1ND,$
M?NKN.QKX>UC]LW]BJ^_X):VG[$=KX$\;KXQM)DUA-=?2++['_;1F+O)O%WYA
MC\IWMPWE[MF#MSQ7V!\:?^";O[6_[5O[</P]^+?Q_G\/S^ _"6G:1:ZC%_:O
MF3W@MHA/=9A6,*?/NS*IP1^[9>FW ^YO^%&?!+_HCOA7_P )ZV_^(H ^/O\
M@@;^TO\ \+<_90N?@IKNH>9J_P .M0^S0J[99]-N"TMNW/7:XGCQV6-!WK>_
MX+S?\H]M5_[&?2__ $::XS]DG_@F_P#M(_L=?\%%O$/QA^'2:"_PH\17%];S
M62ZH4N8;&<^?"JPE,;H9Q&@YR45L'YJ]V_X*C_LQ_$W]KK]DV^^#7PC73SK-
MQK5E=1C4[LP1>7%(6;+!6YQT&* *O_!(+_E'#\+_ /L&7G_IPN:^,_VYO^4]
M?PK_ .PIX7_]*37WY_P3_P#@?XX_9N_8_P#!/P2^) LQK>@65Q%?BPN/-AW/
M=32C:^!GY77MUS7SM^TW_P $\OVA?BQ_P5*\#_M=^%$T,^$?#][HDNH&YU,I
M=;;68O+MCV'/'3GF@#&_X.%/V>#X[_9NT']H/1K'=?>!=7\C49$7G^S[PK&2
M2.NV=8 /3S7/U^8/VWOVO_$/[?7P2_9L_9K\$:E]M\2:]#!)XG@W[BVK^<=,
MA9P/NDLEU,0?X)T;IR?UY^.GPFT'X[_!OQ/\&O$P'V+Q-H=SI\TA7)B,D959
M0/[R,5<>ZBOSO_X)E_\ !&[X]?LX?M6Z;\</VAQX=?3?#NGW,NCQ:5J9N6DO
MW7RHRRF-<*J22N#U#*G'< 'TI_P4(^&_A[X._P#!*#QG\*/"<.S3?#G@:STV
MR!&"8X9;>,,?]H[<D]R2:^ O^"=?_!+OXN?M;_LZK\6_!?[8NJ^![(ZY=6?]
MAV>G7$J!XPF9=T=W$,MN'\/;J:_4K]NSX,>,_P!H;]DCQQ\%_AZ+0ZUX@TI;
M?3Q?3^5%O$T;_,V#@84]J_/WX(_L _\ !;K]G#P0/AQ\$_C/X9T#1!=R70L+
M?5K>1?-?&]LRVK-SM'?'% 'TU^P9_P $R?BQ^Q[\:;KXJ>-_VO=4\=V=QX?G
MTY=%O-.GB1)))87$VZ2ZE&5$1&-N?GZCO]A5\(?LN?!?_@M1X;^/OAK6_P!I
M#X^:-JO@>WO6;Q#I]O>6K/-#Y3@ !+5&/SE#PPZ5]WT >-?\%$?^3$_B[_V3
M[5/_ $F>OFG_ (-TO^3*_%7_ &5&\_\ 3;IM?6_[6_PR\3?&C]F#Q]\)?!@M
MSJWB/PG?:=IOVN7RXO.EA9$W-@[1DC)P:\:_X)$_L?\ Q?\ V*OV<=<^%WQI
M72QJFH>-KC5;<:3>F>/[.]G9PKEBJX;= _&.F/6@#X\_X+YI+X4_;9^$GQ%\
M16KMH4?A^V#90E7-MJ4DLZ@=SLEBR/<5^LNEZIIVN:9;:UH]]%=6EY D]K<P
M.&26-U#*ZD<$$$$'N#7BG[?'["WP\_;R^#J_#OQ;J+Z5J^F3M=>&O$,$ D>P
MN"NU@R$CS(G  =,C.U2""H-?$W@S]CK_ (+O_LX>&A\%?@I\=M'NO"UN##I\
ML6J6<R6\)S@1-?6_GP* ?N1X"G[OK0!RW_!5W4+3XE_\%B_A9X)\ R+/JVFQ
M^&]-OA;G+173:G-< -CH5BGB8D] >>!7ZD_'?_DA_C/_ +%34?\ TFDKY"_X
M)T_\$CM>_9Y^*L_[4W[5'Q!@\7_$29YI;);>>6XALII@1+<R3S /<7#*S+DJ
M%3<Q&\E67[+^*'A[4/%WPT\1>%-(V?:]3T*[M+7S6VKYDD+HN3V&6'- 'YT?
M\&V7_(@_%?\ [#&D_P#HJYKZ:_X*Y_M)_P##-7[$/BC5=+O_ "-;\4(/#VA%
M6PXEN582R*>H*6ZS.".C!?6N*_X(Z?L)_'3]A[PMX[TCXWKHXF\0ZA8S:?\
MV1J)N!MB297W$HNTY=<=>]8G_!57]@K]J?\ ;O\ C)X$T/P7>:+8_#SP[&/[
M1N+O52ESY]Q,HN9EB"$/LACC" G.2XXSR ?#7[*7[9O[%7PB_8!\?_LJ_%7P
M)XXOO$OQ!-U)J.K:5H]E+:V\JHHL-K27<;L(7C6;E!AW<#(P:^D/^#=3]I?[
M;HGB_P#9.\0:AF2R?_A(/#:2-R8G*17<:YZ!7\AP!WED/K7Z&Z1^SO\  ;0]
M)M=$TWX,^%TM[.W2"W1M!MV*HBA5!)3)X Y/-?%OBO\ X)H_M"?"G_@J!IW[
M8O[+=AX<M_!\^HV]UK6CR:A]E9(Y8_(OX8XA&5(9-\J\X#N.FT4 >1ZK_P K
M*"?]A2'_ -1=:_6"OS._:_\ ^":G[?\ XN_X*%>(OVQ?V7?$/AS2'GGM)- U
M*ZU95N(2FF0VDI,;PNHSME'.>"#4G_#/G_!PM_T<YH'_ ('V7_R%0!^EM?E/
M_P '*?\ R'_@_P#]>>N?^AV-?I[\-;/QAI_PYT"P^(5\EUK\&B6L>N7,9!66
M\6%1,X( &#(&/  YZ"OC/_@LA_P3X_:"_;CU7X?7GP/31"GAJWU--2_M?4C;
MG,[6ICV81MW^I?/3''K0!\H?MS_!G_@K!^R!\+['X@>./VS/%7B3P??2)::C
M>^'?%%\C6#2#"+.C%"$<':&#%2V%;:67=]A_\$5?@'^R7X)^ ,OQJ_9X\6ZC
MXDU?Q*5M?$VJZY D-W8RQ?,;'R$+"!06#GYG\S<K;V78!]8^/?ACX0^*_P ,
M=2^$_P 1]$BU'1M:TIK'5+.3I)&R;3@]58'E6'*L 1@@5\.?\$Z?^"?'[9W[
M ?[4&NQV&KZ%KGPH\0326U[G5REV8D+&TO/(*8$RYV.H;!61\$X6@#X]\%_L
MM>+_ -KW_@J]\9_A1X)^,EWX%O(_&'BF_.M6=M)*[)'JK*8ML<T1PQD!SNQ\
MO0]OJ+2O^"%7[0NG:I;:A+_P4=UZ58+A)&B.C7?SA6!Q_P A#OBN1\5_\$Q?
M^"GG@3]L?XB?M+_LQ^,_#.@2^*/%.LW.GWYUA#,;&[O7G5'22!U4D>62.H(Q
MFNF_X9\_X.%O^CG- _\  ^R_^0J /TMK\H/V./\ E/Y\1O\ L*>(Z_3KX,Z?
M\0M)^#WA32OBWJ<=[XKMO#5A%XGO8F4I<:@MN@N9%*JH(:4.1@ <\ =*^./V
M>?\ @GE^T+\,_P#@JKXO_;"\3)H?_"'ZW>ZQ+9&WU,O=;;G_ %>Z+8,>_/%
M'MW_  5,MIKK_@GO\5HH$+,/"[.0/198V)_(&O'/^#?FY@G_ &#)XHI59H?'
M>HI* ?NMY5LV#^# _C7V-\2?A]X9^+'P]USX8>-+,W&D>(=)N-.U*%6VLT$T
M;1OM/\+88X/8X-?F+X2_X)I?\%9_V&_%NM:?^P]\<-)O?#FK7'F O<6J&4#A
M'FM;Z)XDF P"\9;( YQP "I_P55*ZC_P6@^!UC:-OD"^%(F5>2&.NW! _)@?
MQJ/_ (..HYIOBY\)H;>79(^CZ@$?^Z3<08->G?L<_P#!*;]J#5OVK[/]M+]O
M_P")UEJ^O:7=I>Z?I5I=BXEFNXUQ"\KHBQ0QQ'#)'%D%E7[H!#=5_P %=_\
M@GE^T+^VK\1? 'BCX+)H9M?#=E<Q:E_:VIF!MTDT3KM 1MW"'TH ^4?V^_@]
M_P %6/V/?!%EXH^*'[97BSQ-X.U:X^PZEJ7A[Q/? 6CN#^[GC<H=KKN"G)4D
M%6*DKN^U_P#@C1\ _P!DWX=_LY_\+:_9L\5:AXCO/%;)'XCUG6H4AN[>:'.;
M)H$+"W"%RVT,^_>'WNI3'U!\7?A3X'^.7PSUOX1_$G1DO]#U^P>TU"V;@E6Z
M.I_A=6 =6'*LJD<BOB3_ ()H?L#_ +:G[ O[0GB#1K[5= UOX5^()98KEXM6
M9;E3&6^RWJP%,+(5^21 V,/U;RUH ^:_V1_V9/!G[7G[<?[4_P #/&JK&FIQ
MZ^^F:AY>YM/O4UU&@N%[_*W4 C<A=<X8UXUXN_:"^)'P=_9%^(G_  30^/-C
M<0:GX<\76UUX=$F66V:.YS=6P/>)]PN(V^Z=TAR=ZBOT;_8&_8%^/G[./[=W
MQ<_:'^(R:*/#WC1]5.BFPU(RS_Z1JB7,?F)L&W]VISR<'BL?_@K?_P $H?%?
M[8OBO1/C5^SXND6OBV.,6'B2#4[HV\5_;*I,,V\*W[V/_5G(^9&09'E@$ ]4
M_8,^$/PR^.7_  3#^&7PY^+O@C3_ !!HEWX8A:?3M2@WH665RKCNK ]&4@CU
MKWC3?@I\)-'^)<_QDTOX=:1;^*;C2(M+EUV*R47'V.,DI"&Q\JC('&,A4!R$
M4#D_V(O@_P"+_@#^R?X%^#?CX6HUGP]H:VNH"RG\R+S ['Y6P-PP1SBO5* "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **\^\8_M7_ +-'P]^(<7PF\<_'7PMI
M/B::6".+0K_68HKIGFQY2^6QSE]RX]<CUKT&@ HHHH **** "BBB@ HHHH *
M*** "BBJ^K:KIFA:7<ZYK5_#:6=G;O/=W5Q($CAB12S.S'@* "23T H L45P
MWPC_ &F?V>_CW>WNF_!;XS>'/%%QIT22WT&B:K'</ C$A68*20"01FNI\6>+
M/#/@3PS?>,O&6NVNF:3IEJ]SJ.HWLPCAMX4&6=V/"J!R2: -"BN;^%OQA^%G
MQO\ #3>,OA!\0-)\2:4ET]L^H:->K/")E"EH]RDC< RDC_:%=)0 4444 %%%
M% !1110 444RXN+>SMY+N[G2**)"\LLC!510,DDG@ #O0 ^BO#-?_P""F/[
M_AK7F\-:K^U9X0^U(Y1_LNH>?$K#J#+$&C'_ 'U7K7@+XB> ?BGX9@\9_#3Q
MKI7B#2+G/D:GHU_'<P.1U >,D9'<9R.] &S1110 4444 %%%% !1110 445Q
M'Q%_:4^ 'PC\7:=X!^)_QA\/:#K6KHCZ7I>JZG'#/=*\AC0HC'+ N"HQW&*
M.WHHHH **** "BBB@ HHHH **K0ZUH]Q:SWUMJMO)#:O(ES+',K+$T9(=6(/
M!4@Y!Y&.:Y?X1?M"_ WX^P7]S\%/BOH/BF/3'C747T/44N!;-(&*!]A.W=L;
M&>NTT =C1110 4444 %%<I\6_CG\'/@+X?3Q3\9_B=HGABPE<I!/K.HI!Y[@
M9*1ACF1L<[5!..U<9\*_V^?V,_C7XCA\'_#+]H_POJ6K7+[+333J @GN'_NQ
MI,%:1O9030!Z]117CWQ$_P""@/[%GPH\9R_#SX@?M*>%=.UFWF\J[L'U 2-;
M2#JDIC#")AW#D$=Z /8:*I>'?$?A[Q?H5IXH\)Z[9ZIIE_ LUCJ&GW*307$;
M#(='0E74]B"17$_%3]K3]F7X'>)(_!_QA^.WA?PUJLMHMU'I^LZO'!*T+,RK
M(%8@[2R. ?53Z4 >AT5Y%HG[?G[$/B+4HM(TC]K+X?27,S!88F\56J%V/ 4;
MG ))Z#J:]<CDCEC66)PRL 593D$'N* %HHKQGXA_\%#OV(OA5XGE\&>._P!I
MGPK9ZI;RF*ZLXK_[0]O(#@I)Y(81L#U#8([T >S45SGPP^+WPL^-?AI?&/PB
M^(>C>)=+9RAOM%U".XC5P,E&*$[6&1E3@C/2NCH **** "BBB@ HKD?BW\??
M@I\!+"SU3XT_%+0_"]MJ$S16,^MZ@ENL[J 652Y&2 0:C^)7[1'P+^#?AW3?
M%WQ5^+.@^'M+UA@-+O\ 5M22&*Z)3>!&S$!OE^;CM0!V5%0:5JFG:YI=MK6C
MWL5S:7END]K<PN&26-U#*ZD=0000?>O(?B%_P4,_8C^%GB>7P9XY_::\)V>J
M02F.YLX]1$[6[C@I)Y081L.X8@CO0![+16'\//B9\._BWX8A\:_"[QSI/B'2
M)R5BU+1K^.YA9AU7=&2 PSRIY'<5N4 %%%% !1110 45%?7UEIEE-J6I7D5O
M;V\323SSR!$C11EF9CP  "23P*\Z\$?MD?LG_$KQF/AYX _:/\%:SKCN4ATS
M3O$=O++.PZK&%?\ >G@\)G@9H ]*HJOJVKZ5H&EW&MZ[J=O965I"TMU>7<RQ
MQ0QJ,L[NQ 50.22<"N#^&W[7'[+OQC\3R>"OA7^T'X/\0:N@8_V;I/B""::0
M*,LR(K9D4#JRY ]: /1**BO[^QTJQFU/5+V&VMK:)I;BXN) D<2*,LS,>%
M))/  KSWX??M@?LK?%?Q<? 7PT_:)\&:[K66$>F:7XBMYII=HRWEJKDR #DE
M,B@#T>BBN9^*OQE^%'P-\.1>,/C%\0](\,Z7->+:1:AK-ZD$3SLK,L89B 6*
MHYQZ*?2@#IJ*SO"/B_POX^\,6/C3P5K]KJFDZG;+<:?J-C,)(;B)AE71APP/
MJ*T: "BBB@ HKB_"G[1OP&\<_$G4O@[X.^+N@:GXJT?SO[5\/V6I1R7=KY+B
M.7S(P=R[795.>A(%=I0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !5'Q/XDT3P;X:U'Q?XEU!+33M*L9KS4+J0
M_+#!$A>1S[!5)_"KU?%'_!=K]I/_ (4K^QO)\,=&O_*UGXC7W]EQJC8=;"/$
MEVX]01Y<)'I<4 ?F)\6?"OQD_;*M?C'_ ,%%(DFBT[1?&%DUQ&<EXH;F1XX4
MC8'_ )=D6T0^TBG/%?M?^P%^TC#^U=^R5X.^,<UTLFIW6FBT\0*N,IJ,'[J?
M(_A#.OF ?W9%K\M?V?OBK^W=\'?V-M7_ &2O#W_!-+Q1K?ASQ9:WSZIK,_@C
M6#->F\C""=2D>S*QB((P_P">:FO3_P#@W\^.GB+X8_%WQM^Q5\3+"]TF[O\
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
MLF?$?_A26A>#]8\>>-(V1;S1M!94CM'< K%)*0Q,I!!V(CD9^8J>*K?L@?\
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
M *<+:@#YJ_X(C_M<6/BWX WW[(+^ -7CO= \,ZWKLWBB=P;2Z#WBCREXSO\
M]*!))_@:OGK_ ((__MS^$OV._ WQ$TQOAMXD\:>*?$E_IK:#X6\,6+2S3QP1
MW/G2R.%;RXU\Q!D!F)884@$C[@_X(TD'_@EEI !Z-KN?_ JXKP7_ (-K] TA
MK3XM^*'L(VOTDT:UCNF0%TA(NW9%/4!F521WV+Z"@#ZB_8*_X*K?";]N3Q;J
MOPO@\"ZKX0\7:3:O=2:)JLRS+/ CJDACE 4[T9EW(R*1NR-P#;:'[8/_  5T
M^$?[,7Q93]G[P/\ #;7?B/XY7:+W0_#A 6U9EWB)G"NS2["&V(C8!^8J>*^8
M_P!G.V@TW_@X9\<6UC$L4<DNK/(B# 9GL4D8GZL2Q]^:\I_8MG_; G_X*6?&
M+4/V=K+P'<?$!;_7/[27XBF?:D)U11,8/)(82!]@/HA(Z4 ?H9^Q'_P5'^#7
M[9?BW4/A._A/6/!7CK2XGDN?"OB$#?*B'$GE. -S)D;D94<#D*0&(^FZ_,3P
MA^S-^UYXH_X*D^%/VBOC1\3/@=I?B_2+RT7Q)X:\(>*WBOYK3[.T98VDH:5I
M'MI-N20&4+VYK].Z /QL_P""F.L>"+G_ (*_16'[<8UY_A99V=BME!IC2 C3
MFL@0T6WYC&;WS/-,?SX60+R%KT'XN?\ !.3_ ()Z_MB>'M%N/^"87QJ\&:!X
MMMKY7N],OO%EZ3<VFQB7^SS^;=12JX0@A%4C?NYP1[?\9/VDOV#_ -L_]KJY
M_P""??[2_P"S_>#6=(OKJRTKQ%KLL=K_ *2JAU2VGAE$R"90&0$J'P@*DD"O
MF3_@J!_P26^!?[%WP<;]H_X(?&'6],N;/6;6&U\/ZW>1R23R228'V29%CD5X
MQF3#;SM1CN&!0!^HGPS\&_%W1?V==*^'_P 0_'-O>>-+7PLNGW_B2S+LDUZL
M/EBZ!<!B2P#G(&6SQ7XB_ CQK^S-^S9X>^-/P4_;9_9OF\1_$+;-9^'[R3][
M+;WZEX7C\TL/(_>,LWGIDLJMU^0-]=_'#]O7]HW1?^")'P_^+EOX@OK?Q?XS
MU0^&M0\3HQ6Y2WBDOD-RLG432QV:*9.N9'<$-@UYEJW_  1\TG6?^"</AG]K
M+X+>/;R_^(HT1/%FK2/J 6"YMWB$SVT1X\J>W R&+9:195/5 @!]D?\ !$;X
M/?&?X,_L16^C_&>PO=/EU7Q%=:GH.D:BK+-8Z?+'"%5D;F/?(DTNPX.)<GEC
M7R1_P6$\%^'_ (D?\%<OA/\ #OQ;:-/I6O:;X;T[4X$E9&DMY]8N8I%#*05)
M5B,@Y':M?_@G1_P4L_;7_:\_;'\!_"K6_B7ING>'[+PX4\5V4EI:DZS]E21C
M<*9$\P7,K-$K+$P 56<* IQSO_!:7P'_ ,+3_P""JGPU^&']M2Z;_P )'H7A
M_2_[1@3<]K]HU6ZB\U1D9*[]P&1DCJ* /2?^"D__  24_87_ &??V3?$OQE^
M'KZCX5UO1HXGTH76OR7$.H3-(JBV,<Y8LS@MC8001N.5# ^V?\$(_B/XZ^(?
M[!=I;>-[^XNE\/>)[S2-%GN6+,;%(X)$4,>2J--)&OHJ!1PH%>4V?_!NGX"U
M#5[>Y\?_ +6OBK5[.)OWD$6CQ12E<\A9))90GUV&OO;X)?!7X<?L\?"[2/@[
M\)_#ZZ;H6BV_E6=N&+,Q)+/(['EW=BS,QZEC0!PG_!0W5?B9HG[$?Q,U7X/O
M=)X@@\*SM:R6.?.CBX\]XRO(=8/-8$<@@$<XK\M/^":/AW_@C_XQ^&$_A[]L
M^=K?Q[/J$JFY\0ZM?6=C]G)'EF"6V=(DP/O&8AMV<?+7ZS_M;_M+>'?V1?@5
MJWQY\7>$-6UK3-(EMTO+31DC:55FE6%7/F,JA0[J"<]^E?(OP\_8+_X)F_\
M!4KX2I^T;\-/ 6H^!=0U2[N(M5MO"^J1P2V-TDC#9-;$26Z%AMD^1%W+(#GG
M- %K_@G;_P $Y_'?[+G[5&K_ !Q^!'[0GA7Q!\&O$$5U;0Z?INLR7EQ<VQ!>
MVWM''Y#RQ2;1Y@<G8SXQO(/:_&/_ (+-_ OX$_M)^*_V<O'_ ,./$?VKPQ&%
MCO\ 30EPVIW+Q0R16T$(PV]S,%&X@#:22!7QI^QKI'C#]@7_ (+ P_LG?"OX
MM2^*?#6I:D--UV.#Y8[E'LS./-B5F19[9^K Y'EN/E#,@[;P/H>E:Y_P<=ZL
MNK64=PMI?7-S DJ!@LJ:""CX/=3A@>Q (Y% 'M/P^_X+V? R?X@:AX#_ &AO
M@IXL^&CVEI+/#/JT9G=BL9D6.2$1I)$\B@!,*P+, 2 <U'X:_P""\_PH?XMZ
M5X%^*G[.7C/P5H6NRQ_V7XEUS:I,$C;8[F2 J,0YZNCR8 .-V*\6_P""JOAC
M0O$7_!9_X&^'M8TR&>SU>/PK#J5O)&"MPCZ[<QLK@_>!0!3GM6O_ ,'*MI;?
M8O@Y>B%?-\W7H_, Y*XT\XSZ9_F?6@#[4_;G_;^^#7[!?@C3_$GQ*M;[4]3U
MN:2+0O#^E!//NS&%,DA9R%CC3<@9CDY=0%;M\Y:'_P %[?!NA^+]*T7]H+]D
MOQOX!TO5V'V;6;YC*!&2!YWE/#$SQKN!8QER!T!. =K_ (*?_ME^$_@OXK^'
M'P0\._LS>$OB1\2?$L5K<>'6\9Z=%/;Z:TDZPV[*6 8R/.IQMDC"^7N+=*^1
MO^"Q.A?M^6_P]\$^)?VU_B)X%EBO]7N1H/A/P?:$&Q<1*99'E>,.W!12!(Z\
M@YS0![I_P<>W-O>?!GX77=I.DL4OB&]>*2-LJZFWC(((Z@BLC_@NS_R9'\#_
M /KZ@_\ 3:M5/^"[V[_AC_X#;VR<#)/?_B7P5;_X+L_\F1_ _P#Z^H/_ $VK
M0!V?_!5']K+QG^SM_P $Z?AE\/?AOK<VF:S\0- LK*74;:0I+#I\-C"UR(V'
M*LYDA3<.BN^,$@BU^QS_ ,$.?V2KC]G/0/$7[0WA?4O$7BSQ%HL%_?7 UNYM
M(],>>-9!#"D#H"8PP4M)OW,&. "%'E?_  6]^&^OZU^Q=^SW\5;&TDDT_P /
MZ2NGZ@Z+D1->6%F\;-Z#-HRYZ98#J17Z$_L:?&SP1\?/V8/!?Q*\%:W;74$_
MAVTBOTAE!-G=QPHL]O(/X71PP(/;!&002 ?+G[ ?_!,O]I;]AG]KSQ'XE\)?
M%+2KCX1:CYUN=*O;Z5K^_A,>^VE:)(A$LT4A"&3<"R^9A0'P.V_:W_X*^_##
M]G#XT/\ LZ?#SX0^(_B1XSM57^T=,\/$+';.R!Q#N"R/)*$(9E6,A0<%LA@-
MCX-_\%5_@]\</VS]7_8[\">"-8U*2QN+B*P\7Z7/#<:?<"W@WSR2?,K11B0/
M$KKY@<[",!QCPKQ%^V1\7/CA^WMXP^"'_!.O]F7X8V7BWPY'>VGB3XF^+=.5
M;N6.&XCAN7\R(*_E_:/+4 ^<7P'V@?= /8/V,_\ @KO\+_VK/C,_[.WBCX3>
M(? /C1HYFLM*UIA(EPT2&22+=M1XY1&K/M9 "JM\V< Q_M ?\%CO@3^S1^U%
MX@_9K^*'@77(O^$>L8YY]>LWCE2X>2QCNHH8H>&+N94B&2%#')(4$CXV^%&A
M?'3PY_P7F\*Z3^T?\1=&\3>-$FW:UJF@6BP6WS:%*T<2J(X_N1%$R5!.,G/6
MMWXL+X%?_@XYLU^(J6K::=:TKRQ>8V?;/^$?@^R=>-WVGR-O^UB@#W[X7_\
M!=OX/>(/C%9?"OXW? KQ3\-X=5E1--UG7Y%,:B1L1R7$91&AC8\>8-ZCJ2%!
M8?=G7I7YK_\ !R%:^"O^%0_#>]NH[8>(_P#A)+I+%B!YQLOL^9P.Y02?9_;)
M'K7WE^S4_B"3]G+P!)XL,AU5O!.E'4_.^_\ :/L<7F;O?=G- 'P?_P '!OQW
M\;66E> /V4_!6N265OXPN);WQ $F,8N8TDCBMHG(ZQ^8TCL#P3&A_AKSOQ+^
MP]_P2>^*VK^$_@C^R?\ MHZ=X4^).CZG%%>^))9[N\76I54C,)DEBM_/\X(T
M?V>11U #$J0G_!QYX1OH?C!\,/&]VCIIU]H%Y8&=4R$>&X21A]=LZD#O@^E=
M/_P6._8[_8\^"7[$/A'XC_ CP%HFAZC::]86NC:UI&U9M6M9;>5R99%YN20B
MRB1LL-IP0&((!H?\%^_BW\1? WP0^%W[,2^,9;^Y\0B2X\5ZA!#]G_M1[-+>
M.,M&&;:DDTKRF/) :-.3M!KS7_@J9_P3U^%7_!/KX+_#'X]?LX7>J:-XFTOQ
M';Z;JVL)JDTCWE[]GDN([P!V(A</;2?+&%3#CY>*YW_@K%J_C[Q9^SU^RE\>
M?'JW%S>ZEX!_XF=W*"6FN%CLIO,<G^*57+^_S5](_P#!PWXY\-:K^QIX"L-+
MU:"<ZWX\MM2TUHW!\^VCT^[!D7U7_2(N?]L>M ''_P#!9S]L#Q3XK_8'^#-E
MH=^]@/B]ID.M:[':N5\R"&TMIGMC_L>==1DCN81VSGSW_@I%_P $X/A)^Q3^
MR#\-OV@/@DVJ:7XTTS6=/MO$&L)JTS-=W$EM)-]J4%B('2>$;!$% #\Y(!K,
M_P""N'PP\1>$?V&OV3[C4[*2,Z1X*?3]3#J?W-S+9:=*L9]#^ZF'_ *^C?\
M@NA\1O#.N?\ !.+P7?Z;JD,R^*/$NDW.E^7(#YT)L9YO,7U4 IST^=?44 ?8
MG[)7Q:OOCO\ LQ> OC!JQ7[=XA\*65YJ.Q0%^U-$OG8 Z#S ^/:OE'_@X?\
M^3'="_[*78?^D-_7T-_P3B\+:EX-_81^%.A:O"T=P/!5E</&XPR><GG $=B!
M( 1VKYY_X.'_ /DQW0O^REV'_I#?T =!\.?VP_#7[#W_  2=^$?QK\5>#K[7
M+5M!TK3A9:?.D<FZ6)V#Y?C \L_G7+^/?^"]OPOT;PQ8^,?AI^S9XR\5:4MA
M:2^(M9B_T>QTFYFB1VLS/Y;K)+&7V-D(I8?*6'->5?MN?\H$_A!_OZ#_ .D]
MQ7T-\$?!_AS3_P#@ATVBVND6Z6UW\#=5N[B)8AAYY;*XF>0^K&1BV>N<&@#W
M+]E[]L?X-_M6_  ?M%>!]2ET_1;?STUJ/6-D4FE2P('F28ABH"H5?<#@HRGC
M) ^6KK_@OE\+-8^(&HZ/\*/V9/'GB_POH[%M4\3Z5"-\4 )!N!;;#MC."5,L
MD9(ZA3Q7SY^P3+XA'_!$C]HJ/PXTOGC6+TN(^H@-C8B?\/)#Y]LU]+_\&^\?
M@L?L.7<F@);?VHWC.]&OLF/-,@CA\H/WQY13;GCEL=Z /GW_ ()2_$'PO\6?
M^"QWQ6^*'@F\>XT?Q#IGB#4=+GDA:-G@FU*UD0E6Y4[6&0>17U%^T_\ \%DO
MA5\$?C1<_L]_"+X/^(_BAXKTV5XM8L_#AVQ6LJ#YX594D>61/XPJ;5.06W!@
M/ES_ ()4)X,B_P""ROQ>C^' MO[!6W\3#1Q9X\C[/_:UOY?EXX\O;C;C^'%>
M:_\ !):X_;@F^-7Q-U/]F:P^'5QXR>*/_A*&^(QN1<!6N93+Y'D,#S,!YN>_
ME4 ?I5^PW_P4I^"O[<AU3PSX7TC4O#?B_0XC)JWA/70HF2,,$:6-UXD17(1L
MA65B-RC*D\W\&?\ @JUX ^(/[6][^QG\3/A+K7@/Q7;3SVL#:U>PR07-U& R
MPHR8_P!9'EXW^ZXVXY=<^ ?LN_LR_M-Q_P#!5I?VEOBO\3O@O#KC/<Q>-_"/
M@7Q43=#=IC1#_0G!D#%A#,VYN3E^]<+_ ,'"'_"E[_XT^!-,^'EG=3?%LP :
MF-&&6-B3_HJ2A!N-QYFXQ[?F"9W<&*@#Z^^"_P#P5/\  ?[1O[6NH_LO? WX
M3ZSX@M=(GF&H^-H;V)=/B@APLEP!RS(9#Y:8_P!864C .1]4U^?7_!O7K7[/
ML_[-NNZ%X&M1!X^AU<R>-_M3J9KB(EA:21$#/V<)N4+_  R>:3]]2?ON/7=$
MFU%M'BUFT:[7.ZU6X4R# SRN<]* +5%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %?*?[:7_!+K1?VW/C_X7^+WQ%^,][:Z)X9@
MMX(_"$&C*\5Q$LYEG!F,H*M,,(6"'"HO!QS]644 (B)&H1%"JHP !@ 5\G?$
MK_@E=H/BO]NS3_V[? ?QGO/#&LVNHV=[>Z/;Z*DT-Y)%&(907\U"JS0C8X S
M\S-DEJ^LJ* /F/X1?\$UM#^$_P"W9XG_ &X+?XM7=[=>)3?%_#KZ0J1P?:2A
M.)A(2VW9_=&<]J/BU_P36T3XK?MW>&?VX;CXM7=E=>&S9%/#J:0KQS_9]^,S
M&0%=V_\ NG&.]?3E% 'S'^WS_P $U]$_;L\:^"O&6K?%F[\-MX-$_E6]OI"W
M(NO,DB?DM(FS'E =#][VKL?VVOV#_@E^W9X!M?"'Q5AN[._TJ1Y=!\0:6RK=
M6#N ' W J\;[5W(PP=H(*D!A[710!^=GAS_@@%9ZEK.EV7QU_;2\7>,?"FC.
M/[/\,KIS6PBC&,1I))=3K$I "GRXU..A7C'U)^U5^P]X&_:._923]DKPWK"^
M#-!MC8KISZ;IXF6TAM75DC6,NN1A0,EL]^37M]% 'E7P2_9>L/@O^R18_LHV
MWC&;4+>Q\.76DC6I+(1NZS^;F3R@Q (\WINYQUYKS;]BW]AC0/\ @FU\$O'E
MA8>+=1\?0:BLFJSV*Z+'#-,(;9@;:./S&61G P 2 20*^GJ* /Q9^%WPA_X)
M+?M%?$G7?&7@7]JKQM\%M)<A]2\)>)WL[,3PREC)!:7(FD!C&W&Q][ ,O!'3
ML?\ @DIX+^'6L_\ !6#QOXB_9OL9'^'?AK1-0CTF]Q(4-LSPV\!+2?,6D(=Q
MN^9@K''!Q]]?$K_@E[^P-\6_%%SXS\<?LT:)+J5Y*TMW<:?/<V/G2,<L[K:R
MQJS$Y)8C))))S7I/P3_9Y^"/[./AE_!_P-^&6D^&M/FD$ES%IMMM>X<# >60
MY>5@. 78D#B@#KKM+F2UECLYUBF:-A%*\>\(V."5R-P![9&?45\M?L*?\$N_
M#7[%_P 7/%?QPU+XO7WC7Q'XHM&@DO\ 4-)2V: 23^?<-\LC[VD=8R3QC8>N
M[CZIHH P?BG\.?#?Q?\ AKK_ ,*O&%MYNE^(M'N-.OT &?*FC9&(]&&[(/8@
M&OEG]G'_ (),)^SS^SU\4/V<+;]HR_U?1/B5I1MF,_AY(CI<[1/$]Q&HG(<L
MC(&4XSY2<C%?8E% 'R_\$/\ @EU\,/AC^Q3XE_8B\;>-[[Q-H/B?4YKVYU-;
M-;.>"1A 8VC :0!HY+=)%)R"1@J1D'R+X8_\$,[_ ,*:5)\+O'?[<OCO6?AG
M)=M<2?#[2X7TZVN&+;@)3]IE1@6 +;8E+$9!4X(^_:* /DO]FC_@EC9?LX_L
MQ_$_]F"V^.MWJ^E_$BPG@%[+H"0R:9)-:O;22!1,PERIC.TE<&/K\W'H?[ /
M[%.E_L'?!6^^#>D?$&X\217OB.?5C?W.G+;,C20P1>7L5WR!Y .<_P 73BO<
M:* /F+_@G=_P36T/_@GYJ/C+4-'^+5WXG/B\60D6YTA;7[-]G-P1C;(^[=YY
M],;>^:7X%?\ !-?0_@A^V_XQ_;3M/BU=ZC=>+SJ/F>'Y-(6..V^USQS'$HD)
M;;LQ]T9SVKZ<HH ^.OVQ?^".7PI_:6^*[?M ?#'XI:Q\-/&\\JRWVK:+;^=#
M<3 8\_RA)$\<Q& 7210W4J6)8P_LB?\ !&SX9_L^?%Z+]H3XQ_%W6/BCXTM)
MA-INI:W;&&&VG PMP8WEF>691C:SR$*?F"A@K+]ET4 %<#^TG^S+\'?VLOAA
M<_"7XV>%QJ.ESR":WECD\NXLIU!"SP2#F.09(SR""58,I(/?44 ?FCJW_!NR
M;2YN=)^'G[;6O:5X>NY"9M)N_#7GLRXZ.T5W$DAQ@9,8^G:OH/\ 8I_X)#?L
MQ_L8^);?XE:;+J7BKQC:HRVNOZXRJMF64HYMX(P%C)4D;F+N 2 P!(KZKHH
M^8[/_@FMH=G_ ,%&9?\ @H4/BU=M>2%C_P (O_9"^4,Z5_9_^O\ ,ST_>?<Z
M\>]>V_'?X%?#/]I/X5ZK\&_B[X?74M#U>$+<1!RDD3J0R2QN.4D1@&5AW'.0
M2#U]% 'YPW'_  ;[3VRW'@OPU^W3XNLO EU=>=<>%)-&+B09!^9ENDA9^!\Y
M@Z@<>GVI^S?^R9\%/V6?@K'\!_A;X:VZ(RR'4WOF$L^IRR*%EFN&P [LH"G
M"A0%4!0 /2J* /SYT?\ X(,6_@'XAZIJOP6_;;\=^#?">M.4U/P[HD3Q74]M
MDG[.UW'<(LB@,0/,A? ZAB2:]4_8]_X)._#?]C#]IC6?C]\./B->SV&HZ'/I
M=EX9N=/&+2*22!]QN#(6E8>1R2HR7)XZ5]944 ?C%\+?V6/"7[7W_!77XY_"
MWQ1XFU;0YK;4_$&IZ)KNB7)CN=.OH=4A$4Z]FP'8%3C(8X*L P^P/V9O^"+/
MA3X4?'NU_:-_:"_:&UWXK^(M+N4N='?6K%H4CN(\>5-,TEQ/).T9 9!N55(!
MP<"OI[P;^RU^SW\/?BOJOQS\%?"C2M.\7:YY_P#:VO6\;">Z\Z19)=Q)Q\SJ
MK'CJ*[^@ KY:_;-_X)CZ%^V'^T3X,_:"U+XO7>A3>#[:UACTN#1UN%NO)NWN
M02YE4IDOMZ'&,^U?4M% 'S'^VA_P37T3]L;XZ^!OC?J7Q:N]!E\$"+RM.@TA
M;A;O9="XY<R*4R1MZ'UKL?V]?V--,_;H^!\7P5U;Q[/X<BBUVWU+^T+?3UN6
M)B25-FPN@P?-SG/;I7M=% 'BMQ^PQ\)O%7[&.D?L5?%.2;7M"TK0;73DU-(Q
M;W*RP*!'=1<L(I5(R/O#DJ0RD@_),/\ P;Y7)B7P/??MT^+)/ B7OGKX331"
MH'.<AC=F$2=]_D=3]VOT@HH ^=_C9_P3E^%?Q(_8IM?V'_A]K<WA'P[8R6KV
MM[%:"[EW13><[N&9-[R.69FR.6) [5YG^V+^RM\,/@Q_P29?]FSQ_P#%^]M]
M*\+V\ L]<@T,RW&H72W336]LL".<-+*RQ [L#<":^U*;-!#<*$GA5U#*P#J"
M P((//<$ CT(H \5_P""<?PS\6_!_P#8=^&WP]\=Z5+8:O9>'5DOK&==LEN\
MTCS^6X/*NHD 93R""#TKNOVA/@CX4_:0^"OB3X&^-I[B+3/$FFM:7$]HP$L)
MR&25,@C<KJK $$$KSQ7944 ?&W["O_!)WQ!^Q7XUU;73^U?J_B?1K_0;S3;7
MPT^B-:6ML;AXF:?:;J53(/*49"KGN>U=K_P3I_X)SZ+_ ,$^-+\5Z9HWQ5NO
M% \4W%G+(]SI*VOV?[.LP &V1]V[S3Z8V^]?2E% 'S'X$_X)K:'X'_;_ -9_
M;RB^+5W<W>KFY+>&FTA5CB\ZW6$XF\PDX"Y^X,]*Y;]K;_@D%X.^/?QN/[2W
MP1^.6O?"KQU.P>_U;08&D2>4)L\]5CFADAE9?E9DDPW4KN+%OL6B@#Y*_8N_
MX)->!?V7?BY=?M%_$OXOZU\3?B#.L@A\1Z["8Q;M(NR24*\LKO,R$H9'D;Y2
M0 ,DU]:T44 ?*'[>G_!)'X'_ +</B:+XFOXGO_!_C*.W2";7=-MDGCO(T&(_
MM$#%=[(/E5U=&V@ E@JA?#?#7_!O78ZQXFM-1^/W[9/B3Q=IED^(]/M]&-M*
MT8.=@FFN9_+!Q@A4^A[C](:* /,/BA^QY\ OBS^S=_PRCXA\%I;^#8=.AM--
ML]/?RY-/\D#R987.2LB$9W'=NRV_<&8'XHF_X-^/$\5F_@'2OV]_$T'@>2X,
MK>&7T%V3[V<%1>+"S=]_E#GG;7Z344 ?"4O_  0*_9=T;QCX%\5_#OQ_XKT4
M^&+R*;7_ /3R\VN>6Q<.)4*&TE+;5+Q8 0?*JO\ /7I'[3/_  3%T']I']L;
MP5^UW>_%^\TFX\&'2C%H<>CK,EU]BO7NAF4RJ5WE]I^4XQGGI7U+10 4444
M9/COP+X2^)O@S5/A[X\T*#4]&UJQDL]3L+D92>%U*LIQR.#P000<$$$ U^>O
MBC_@WLT[2/%%YJO[/G[8WB3P?IUZQ#Z=<:.;F18R<[#/#<P;U&3@,A/J<Y)_
M2"B@#Y/_ &"O^"1_P2_8?\52_%'_ (2N_P#&/C.2V>WAUS4K58(K.-QB3R(%
M9MCN,JSL[MM) VAFW:?AO_@FKH?AS_@H9??M_)\6KN6\OC,3X9.D*(D\RQ%I
M_K_,R< ;_N>WO7T[10!\Q?M)_P#!-;1/VC/VSO 7[8E[\6KO2KGP*=*,6@Q:
M0LL=Y]BOY+P9E,BE-YDV'"G &>>E3?\ !1C_ ()P:)_P4)M/"-KK/Q7NO"X\
M)R7SQM;:2MU]I^TB '.Z1-NWR!ZYW=L5]+T4 ?+G[?G_  2[^'_[<Z>'/$9^
M(M_X1\6>&+46NG^(;*R%RLEN&WA)(O,C)*OED99%*EVZY&/)/'G_  0J3XR>
M#XO^%Z?ML^.O%_C&"XB6T\4:U"T\5K9JKAK:*VEN'*[V969S*>8Q@#+9^_J*
M /E?]K__ ()D6O[8'P(^'7P7\5_&^ZTV;P#:I$VM6^A)(VI,MM' 7:,S 1D^
M7N(#'DFM']M[_@G#HG[:7P8\%?!W5/BO=>'XO!LJ/%?V^DK<-=;;808*&1=G
M W=3Z5]+T4 <3JOP!^'GC'X!P_LZ?$S1H/$/AX^'[?2;Z"[CVBY2*-$63Y3F
M-P45U93N1@""" :^#_%7_!NYHT&NWR_!S]L/Q!X;T#46*W&D7N@_:Y#'S\C2
M17,"R@=/F3IZ]_TFHH ^>?V$/^";/P+_ &"](O;CP+/>:WXEU:%8=6\3ZJJ"
M9X@0WDQ(HQ#%N 8J"2Q W,VU=ODOQJ_X(QKXF_:6U3]IO]FW]K#Q)\*M7UZZ
MFNM8CT?3VF9IISNG,,L=S T:R-EF1MXW,2, !1]P44 ?$WPS_P""+?@[X0?M
M+^#_ -IOP9^T5XEN=9\/SI=:XWB*T6^GUVZ9I1<S23F13'YD<OE@;6V[0Q+D
MG/RM^T[\"/!?[3/_  7SU?X&_$&:]BTG7X((YY].N/*G@>/PLDT4L;8(#)+&
MCC((.W!!!(K]@JX"3]EK]GN7XXC]I63X4:4?':XQXG,;?:1BV^S=<X_U/[OI
MTH ^1OAY_P $*O#9^,>G_%#]IO\ :G\3_%2RT=T.FZ)K=DZ;DC;='#/-+<S-
M)"#UC01AOH2M??   P!@#H!110!Y7^U_^Q_\(OVUOA'+\)?BW9W"Q).+K2M5
ML'"W6G7(!42QE@0<ABK*P*L">^"/D+P!_P &_P!X;M_$VD)\<_VL_$OC7PEH
M$Q;2_"0TUK.-(\AC%YC7,PC1L ,(D0L!PRD\?HC10!Y)^U?^Q?\ !?\ :\^!
MH^!'Q TI['3[,QR:!>:2JQRZ3-$A2-X005VA"4*$;2I(X."/E/X3?\$"_"&@
M_$'1/$/Q\_:<UWXA>'_#3K_8WA6YTEK6!(E8,L#L]S-B'(&Z.-4#8ZC.*_0>
MB@#S7]JS]E7X4_MA_!F\^"GQ8L9OL$\J7%C>63A+C3[I 1'/"2" P#,N"""K
M,I&#7QS\.O\ @W]\)Z?XST:Z^-_[5'B'QOX3\/3%M*\(OI36L:Q[@WDF1KF4
M)&Q #K$B%AT*D\?HA10 RVMK:RMH[.SMTBAA0)%%$@544# 4 <  <8KQ']O_
M /8ITO\ ;Q^"MC\&]7^(-QX;BLO$<&K"_MM.6Y9VCAGB\O8SI@'SR<Y_AZ<U
M[C10!\Q?&?\ X)K:'\8OV&?"?[$ES\6KNPM?"IL3'XACTA9)+G[-'(@S"9 %
MW>9G[QQCO7I'A+]EZP\*?L:I^Q_'XQFGMD\"3^&?[=:R"N4DMG@\_P K<1D!
M]VW=VQFO5:* /GK]A'_@GWX3_8H^"7B/X'3^-6\9:;XFU>:\OSJ.DI C1RVT
M5N\#1AW#J5C.<GG<1BOGZ7_@@EHOAGXAZIJGP2_;'\:^"?"&ML5U3POI<+>=
M+;DDFW-TMP@>,!B%\V*0@==Y))_0:B@#Y+_8^_X),?#7]C#]IC5OC[\-_B/?
M3V%]H<VEV?AJZT\8M8I'@;<;@R%I&S!S\HR7/3&*YW]HS_@C1X=^(?QUO_VC
M_P!FK]H_Q)\(?%.KRR3ZM-H$#R1RS2<RR1F*>"2$R'YG =E)).T9-?:U% 'R
MS^PW_P $L_AU^QKXLU?XP:K\1M3\=_$+6(98Y_%FNV^T1"1MTC)%YCMO=@"[
MM(S,!@%06W4_V<_^"5?AWX1?M7ZM^V/\6?C/??$/Q?J#SS6DNI:,EK'97,OR
MM,BB1\E8\Q1KPL:G@<+M^LJ* /D/X??\$F]"^"7[9]S^US\ _C?>^%K>_OWF
MU#P7%H:2V<]O-@W-KN\U<1NX+H-O[I@A4'8*\[^$GP#TB7_@N!XJ^+?PU\2W
MVN6NFZ'=W7CF=]):"UT74+B%((-/68G$TK1XF.,87/7!Q^@%-C@AB9WBA53(
MVZ0JH!9L 9/J< #Z 4 .HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
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
ME8?^"EG[-K_L=?\ !'+P/\ K+4EO+BP\;63>(+V$$)<74T=[/,5SSL$I55R
M=J+GF@#BS^VI_P %H;7X )_P4-G\6>'6^'3ZB/\ BG#HMGL^S&Y^SAS&(_M
M@,W[O?Y_F]#G;\U?=.E_\%$?A]>_\$\&_;ZFT5EM(M :>?0Q<?,-2$WV7['O
MQT-UA Y7.Q@^WM7B^K6NGC_@W[2'8GE_\*EA?&./,\Q6S]=_ZU\CZ1J&M?\
M#@#5+;>_D?\ "WEBQGCR=T,F/IYOZT =O:_MJ_\ !:#Q3\!+[_@H/HGBOP]!
M\.[/47_XIQ-%LRCVR3B%W6-HC.\"RY1G\[S!M8_=!-?<_P *_P#@HCX"\<?\
M$^IOVZM;T?[+#I>B7$VM:)!/DIJ$#&(VJ,1TDEV!"?X94)[UXS\([33A_P &
M_=W#L7RO^%2ZW)C''F>9=-GZ[_UKY'^#FH:T/^" 7Q7MP[_9_P#A;EM%[>5N
MT=R/IYF/Q- '<Z9^VM_P6;^+/P4U_P#;T\!^*- TWX>Z%?2E_#<6CV;*]O$R
MB5HUEB::6*/.'<S!OD?;T./T)_8#_:XT_P#;7_9FT;XW1Z5%I^I/++8^(--@
M<M';7T) D"$\[&5DD4$DA9%!)()KYU_8NM-//_! G4(W5?*E^&7C1IR1U/GZ
MIDGZ8_2L3_@W(N+UOV6_'%I(6^S)X_9X@>F]K&V#_HJ?I0!]D?M?>-_%'PT_
M93^)/Q$\$:J;#6="\"ZK?Z5>K$CF"XAM))(Y K@JV&4'# @XY!KYZ_X(K?M2
M?&_]J']FSQ3\0/VA?B$VNZCIGC2:SM[ZXL[>V$-LMG:R;2(8T7 :1SDC//7
M%>X?M\?\F/?&#_LF>M_^D,U?!?\ P27_ .41'[1'^YXC_P#3!#0!^G=[XV\&
M:;HDOB74?%VF6^G0-MFU":_C2",\<-(6V@\CJ>]6-$UW0_$NF1:UX<UFTU"S
MG&8;NRN%EBD'3*LI(/X&OR _X)#_ /!/CP#^W%\"_$.I_'OQQXEE\+^'O$TE
MMH'AG2-3%O;Q7TEM"]Q>.-K;I"A@1?0(<Y& .T_X(?R^*/@S^WK\9_V2;3Q1
M=WGAW0[35,03O\KW-AJL-FEP$^ZKM'*VXC&<+G[HP ?J%XG\;^"_!%O%=^,_
M%VEZ1%/)L@EU34([=9&_NJ9& )Y' ]:^$/V[OVT?VCOA1_P5)^"WP$^%_P 5
M'L/!7BT>&VUK28=/M)DO5NM:GMYCYKQ-(H>%%7*,, 9&#S7SK^RE\%;?_@L5
M^W/\2?B1^TKXQUB7PYX<#/I^CV%YY9C@DN'CM+6,D$11)'&[-M 9GY)RS$X7
MQX_9;M/V0/\ @KK\$_A!X=\9:OJ_AQ?%/A:]\*Q:U=^?-IME)K)!M V -BSK
M<,H '$G.3DD _:+5-5TO0]/EU;6M2M[.U@7=/<W4RQQQKZLS$ #ZU5\,>,O"
M'C:Q.J>#/%6FZO;*VUKC3+Z.XC!]-T9(S7Y*?\%3_C_X5^.7_!26R_9@_:)^
M+FI>$?@]X,EMDUN73H)IM\SV8NI)C%#'(SRLTB6R,4<1CYL %\^:^)OC=^R;
M^Q)^UEX$^,?_  37^/FN:SX=N95B\=:#J-K>Q)Y"RH'B8W,$/G)+$[E1AS')
M%NR,H  ?MT?$GAT:C_8YUZR%WNV_93=)YF[TVYSFG:GKVAZ*4&LZS:6ADSY8
MN;E8]V.N-Q&>H_.OSW_X+:_L5ZD+&T_X*$? >Y.D^+_!4MM/XCFM'$<EQ!$Z
M^1>H>\T#; >[1X_YY@'Q']C[PI\1_P#@M'^V<?CW^TNUE_PAWP\TZQ6\\.VD
MF()I,$QVR1DEA'-+'--*QSE1Y>>5V@'[ 1R1S1K+%(K(R@JRG((/0@U#J6I:
M=H]C+JFKZA!:VT";IKBYE"1QKZLS$ #ZU+%%%!$L,,:HB*%1%& H'0 =A7Q-
M_P %?_@7\*_BTG@S5OVB_P!MNW^''@32[O==^$FT\R3:T_F S30[)"[RK%A$
M_<2B,L6_C((!]?\ A7XG?#7QW<26O@CXA:'K,L(S-'I6K0W#(/4B-B1U[UI:
MAK>BZ0\<>JZO:VK3$B%;BX5"Y&,XR1GJ.GK7X$?M1^+?V-/@K\6_!GQ(_P""
M:?C'QK'<:+=RS:CJNK++%"T\;1-";=I%24Y5I!(C*%VE!CYF%?6W_!R'?WVE
M^(_@EJ>F3&.YMCKLMO(H!*NKZ:5.#QP0* /TTO\ Q_X$TKQ#!X1U3QKI%MJU
MR ;;3+C4HDN)<]-L9;<V?85KU^3/_!3/_@E3\,/V=?V0)OVDX/B)XIUSXAV.
MJ64GBG7=9U,3+JLUS*L<S[2N4(D<,AW$A1ABQ.X=M\=OVS_C-X*_X(9?#[XB
MV'C&^3Q3XR>#PS-X@6X;[6D*->!Y1)G=YC0V6PR9W9D+9W<T ?H7K/Q*\&S0
M:SH/A[QSI,VMZ=I\\LFGV^H127$#*A.6B!+#!'<5\9_\$.OVOOVC/VL_#GQ&
MOOVA/B5+XCET.]TR/2WETZVM_(65+DR#]Q$F[)C3[V<8XQS7EG[-?_!&CX::
M_P#L0:+^T18_$KQ1IOQ2UCPH/$NAZ[IFIB&&QFE@,]O"$"[BI0HKMNW$LQ!
MP*M?\&U__(H_%S_L):-_Z+O* /TRU?5++0]*NM;U.;R[:SMWGN),9VHBEF.!
M[ U^5GP]_:Q_X*M?\%0OB+XHU+]D#QYHOP_\'>';I$C@N7AB,:R%_)664PS3
M2S,L;%M@$8(Z#C/ZKW5K;7MM)97D"2PS1E)8I%RKJ1@@CN"*_*?XA_\ !(W]
MMO\ 9=^*.L?$_P#X)K_&PSZ5<W+;=&L_$(LKZ%0=ZVLPE(M[I4W<&1@3D$H#
MR0#?^ G[?W[>7[)'[:NA?L<?M_:G9>([+Q)=VEK8ZQ%!")8!=/Y5O=0S0I'Y
MT)ERCB5=ZX8Y&S:WUS_P4]_:P\:_L:_LF:K\6_ASH\%UKLVH6^F:9-=Q>9#9
MR3%LW#K_ !!51MH/!=DSD9!^-O@'_P %;?VS_P!G/X^Z-\!/^"CGPR\N'59X
M;:37KK1DL;^UCDDV)<YA @N;<-G<8U!X8AB5VGV+_@M/^V/X/\#_  \3]B?1
MOAA'XU\8_$FQC2WTN4.4L(WGV6\X6,AY+@SI^Y12/FCW-D81P#YV\2?M0_\
M!3W]G7]FWP'^WWXA_;$\.^+M#\8:E$DG@NXL+<JPD$CF(A(4P5\IED$3(T3<
M D X_5?X7>.(?B;\,O#OQ)M]-ELX_$.A6>II9SG+P">%)1&WNN_!]Q7X5?##
MX!6/[*?[8W@?X,?\%-?".JVW@\%+R"P_M??IT#7(7;,Y0LCP"50DXC93F,DE
M@FU_U_\ V._V^?@'^V?J/B;P[\#M/UN-/!LT<%[+?Z:D5LZ,\B0O"\<CJR.(
M790=K;1RHZ4 ?G?\._VL_P#@KQ^U'^U'X]^"?[.'[04 D\-:EJ-Q'::CINEP
MQQ64-\(%4.]JQ8C?&,')(R2:WO'W_!0#_@K?_P $\_BMX>_X;;33/%'AO69&
M988].T]$NX4*B803V4<9CF0.I D!'S E2#FO$OV4_P!HG]H']FS]N_XL^,?V
M=/V>M0^)&L7MWK%E>:/IVG7=T]M;'5$<SE;5&8 .B+D@#YP,Y(KTWXX^ /\
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
MAGX)_!;]EGP[XPGT'1?$_@ZRU'Q=>P%\S6WEQ0Q1N(_F:)2)G>,9WE4XXP?
M/VE+7_@G-\"O!GAGXH_\$YOVK_%<WQ*\/ZK!YYN-/U"W-W%L;?<*\MI$D;!P
MN4W;61V4J: /W*U+Q'X>T:9;?5]>LK21EW*ES=)&2.F0&(XX-3:AJ>FZ3;_;
M-4U""VBR!YMQ*J+D]!DG%?$'[5G[,MM_P59_X)Y>"OCCI&EVMK\1X/"<&L:+
M.F$2:=HE-U8%CTCD=6V$GY75#D OGX3^$_Q _:<_X*O^*OA1^PKXS\7I::%X
M-M9'U;4C-^^N+> E6NI0Q_?3QVY6",8)W,SL<.[  _<VQO['4[9;W3;V&XA?
M.R:"0.K8.#@C@\\5+6%\,?AIX*^#GP^T?X6_#K0XM-T30K!+33;.$<1QJ.I/
M5F)RS,>68DDDDFMV@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "OR4^,NB?M:?L4?\%:O%
MO[3?@;]E#Q-X_P!-U^2X?1_[(T^YDM[N.ZMT! F@AEV/'(""A7/R]@RM7ZUT
M4 ?FE^W[\$OV@/BY_P %0OV>_C3X6^!GBF[T.PT_PI-K^HV>ASRVVENFMW$\
M\<\BIMC,:.&8,1M!!.*],_X+R?!KXM?&S]F'PIX<^#WPTUWQ1J%KX]BN;FRT
M#2Y;N6*$65VID98U)"[F49/&6 [U]PT4 ?G3^W]_P3X^,'[2O_!/WX*:E\.?
M"UP_CGX;>"M/AN_#-POD7,\,EA:K<PA7QB>.2W0B-L$XD ^;"GSW6OVL_P!N
M3XL^$]!^$'P<_P""6(\,_$!+J"/7_$NJ> HVLI @VO\ N[JS2*V61L$M)(0@
MR 3D,/U8HH Y7X'>%_%O@SX1^'_#7C[^Q?[=MM-C_MG_ (1W3Q:V/VIOFE\F
M(<*F]FP< M]X@$XKYP_X+8_"SXE?&']B67P=\*/ .L>)-6/BO3YAINAZ=)=3
MF-?-W/LC!.T9&3CC-?7-% 'SU_P3[^#]W;_\$Z_!'P5^-WP_N+=IO#%Q8>(/
M#NNV31/Y<DTP>*6-P&7*-T.#@@U\0_ G]GK]K;_@EC_P4-O;;X9_"#QKXS^$
MVO3I!J%[H&AW%\DFERN3%(_DHP^U6K$Y& S!7P LP-?K'10!^8O_  5(^!O[
M3GPF_P""@O@O]O?X)_!G5?&^DZ=!827=II%E+</%<6S.KPRI"K/&CQ%=LNT@
M,S9Y !\T_P""DZ?\%!O^"AGA;PA\24_8;\5>&/#FAW-S;:1X?CM+B^U2XFG1
M&FNIHU@1XH0(8T0LBY+'!;)V_L+10!\>?M^ZK_P48^''P]\%>,/V/M$M]?T.
MRTNWA\;>"SX>AO+VXVA20$D5GDB==T3I$/,7 *]25^(_VH?"'B[]O9M$\$_L
M[_\ !(K6?AKXM?5DFUKQ.-*DL;8(4=7AE/V:" *78.99,/\ N\ ?,:_9^B@#
MXK_:L\$_\%&_V:_V5?AGX9_8XU>S\3_\(=X8L](\;Z.NAPWMUJ @@BC\V!)U
M+21-M=&C4>8%9"N?F*_'/[4NE^+/VZ-)TSP%\$/^"/6M^ /'4^IQ2:MXHAT:
M2QAC #*\<A^S01;68@F2<@KLQ@DY'[-44 ?G7^WQ_P $M_B]\1OV OA1X#\
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
MOI6C:[ UK)]LBO+S$$BR &,R03R!2V "Z$D+DU^A%% 'Y:_LY?M0?\%.]/\
MV?+?]@31/V&->A\366E-X?T_Q]K45S9V6E61!B6:8/!Y3F*,X1UEPP12$<C#
M][_P0%^ GQL^!?AOXH6GQE^$_B+PM)J.H:4VGKK^CS6AN51+H.8_-4;@-RYQ
MTW#UK]#:* ,/XG> -#^*_P -_$'PN\3!_P"SO$>B76EW_EG#"&>)HG*^AVN<
M'UK\GO@1+_P4H_X(\^,_$OPSTS]F74/B-X*U?4A<0W.DZ=<SVL\BC8MS%-;*
MYMW>,*'CE7/[M<#Y<G]?:* /R'UCX._MY?\ !7O]JCPGXX^-_P"S]>_#KP+X
M;:..:;4--GM%BLQ*)9A&UP%DN9Y,; 478N%R% 8GU_\ X*T?L@_M+VO[4G@C
M]O[]F#P1-XMO/"ZV/]I>'[6V:XGCFL[AIHI1"IWS1.&V,L?SJ5R/O97]&:*
M/R!_:]^*7[;W_!5RT\-?!C1?^"<FI^%KG2]1%P?$>LVUT&M69=D@%U/#!';P
MM]YHVWLQC3&2HS[%_P $8OA3^V;^R?\ %WQM^R[\5O@!:6/A>-_[4O\ QC(&
M3S)ROE0+;3A2M[$X0D)\IB_>%BK'RV_1RB@#\T?^"2_[/'QY^%W_  44^+_C
M[XD?!OQ-H.AZKIVKIIFKZOHD]O;73/J\$B".1U"N612PP>0">E?I=110 5^=
MO_!?_P" OQN^.6@_"V#X,_"3Q'XJ?3;S6&U!/#^CS79MA(EGL+^4IV[MC8SU
MVGTK]$J* /S@_P""TW[/WQS^+_[-WP7\/_"KX0>)?$=]I"O_ &K9Z)HLUS+:
M9LX%_>+&I*?,K#G'((KZ#_;]^'7C[QS_ ,$O_$GPW\&>"]4U7Q!<>%-)A@T3
M3[%YKJ21+BT+HL2@L64*Q(QP%/I7TY10!^>?P$_84^)WQK_X(L+^R[XQ\+7W
MA;QB+Z^O])L?$-G):R174>HR3PK(CJ&194RF[' EW<XKSO\ 9%_:B_X*=_L^
M?!J+]AG1OV"/$.H^)M*\^Q\->*]1AFM[/38Y9'99)V,1@GCC=V*R"9$*A1\V
M,G]4** /S<_X(2?LU?'S]GOXF?%NW^-7POU_0TN8;""QU'5M*G@AU!XIKH.\
M+RHOF+RK9'9@>]>1_LJ6W[:7_!*']IOQ]X1M_P!BWQ7\1-*\4S+;V%SH5M<>
M3=+#-*UM<1W$4$R8*2MOC8!EW#.TJ0?U_HH _*O]E_X$_MKW_P#P67TC]I7]
MH7X ZMHT.L"]O]3O["PFFTS35FT2>."U:["^6SHIBA8AO]8".O%>C_M5?%S_
M (*!?!']I'6;+XZ?LM0?'CX'Z@9_[$TC2O"%O<K;1NX:)I2MO+(D\0S$?- C
MD#$K@D%?T-HH _([]EO]D?XG?M%?\%$_#'[2WPS_ &-=4^!?P[\,:A;:A=VN
MIQS0"YD@+,1"DJ1EFF;:C+$OEH@8DY^]U7_!4CX9?M(_";_@I9X'_;-^&/P#
MU[QOHVFV6G3)'HMA-.C7-M)*'MI6A1VA9D*E6*D'=QN*L!^H]% 'Y7?\%?/
M?[47[9_P>^ ?Q*\,?LL^,4UB33=;G\1^&]/T*ZN9M%DE:P"13 1!D+"-RN]5
M)"GCBOTQ^+%C>ZG\+/$NF:;:23W%QX?O8K>"%"SR.T#A54#DDD@ 5T%% 'YA
M?\$M/V3/VF-'_89^/_P@\0?#W7_!7B7Q;9-:^'?^$BTV:P,\CV4L8VF15(4L
MP0N/N[LUPO\ P3R\<_M7_L:^$=?^ 7A__@F)X@UCXDWVL2OI?C"]TE[:*#?&
MD:K<7+PE3;QLI=2LRQN)" 5SO/Z[T4 ?G!_P0D^ 7Q[_ &;O&WQA\%?&_P"#
MWB/0)-27338:GJ.CS16=XUI)>QR^5.RA),_:$9=I.Y<D<5F?\$-/V<OVG_@]
MX)^..G>*?AYKG@'7=;TW2$\*:CXL\.S0Q&Z2/4@)/+E5?.2-Y(BZCLP'&17Z
M944 ?E=K/[0?[6>@SZ[\-/\ @I-_P3!NOC-J:WKG0/$NE^$HMD<6T*((;BVM
M)%:/(+AU82+YA# \!>Y_X(D_L6_'#X/?$OQW^TC\3?AG>> -&\263V/ASP9J
M#2"XCB>Y$^YTD_>(L2HL2&4!VW.2 .6_1BB@ K\T?^"-7[/'QY^$G[9WQ:\7
M?%'X-^)O#NE:IIUTNFZCK6B3VT%TQU%7 C>10')7YN#TYK]+J* /SA_X))_L
M_P#QR^%W[>?QL\;?$GX0>)-!T?6!?_V3JFKZ+-;V]YNU3S%\J1U"OE/F&"<C
MFD_:*_9_^.>O_P#!</P-\9=#^#_B6\\)63:7]K\2VVBS/8P[() ^Z<+L7:2
M<GC-?H_10!^9?_!07]FO]J3]F/\ X*!Z9_P4A_9>^&%YXSLKEHI-;T?3+22X
MEMYA:?8YXWBB!D\J6#D2J&V.6+ 87=Y7_P %$[[_ (*)_P#!1;P/X9^(:_L/
M^*?"WA?0;][?3?#<-I<WNIW=S/&6ENWC\B-U@18416:-1F7@ON.W]B** /SJ
M_P""H?[!'QM^-WP2^$GQO^!_A.74?%_P]\.VEMJOAIX0;B> 1PR+LC?&]XI4
M<-%U82' )7:>%U_]J;]N3]H63PW\,OV=O^"75KX$\3)>H?$VN>(? T;V# *4
M9";NSC2VBW'S"6=I/D"J3SN_4^B@#XC_ ."F_C7]K7P1^RYH?[+O[.'P:\0^
M(?$WB718[7Q;XC\#^$YUT^PMMH2=(/*4I"T[[P$R3'%N)P61J^5_BU_P2=_:
M>_8?\(_"K]IC]EE=:\1?$+1I4?QCIFAVK7;6UZQ:16ACC!:6W",UM*.0P ;&
M)&"_L)10!QG[/?Q1U[XR_!W0_B)XK^'&M>$=7O[,?VMX<U[3Y;:XL;E?ED3;
M*JEDW E'Q\RE3P<@=G110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %86M_$[X?>&_'.B?#/7O%UE::_P")
M([E]!TF:;$]\MNF^8QK_ !;%(8^@KC?VT_B_XF^ 7[*/C[XP^"[9)=7T'PW<
M7&F>9'O6.?&U)&4\,J,P<@\$*17XV?"?]E_QU^V'XM^%?BW4?VEM4U/QU\5%
M\7327ES?-++I%YI<!DMH9'+[T,K!6)&-L4J%5XY /WBHKP/]BC1_VGO@%^RC
M+I_[;GBFRUG6?#"W4\>JZ=J$E[/-ID<0D43NZ*9)E(E7.6W*J98MDU^8?_!3
M?_@I7\8/VT?#5C>_#'P-KWA3X2Z7KWDV6IW.8YM8U+RG(\UT.P%(]Y$*,VW=
MN=B60* ?MQ17E'@CQIK'@3]AS2/B'I6FMJ6H:-\*+?4;:S;+&ZFATQ95C..2
M690/7FOS%_9"_96^,G_!3[X:>//VKOB[^VSK^DZ[HVL7%O80?:6,-HZ6R7'F
MN!*HM[?]X%58PH41N1TQ0!^R-%? ?_!%[]L_XH_$']C_ ,>^(/V@?$5_K=K\
M-)7FM]?U"0R7$UDMJT[PO*W,K1B,D,Q+;95!. *^;OV:O@1^U-_P6+U'XA_M
M%^-OVG-8\-/HM]]G\*Z59O*UI#=,C2I;HJRH((8U\I2R@NQD+')!W '[&T5\
M'?\ !"[]LGXG_M!?#'Q5\%_C9XBNM6U[P%=6_P!CU3493)=3V4WF*(Y7.3(T
M4D+#>Q)*R("3MS7WC0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% &!\4A\-IOAYK&G?&"\TJ#PQ?6$EGK;:W=)#:O;S#RF21W(4!@^W
MJ/O>M?D%\</^";NL_!+]JWX<+_P3C_:,DO;KX@6>NZAX,U"#65C^Q_8("\T$
M=_;L5F$B-)$,JHR-LC$%F'ZS?M&_ KPC^TS\#_$OP)\<M(FF^)--:VEGA +V
M\@8/%,H/!:.1$< \$H,U^2-W^Q5_P4A_94_:>^%_[.GP]^+VAS:C.GB0_"S6
M%NQY%E!+:C^T7Q+$SV[&(AMF'"R%F0EB6(!]M?\ !(+]LOXC_MK? WQ7X*_:
M)LK?4?$'A"_33=6O)+-$74K6XC<*)XE 3S 8YD? "L-O&22?)_\ @X=\/:!X
M3_9:^&_ASPMH=GING6?C%X[2PT^V2&&!!9RX5$0!5'L!BOIS_@F[^PAIO[!O
MP4N?!=[XE36_$VO7_P!O\3ZQ"C+%),%"I#$&^8QH-V&;YF9W8A<A5XK_ (+
M?L5?&G]MOX0^%/!7P3723>Z/XD>^O/[6OS;IY1MWC^4A6R=S#B@#U32?BYIG
MP$_X)_:7\:-8TYKRW\,?"BSU%K)&VFY,6GQLL6<'&Y@%SVSFOS'_ &-O^":7
MC_\ X*+?#?QU^TSIOQ9TWX:P>(-=NK33_"GAO1G73[AT579)$69?*MPT@0+A
MR,,V.@;]7-+^!VF^)_V5++]G+XH6ZRV]WX"A\/ZZEK+ZV:P2F-R.H.2K8X(!
MKX \ _L$_P#!8']B>U\0_!W]D+XK^&]3\%Z[>R3VU]/-!%-:NRA//$=RA,$Q
M15!\LR+\H(Y' !G_ /!.SX[W_C7_ ()R_M"_LB7'@'2]*UKP'X ULQ7>C6^P
MZIY]E=1.T^,[YUDB"F3^)608&S)]'_X-R;FV?]E;QO9HX\Z/X@N\B]PK6-J%
M/YJWY5ZS_P $P_\ @FPG[$_PM\1V_P 4M=LO$/BSQQL7Q*]J&>UBMD60+;(T
M@#29,LC.Y"[BP&,("?FQ/^"97_!2_P#8V\8>,O"W[ _Q4TB;P1XV'ER&^NX(
MKNTB^<)O$\9V3(LCH)H3EAAB%(4* 97_  ;^12ZE^U#\:/$.G9:P^PQKO7[N
M9+V5H_S5'Q^-?JU7S+_P2\_X)_)^P/\ !B_T'Q)KMIJOBWQ->1W?B2^L WD1
MB-2L-M$6 9T0-(=Q ):5N ,"OIJ@ KR_XK?LE?#7XQ>+G\:>*-?\46]V\"0F
M/2?$<UM#M08!V(<9]3WKU"B@#Y&^+_P/\-?LU?%CX8:K\.?$WB62;5_%3V]T
M-6\17%RFQ82PPC-M//\ >!%>X_\ "?>+/^@M_P"0(_\ XFN!_;@_Y*-\&_\
ML=9O_28UTU?(\0XG$4,3!4YN*MT;75]CCQ,I1DK,V/\ A/O%G_06_P#($?\
M\31_PGWBS_H+?^0(_P#XFL>BO ^OX[_G[+_P)_YG-[2IW9L?\)]XL_Z"W_D"
M/_XFC_A/O%G_ $%O_($?_P 36/11]?QW_/V7_@3_ ,P]I4[LV/\ A/O%G_06
M_P#($?\ \31_PGWBS_H+?^0(_P#XFL>BCZ_CO^?LO_ G_F'M*G=FQ_PGWBS_
M *"W_D"/_P")H_X3[Q9_T%O_ "!'_P#$UCT4?7\=_P _9?\ @3_S#VE3NS8_
MX3[Q9_T%O_($?_Q-'_"?>+/^@M_Y C_^)K'HH^OX[_G[+_P)_P"8>TJ=V;'_
M  GWBS_H+?\ D"/_ .)H_P"$^\6?]!;_ ,@1_P#Q-8]%'U_'?\_9?^!/_,/:
M5.[-C_A/O%G_ $%O_($?_P 31_PGWBS_ *"W_D"/_P")K'HH^OX[_G[+_P "
M?^8>TJ=V;'_"?>+/^@M_Y C_ /B:/^$^\6?]!;_R!'_\36/11]?QW_/V7_@3
M_P P]I4[LV/^$^\6?]!;_P @1_\ Q-'_  GWBS_H+?\ D"/_ .)K'HH^OX[_
M )^R_P# G_F'M*G=FQ_PGWBS_H+?^0(__B:/^$^\6?\ 06_\@1__ !-8]%'U
M_'?\_9?^!/\ S#VE3NS8_P"$^\6?]!;_ ,@1_P#Q-'_"?>+/^@M_Y C_ /B:
MQZ*/K^._Y^R_\"?^8>TJ=V;'_"?>+/\ H+?^0(__ (FC_A/O%G_06_\ ($?_
M ,36/11]?QW_ #]E_P"!/_,/:5.[-C_A/O%G_06_\@1__$T?\)]XL_Z"W_D"
M/_XFL>BCZ_CO^?LO_ G_ )A[2IW9L?\ "?>+/^@M_P"0(_\ XFC_ (3[Q9_T
M%O\ R!'_ /$UCT4?7\=_S]E_X$_\P]I4[LV/^$^\6?\ 06_\@1__ !-'_"?>
M+/\ H+?^0(__ (FL>BCZ_CO^?LO_  )_YA[2IW9L?\)]XL_Z"W_D"/\ ^)H_
MX3[Q9_T%O_($?_Q-8]%'U_'?\_9?^!/_ ##VE3NS8_X3[Q9_T%O_ "!'_P#$
MT?\ "?>+/^@M_P"0(_\ XFL>BCZ_CO\ G[+_ ,"?^8>TJ=V;'_"?>+/^@M_Y
M C_^)H_X3[Q9_P!!;_R!'_\ $UCT4?7\=_S]E_X$_P#,/:5.[-C_ (3[Q9_T
M%O\ R!'_ /$T?\)]XL_Z"W_D"/\ ^)K'HH^OX[_G[+_P)_YA[2IW9L?\)]XL
M_P"@M_Y C_\ B:/^$^\6?]!;_P @1_\ Q-8]%'U_'?\ /V7_ ($_\P]I4[LV
M/^$^\6?]!;_R!'_\31_PGWBS_H+?^0(__B:QZ*/K^._Y^R_\"?\ F'M*G=FQ
M_P )]XL_Z"W_ ) C_P#B:/\ A/O%G_06_P#($?\ \36/11]?QW_/V7_@3_S#
MVE3NS8_X3[Q9_P!!;_R!'_\ $T?\)]XL_P"@M_Y C_\ B:QZ*/K^._Y^R_\
M G_F'M*G=FQ_PGWBS_H+?^0(_P#XFC_A/O%G_06_\@1__$UCT4?7\=_S]E_X
M$_\ ,/:5.[-C_A/O%G_06_\ ($?_ ,31_P )]XL_Z"W_ ) C_P#B:QZ*/K^.
M_P"?LO\ P)_YA[2IW9L?\)]XL_Z"W_D"/_XFC_A/O%G_ $%O_($?_P 36/11
M]?QW_/V7_@3_ ,P]I4[LV/\ A/O%G_06_P#($?\ \31_PGWBS_H+?^0(_P#X
MFL>BCZ_CO^?LO_ G_F'M*G=FQ_PGWBS_ *"W_D"/_P")H_X3[Q9_T%O_ "!'
M_P#$UCT4?7\=_P _9?\ @3_S#VE3NS8_X3[Q9_T%O_($?_Q-'_"?>+/^@M_Y
M C_^)K'HH^OX[_G[+_P)_P"8>TJ=V;'_  GWBS_H+?\ D"/_ .)H_P"$^\6?
M]!;_ ,@1_P#Q-8]%'U_'?\_9?^!/_,/:5.[-C_A/O%G_ $%O_($?_P 31_PG
MWBS_ *"W_D"/_P")K'HH^OX[_G[+_P "?^8>TJ=V;'_"?>+/^@M_Y C_ /B:
M/^$^\6?]!;_R!'_\36/11]?QW_/V7_@3_P P]I4[LV/^$^\6?]!;_P @1_\
MQ-'_  GWBS_H+?\ D"/_ .)K'HH^OX[_ )^R_P# G_F'M*G=FQ_PGWBS_H+?
M^0(__B:/^$^\6?\ 06_\@1__ !-8]%'U_'?\_9?^!/\ S#VE3NS8_P"$^\6?
M]!;_ ,@1_P#Q-'_"?>+/^@M_Y C_ /B:QZ*/K^._Y^R_\"?^8>TJ=V;'_"?>
M+/\ H+?^0(__ (FC_A/O%G_06_\ ($?_ ,36/11]?QW_ #]E_P"!/_,/:5.[
M-C_A/O%G_06_\@1__$T?\)]XL_Z"W_D"/_XFL>BCZ_CO^?LO_ G_ )A[2IW9
ML?\ "?>+/^@M_P"0(_\ XFC_ (3[Q9_T%O\ R!'_ /$UCT4?7\=_S]E_X$_\
MP]I4[LV/^$^\6?\ 06_\@1__ !-'_"?>+/\ H+?^0(__ (FL>BCZ_CO^?LO_
M  )_YA[2IW9L?\)]XL_Z"W_D"/\ ^)H_X3[Q9_T%O_($?_Q-8]%'U_'?\_9?
M^!/_ ##VE3NS8_X3[Q9_T%O_ "!'_P#$T?\ "?>+/^@M_P"0(_\ XFL>BCZ_
MCO\ G[+_ ,"?^8>TJ=V;'_"?>+/^@M_Y C_^)H_X3[Q9_P!!;_R!'_\ $UCT
M4?7\=_S]E_X$_P#,/:5.[-C_ (3[Q9_T%O\ R!'_ /$T?\)]XL_Z"W_D"/\
M^)K'HH^OX[_G[+_P)_YA[2IW9L?\)]XL_P"@M_Y C_\ B:/^$^\6?]!;_P @
M1_\ Q-8]%'U_'?\ /V7_ ($_\P]I4[LV/^$^\6?]!;_R!'_\31_PGWBS_H+?
M^0(__B:QZ*/K^._Y^R_\"?\ F'M*G=FQ_P )]XL_Z"W_ ) C_P#B:/\ A/O%
MG_06_P#($?\ \36/11]?QW_/V7_@3_S#VE3NS8_X3[Q9_P!!;_R!'_\ $T?\
M)]XL_P"@M_Y C_\ B:QZ*/K^._Y^R_\  G_F'M*G=FQ_PGWBS_H+?^0(_P#X
MFC_A/O%G_06_\@1__$UCT4?7\=_S]E_X$_\ ,/:5.[-C_A/O%G_06_\ ($?_
M ,31_P )]XL_Z"W_ ) C_P#B:QZ*/K^._P"?LO\ P)_YA[2IW9L?\)]XL_Z"
MW_D"/_XFC_A/O%G_ $%O_($?_P 36/11]?QW_/V7_@3_ ,P]I4[LV/\ A/O%
MG_06_P#($?\ \31_PGWBS_H+?^0(_P#XFL>BCZ_CO^?LO_ G_F'M*G=FQ_PG
MWBS_ *"W_D"/_P")H_X3[Q9_T%O_ "!'_P#$UCT4?7\=_P _9?\ @3_S#VE3
MNS8_X3[Q9_T%O_($?_Q-'_"?>+/^@M_Y C_^)K'HH^OX[_G[+_P)_P"8>TJ=
MV;'_  GWBS_H+?\ D"/_ .)H_P"$^\6?]!;_ ,@1_P#Q-8]%'U_'?\_9?^!/
M_,/:5.[-C_A/O%G_ $%O_($?_P 31_PGWBS_ *"W_D"/_P")K'HH^OX[_G[+
M_P "?^8>TJ=V;'_"?>+/^@M_Y C_ /B:/^$^\6?]!;_R!'_\36/11]?QW_/V
M7_@3_P P]I4[LV/^$^\6?]!;_P @1_\ Q-'_  GWBS_H+?\ D"/_ .)K'HH^
MOX[_ )^R_P# G_F'M*G=FQ_PGWBS_H+?^0(__B:/^$^\6?\ 06_\@1__ !-8
M]%'U_'?\_9?^!/\ S#VE3NS8_P"$^\6?]!;_ ,@1_P#Q-'_"?>+/^@M_Y C_
M /B:QZ*/K^._Y^R_\"?^8>TJ=V;'_"?>+/\ H+?^0(__ (FC_A/O%G_06_\
M($?_ ,36/11]?QW_ #]E_P"!/_,/:5.[-C_A/O%G_06_\@1__$T?\)]XL_Z"
MW_D"/_XFL>BCZ_CO^?LO_ G_ )A[2IW9L?\ "?>+/^@M_P"0(_\ XFC_ (3[
MQ9_T%O\ R!'_ /$UCT4?7\=_S]E_X$_\P]I4[LV/^$^\6?\ 06_\@1__ !-'
M_"?>+/\ H+?^0(__ (FL>BCZ_CO^?LO_  )_YA[2IW9L?\)]XL_Z"W_D"/\
M^)H_X3[Q9_T%O_($?_Q-8]%'U_'?\_9?^!/_ ##VE3NS8_X3[Q9_T%O_ "!'
M_P#$T?\ "?>+/^@M_P"0(_\ XFL>BCZ_CO\ G[+_ ,"?^8>TJ=V;'_"?>+/^
M@M_Y C_^)H_X3[Q9_P!!;_R!'_\ $UCT4?7\=_S]E_X$_P#,/:5.[-C_ (3[
MQ9_T%O\ R!'_ /$T?\)]XL_Z"W_D"/\ ^)K'HH^OX[_G[+_P)_YA[2IW9L?\
M)]XL_P"@M_Y C_\ B:/^$^\6?]!;_P @1_\ Q-8]%'U_'?\ /V7_ ($_\P]I
M4[LV/^$^\6?]!;_R!'_\31_PGWBS_H+?^0(__B:QZ*/K^._Y^R_\"?\ F'M*
MG=FQ_P )]XL_Z"W_ ) C_P#B:Z3X?:_JVN?:_P"U+OS?*\OR_P!VJXSNST ]
M!7!UV'PH_P"7_P#[9?\ L]>GDV+Q=7,H1G4DUKHVVMF:T)S=5)L["BBBONCT
M HHHH **** "BBB@ HHHH *BEL+&>[BOY[*)YX P@F>,%X]PP=IZC(ZXZU+1
M0 4444 %%%% !1110 4444 %%%% 'SS^W!_R4;X-_P#8ZS?^DQKIJYG]N#_D
MHWP;_P"QUF_])C735\7Q-_O</\/ZLX<5\:"BBBOFSE"BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *[#X4?\O_\ VR_]
MGKCZ[#X4?\O_ /VR_P#9Z];(_P#D:4_G_P"DLVP_\9'84445^A'I!1110 44
M44 %%%% !1110 45F^,?%_AKX?\ A/4_'7C+6(=/TC1["6]U.^N#A+>")"[N
MV.<!03QSQ7YI_$/_ (.#KQOC%HNJ?"3X!ZO>_#JT?4$UA]0"QWFKB.)2LL#*
MK+;B'<)'4ERRLH;R\YH _3ZBO._V6OVGOA;^U[\'-/\ C9\([Z>33;UWAN+6
M\C"7%C<ICS()E!(#KD'@D%65@2"#7E__  4%_P""F7PF_8%TS2+/6M$/B?Q+
MK$^8?#-CJ2030V@#;KJ1BK[$W (H(RY+8^XV #Z4HK%^&_C&/XB?#O0?B!#8
M-:IKNBVNH):M)O,(FA60(6P-V-V,X&<5\9?M!?\ !=OX!?"OXCZE\-_A-\+M
M?^(DFB-(NL:MI$Z0V4?EG$AC?:[2JAR"^U4/9F!S0!]ST5X]^Q;^VW\'/VYO
MAC+\1OA/)=VTMA<BVUO1-315NM/F*[@&"DJR,,E74X8 CAE91\X_'C_@O5\!
M/A?\3M4^'?PT^$OB'QU;Z#,\>LZ[IES'!:H4;;(T1*N945OEWG8I/W200Q /
MN^BO,OV3/VM/A#^V;\)(/B_\'M1N&M#<-;:AI]]&$NM/N5 9H95!(#896!4E
M2&!!]/3: "BBB@#YY_;@_P"2C?!O_L=9O_28UTU<S^W!_P E&^#?_8ZS?^DQ
MKIJ^+XF_WN'^']6<.*^-!1117S9RA1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !17F_P"TE^U_^R_^Q]X5B\:?M.?'3PYX*T^X++9MK>HK
M'+=LHRRP0C,D[ <E8U8CTKQ+X1?\%U_^"2?QP\71>!? /[;?A@:E<3"*WCUZ
MSO=(CED)P%26_@AC8DD  ,<D\9K:&'Q%2'/&#:[I.Q2C)JZ1]:T4V.2.:-9H
M9%='4%64Y!!Z$&G5B2%%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %=A\*/^7__ +9?^SUQ]=A\*/\ E_\ ^V7_ +/7
MK9'_ ,C2G\__ $EFV'_C(["BBBOT(](**** "BBB@ HHHH **** /,?VS_@Y
MX@_:!_94\>_!KPE=)%JNO^&[BWTPR2;$>X WQHS?PJS*%)[!B:_'/]G_ /:D
MA_9>^,'PI^$G[87P1U+2](^$X\56&M62Z;F[OK?68'C998)2@=5=V!<,0\1
M4':-W[+?M9_$;XJ_"']G3Q7\4/@IX,M/$/B30=-^VV6C7JR,ERB.IF&(R'9A
M#YC*JG+,H'>ORY\2_P#!1_\ 9F_;+^+7P3^(?[8GA;2X+3PUI'B^U^(FAKI,
MTUHWG6@^PM;@EV9G94"G=NCF4ME1M:@#]&_V:!^S/XQ_9>U+4O\ @G_%X=TG
M1];M;O[!/H=G]D6#4S (PUPFSS$F4B+.]2VT*>1MS^6?_!3#_@G3K'[(?P-\
M/_&+XN_&;4?'/Q&\7^+3#KVK3S2-!'&+:1]B-*3),Q8#,CXR% "+@Y^K/^#=
M[P-XPT/X'_$#QU>:=>6GAGQ!XHA'AF*[)_>>1&ZS2KV8?/%&7'!:%A_"<0?\
M''G_ ";G\/\ _L=I/_2.6@#Z-^(WCG5OAK_P2LOO'.@7+P7^G? ])+&>,X:&
M<Z6JQN#ZJQ#?A7YN?\$J_P!K_P <_LU?!OQ;H_P$_8OU[XH>*+W5_MOBK4].
M618+#2T@1;>%C%#*SL9/M3;3M&#QN^;;^GC_  MNOC=_P3D@^$%@Z+=>)?@Y
M#IUF\C85)Y=+5(F)] Y4_A7P!_P1J_;=_9__ &*/!OQ%^!_[4NKS^#=;@\1&
M^#7^ESN\K1Q"&6T(B1F66-HLA6 SYAQR#0![?^QW\>/V-]8_87^-GQK_ &./
M@ZGP[\5:-X*U"Y\5Z"E_+/+#<165U+:R+*[?O(MWF[&"H00X*K@9YW_@W8^'
MWA;4_P!FGXDZ_JNBVUS)K7BH:3J(GB#">UCLXV$39ZJ?M,F1T.XUYU_P2/\
M@]XB_:/O_P!I[QWX>T6;3/"?C_0=3T'2?M";(C/?-<.L8QP3#'(N['W?-7UJ
MC_P2"_;K^"O["_PS^*'P8_:>U6[\-ZSIFO-J-IIEQITSS7=PD(@FM%"(P257
M@C&'V@[\YPK$ '1_\&]&L7OACXV?&7X1V]R[:?'#;7$<;-D*]O<SP[A[E9!G
MUVCTK]4J_,K_ (-W_A;XIO!\3_VE_$.FR06FOWMOINE3,A"W#J\L]T5SU56>
M%<CC.X=5-?IK0 5P?Q!_:>^ 'PJ\1MX2^(GQ4TO2-22%)6L[N1@X1N5;@'@U
MWE9>K>"/!>O7AU#7/"&EWMP5"F>[T^.1R!T&YE)Q0!\L_M,?M$?!/XO?%+X2
M:?\ #3XCZ=K,UGXQ=[J.S<DQJ\)12<@=6(%>M5P_[9'A#PEX>^)7P>FT#POI
MUB\GC.42-9V4<18"W) )4#.#S7<5\7Q-_O4/\/ZLX<5\:"BBBOFSE"BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
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
M7,_MP?\ )1O@W_V.LW_I,:Z:OB^)O][A_A_5G#BOC04445\V<H4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
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
MVX5]\1,=NTT;EC&1)EP &!4Y!'["T5O2S/'TI)JHW;N[K\2E5J)[GXA>$O\
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
MXNU'1Y(?#^I1>'+6U:WN"1M<3)'NC[\BOIVB@#Y2_P""8?\ P3_LOV4OV?\
M^P/C)\-?"C>.KUK^TU?6]-@CFFNM.GD5A;/<;%=XR%7*'CY1Z5\SI_P3*_X*
M7_L;>,/&7A;]@?XJ:1-X(\;#RY#?7<$5W:1?.$WB>,[)D61T$T)RPPQ"D*%_
M46B@#YE_X)>?\$_D_8'^#%_H/B37;35?%OB:\CN_$E]8!O(C$:E8;:(L SH@
M:0[B 2TK< 8%?35%% !1110!\\_MP?\ )1O@W_V.LW_I,:Z:N9_;@_Y*-\&_
M^QUF_P#28UTU?%\3?[W#_#^K.'%?&@HHHKYLY0HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBJ^G:OI6L1R3:1J=O=)#.T,K6TRN$D4X9"5)PP/!!Y% %BBO)?V[/VGK_]
MB_\ 9'\<_M2Z=\,I_&+^"=(&HR>';?4A9M=1"5%D/G&.3RPB,TA.QN(SQ7!?
M\$VO^"AUG^W!^PG:?MH?$SP,GP]CC?5'U_3[RYD>WT^VM)9&$XGD1#)&;81R
M&3:!DN!TK94*KH^U2]V]OGZ;CY7RW/CS_@ZO_P""@_\ PSU^R38?L;> -<\K
MQ5\6]W]M^1)B2T\/PN/.SCE?M$H6$=FC2Y':C_@U0_X*#_\ #0O[)-_^QMX_
MUSS?%7PDV_V)Y\F9+OP_,Y\G&>6^SREH3V6-[8=Z_#__ (*B_MP^(/\ @H;^
MVYXU_:7U.2=-*O[[[%X1L)SS8Z/;DI:Q;?X6*YE<#CS99#WH_P""77[</B#_
M ()Y?MN>"OVE],DG?2K"^^Q>+K" \WVCW!"746W^)@N)4!X\V*,]J^P_L=?V
M/[&WO_%_V]V^[0[O8?N>7J?U)_\ !3[_ (* Z3_P3/\ V6+K]J'7/A)JGC.U
MM=:M=.DTO2[Z.V,33[PDLDKJVR/>JH2%8YD7CK7;?L4_M.:-^V=^R?X!_:DT
M'0#I,'C;PY!J,FDM=^?]AF8%9K?S=B>9Y<JNF_:N[;G:N<#M8/\ A7?QD\#:
M?K MM*\2>'M8M;;4=.DG@2YMKJ)@DT$ZAP58?<=6[<$5MHB1((XT"JHPJJ,
M#TKX]RI>Q4>7WK[WZ=K'#=<MK:GRG_P6!_8F_::_;O\ V9]+^$'[*?[1=S\-
M?$%OXNM[W4]537[ZQAO=-$$\<UK+]C!:8%I(I%1AM+1#)%>Y_LQ?#;QO\&OV
M<O GPB^)/C2+Q'KWA;PCI^D:MX@AA>,:C-;6Z0M<;79F!?9N.2>2:[JHKZ_L
M=+LIM2U.\BMK:WB:2>XGD")&BC)9F/  '))Z4.M4E15+HG?[_,.9N-CD?C9^
MSI\!/VD]#T[PQ^T'\'/#7C;3-)U5-3T[3/%.CPWUO#=K')&LPBF5D+!)9%Y!
MX8UU6BZ+HWAO1K3P[X=TFVL-/L+:.VL+"R@6*&VA10J1QHH"HBJ H4    "O
M'O@__P %%OV(_P!H+X_:E^S%\#?VD/#?B[QGI&C2ZIJ.F^'KHW4,5M'+'$Y%
MS&# [J\J QI(SKR2 !7Y:?M4?\%*_P#@X&_:\_:(\=?LG_L-?LJ3?#W3/"'B
M6]T/5O%6FVBSE?(E:-I'UC4%CM(5=%$B^6B2[6RK-Q730P6)Q$N1OE2U]YV2
M3ZZEQA*3MMZG[4>)?$6C^$/#FH>+?$5V;?3]+LI;N^G$3/Y<,:%W;:@+-A5)
MP 2<< FOR/\ VN/^#MW]GGPKJ,GP_P#V$/@7KOQ/UV>7[/8:WK4,FG:;)*QP
MABMPIN[G)P-C) 3GAJXC_@GA^T;\)/\ @C/J_P 1OB+_ ,%(O^"L'AKXH^,/
MB!:6@U;P!X-O[SQ;?6]Y;M(4>:^W%8Y=DTL;12*B'*GS"%7/BO@+_@M_^RU\
M O%,_P /_P#@B7_P1YL4\4:E)+]D\2^)-/EU+6;G>3E!;6AEN2F6XC6["+G
M0"O2PN61C4E>FZB5K/X8^=V]=/*]S6%)7>E_P1^BW[%=]^WU_P %4O\ @FI\
M6OA;_P %&?A)J/PL\1>-3>V7A'5(=(?2]EE/;(UM(MHTIN5$%PI+>:1YL;*N
MYOF-?,/@[_@C7_P04_X):P1>)O\ @HQ^UCI'CKQ79()9=$\1:J+>(,!G=%HM
MBTEU,/42M,AR/E%<%_PS#_P=+_\ !4'][\:_BU=_!OP??_>T^]U9?#L7DG[T
M;6>G*U[+Q_#==3P6&./:OV9?^#0K]D_P9/%XC_:U^/\ XL^(VI%O-N=-T6-=
M'L)'/++(P:6XEY_C66(GK@=*T<J.%YE*NHIN_+3U_P#)N@[QA>\K>2.?^*W_
M  =7?L-_L\^'(?@W_P $[OV.M2UZULS]GTB!;&#PYHZ,3A3!;P))*X)Q\ABA
M)/&1UKS7_AH;_@Z?_P""H7R?"3X9WGP7\'W_ $OK/3%\-1"(_=E6ZOV>_D&#
M]ZV.#R0O Q^O_P"S1_P3T_8B_8ZMHXOV:OV8/"'A2YB38-6L]*67477&,/>S
M;[B0?[TAZGUKV2N)X_!47^XHIOO/5_=L9^TA'X8_>?B?\%?^#2+Q1\1_$8^)
M?_!1;]NC7/$^LW1#:G9^$3)<3RGK\VIZB'=^O>W!Z\\U^@O[+O\ P1+_ ."8
M?[(WV>_^%W[)WAV^U>VPR^(?%T1UF]$@_P"6B/=EU@;_ *XK&/;DU]5T5RU\
MSQV(5IS=NRT7X$RJU);L2...&-8HHU5%4!548  Z "EHHKA,PHHHH **** "
MBJVJZQI.A63:EK>J6UG;I]^>ZG6-%^K,0!7F/C;]O']A[X:^8/B%^V1\*]#:
M+.^/5OB#IMNP/IM>8$GVQFJC"<_A5QI-GJ]%?)/C;_@N[_P2)\ !CKO[=?@Z
M?9U_L076I_E]CAES^%>0^-O^#I?_ ()"^%2XT+XI^+?$NS[IT3P->1[_ *?;
M%@_7%=,,!C9_#2E]S*5.H^A^BE%?D9XV_P"#Q#]A730R?#[]FOXK:NZ\ ZI!
MIMBC?0I=3''U7\*\8^*?_!X)\5/B%X>U/P=^RS^P8UCX@N[1XM)UO5O%3ZF;
M25AA938PV:>85ZA3+@G&01D'IADN93_Y=V]6E^I2H57T/M;_ (+@_P#!<'X?
M?\$R_A])\*OA5<6.O_&G7[$MH^CN1)!H,#@A;^]4'\8H3@R$9.$!)_(C_@D7
M_P '!_[0/[&7[0.I_P##5?C?7?'WPY\?:Z]]XP^WW#7-[I5[,WSZE:[C]/,@
M&%=5&T*RC/P-\:O%_P 7?'_Q7U[QO\>]5UF^\8ZKJ+W7B&[\0JXO);A_F)D#
M@,IP1A<  8    KEZ^LPN382CA'2FN9RW?\ EVMT.V%"$869_;_\,OB;\/\
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
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1159-9TB35GT&/5;9KZ. 3260G4RK&3@.4SD*2",XQD4 6:**^
M&_\ @E;_ ,%@_%/_  4<^/OQ;^#'BS]E^[^'G_"N)8X+2635WU#[7-'<S6]W
M'++Y$4<<B.L)$:[CAWR3MS6L*%6I3E.*TC:_S&HMIM=#[DJO::QI.H7ESI]A
MJEM/<63JEY!#.K/ S#< Z@Y4D<@'&12:UI%AX@T>[T'583):WUM);W,88KNC
M=2K#(Y&03R*^,_\ @CI_P2 F_P""3NC^/+!OVD]0\>GQ[?6EW=07.A+9Q6,E
MOYX#)^^E:1W6?#N2N[RU.T4X0I.E*4I6DK65M^^O2P)*SU/K3XM^-=3^&WPI
M\3_$71?"LVNWF@>'KW4K31+><12:A+! \JVZN0P1I"H0-@X+9P>E?+O_  1N
M_P""J&J?\%6/@YXN^*^L_ J7P$^@>*A8Z?IW]H27L=S9/;QO',+AH8ED?S!.
MC!5PNQ?6OL)E5E*L 01@@]Z;;V]O:6Z6MK D442!(XXU"JB@8  '  ':B,Z2
MHRBXWD[6=]N^G6X)KE:L<%^U9\"K7]IW]FCQ[^SQ=:Y)I8\:>$[_ $B+58@Q
M:QEG@9([@!2"QC<J^,C.W'>O(/\ @DM_P3??_@EQ^R_/^S:/CE>>/([CQ)<:
MR-1NM%6P2V>:&&-X8HA+*1'NAW\N3ND8]Z^GZ*2KU8T723]UN]O,.9\MNA'=
M6MK?6SV=[;1S0RJ5DBE0,KJ>H(/!%?$G_!??P3^W+\9/V$M2_9__ &'OA4=<
MNO&-P8/'6LR>*-,TN+2=#B7S9U:2^N8 ?.(6-MNX"(3!MNY<_;]?E)_P=H_M
MA^-O@-^Q;X5_9T\ :Q/IT_Q=URZ@URZMY"KR:38QQ/<6P((($LMQ;!NS1AT.
M0Y%=.6PG4QU.,$F[]=M-?+;<NDFZBL?SDZ]HUYX<UN\\/ZA-:23V-U)!-)8W
M\-U SHQ4F.:%GCE3(X=&96&"I((-&@Z+>>(];L_#^GS6D=Q?7,<$,E_?PVL"
MN[!09)IF2.),GEW9549+$ $U4HK])UL>H?U>_P#! ?P3^W+\&_V$]-_9_P#V
MX?A4=#NO!UP(/ NLQ^*-,U2+5M#E7S8%62QN9P/)):-=VT&(PA=VUL>\_M8_
M\%"_V+?V'M'.J_M1?M$^'/"LQA\VWT>>[,^I7*?WHK*$/<2#/&Y4*CN17\RO
M[.'_  7G_P""C_[,WPU^'?P-\#_&F0^"/A[K,%U#HC6<)FU.SCN1/_9T]VZ/
M*+;&Z((A4+&VW!"J!T/[=_Q9_:]_X+??M%Z;^T/:_LF:!X#M[?P_%I-EJM[K
M::78W%JDLLJ/<:EJDT%M/(OFN R!#MP-IPN/D:F25*F,=2NU&#NVUI^>U]^M
MCB=!N=Y;'ZO_  J_X.I/V6_CI^VCX2_9W^'OP>UO3O FM:A+:ZU\2_%M_%9+
M8?N7\J;[,N\);F81AYI94V(Q9D&#C\ZO^"YO[5'A?]H_]M?Q9I#_ /!4B^\6
M?!8-:3:%X3\$)/JD=JY@02Q1V\9MM.N-DRR$3/<F38R_?(-<U\&O^"/_ .R'
MI]O#J'[<7_!9_P"!OA:Q27SI_"_PV\30>(KM2>&1FB=8H),#JB3#@=>WUO\
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
MVNX?3S)QE45AM+,PQ_3W17IX;.,7AL*Z,7Z/JO3^M#6-><(<J,+X9?#+X?\
MP8^'^D?"KX5>$+'0/#F@6,=GH^CZ9 (X+6!!A451^9)R222222:W:**\MMMW
M9B! (P17/:Y\)/A3XF#+XD^&/A[4 PPPOM%@ER,8P=R'MQ70T4)M; >7:Y^P
M]^Q7XGW?\)+^R!\+M1WG+?;OA_ILV><\[X3W /X5QNN?\$F_^"87B$'^T/\
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
M/^#GB#]H']E3Q[\&O"5TD6JZ_P"&[BWTPR2;$>X WQHS?PJS*%)[!B:_'/\
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
M\0F.X^)?QX^%GAN!\;HK2^O]0N$]<H+6./\ *0U[_P##;_@S.^']GY<_Q?\
MV[=8U#.#+:^&_ \5GM]0)9[F;=]=@^E.6$R"E)-UF^ZWO]RT#DPZ^T8GQ-_X
M/,YR)+3X-?L'(IY\J_\ $WCLG\X(+4?I+6'^VY_P=P>*O&'PO\-:5^P=X)U3
MPEXLPC>,-3\8^'[.YM<F ;TLU%Q*2%FSAY5!9,94'BOK?X;?\&FO_!*[P3Y<
MGBZX^)/C%Q@R+KOBV."-CW %C;P,!_P(GWKW_P"&W_!"'_@D5\*C&WAK]A;P
M?=F/H?$IN=8S]1?S3 TWB>'Z<DX4F[?<_6[_ $!RPRV1_.O\3?\ @O5_P5X^
M+)D7Q%^W%XKL4DR!'X8@M-'V#T5K&&)A]<Y]\U8_;M_;$_X*:_\ !43P!X6\
M6?M _!/5]2\.?"W2KR6SUWP_X#ODM[:":.W%S<W=TWF!LBUB9G=@H(8\9-?U
M/_#?]F3]FWX-^7_PJ']GSP/X5\K'E?\ "-^$[.QV8Z8\B-<5V6HZ=I^L:?/I
M.K6,-U:W4+0W-M<Q!XYHV!5D96R&4@D$'@@T_P"W,+3FI4L.E;9Z+\D/ZQ!.
MZB?PTT5^TW_!;+_@VE_X5+X2UW]KW]@2SU#5+&&_O=3\7_#:*V0G3K229Y1)
MI:1J"8($(1K<[G"IO0X_=J?\$3?^#:7_ (6UX2T+]KW]ONSU#2[&:_LM3\(?
M#::V0'4;2.9)3)JB2*2()T!1;<;7*OO<X_=M]!_;&!^J^WYM-K=;]K'1[>GR
M<QX9_P $S?\ @V>_:0_;X_9_T[]IGQA\:['X7^']?E<^&K>_\/37U]J-F./M
MGE"6$1PNV1'E\R*N\ (R,_V/X)_X,TO@98;/^%C?MP^+-5QCS?[$\(VNG[O7
M'FS7&/UK]G-.T[3]'T^#2=)L8;6UM85AMK:VB"1PQJ JHJK@*H   '  J:OE
M*V>YC4FW&7*NUE^=CDEB*K>C/R\\$_\ !I#_ ,$O?#)63Q'XM^*WB-AC>FI^
M*;2&,GV%M9Q,!_P(_6O7O!/_  ;=_P#!&[P2$D7]D9=6G3_EXUOQCJ]QN^L9
MNA'_ ..5]RT5QRS+'SWJR^]K\B'5J/J?//@G_@DI_P $P_AZ5?PS^P-\)Q)&
M/W<VH>"+.]D7W#W$;L#[YS7KW@GX'_!7X:A%^'/P@\+: (_]6-$\/VUIM^GE
M(N*ZBBN:=:M/XI-^K(<F]V%%%%9B"BBB@ HHHH **** "BBB@ HHHH ****
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
M$L4D8,"-+M,/DJ$*_-EW))R .NCP_C)27M;175W3M^/ZEQPTV]=#^LJOA/\
MX*E?\%E-?_X)O_M-_"?X#R?LW-XAT3XB303ZEXR?7'C73;1;Y(+U4MD@8RR1
M0NDNXR*O[Q00>M?C?_PJG_@Z'_:\O6TK5K#]I;R[C/F6FN:O=^&;-_\ >2YD
MM8?S%>C^#O\ @@I_P<-_&SX7_P#"B/BI\:'\+>"<-O\ "WC3XQ3W6FR[KD73
M;[;3VNT<F<"7YE/SJ&Z@&M*658/#S3Q%:#757_'OIZ#5&$7[TD?M+\3?^"P/
M_!+OX0^:GC7]O#X9^;!GSK;1_$\.IS(1U!CLS*X/MC-?G'_P42^-/_!)GXQ?
MM3?#3_@L]X:_X*4PR+\.X=+^R?#'P/IT%SXAUNYLM6E(<V=]=6TMK&RMLD$D
M0WPIYBG:06\P^%W_  9J?';58M_QJ_;;\):$X_Y9^%O"MUJP/MNGEL\?7::^
M@/AE_P &=7[%>C6JGXO?M0?$WQ!<J<EM!CT_2H6]BDD%TV/HX^M.E')\'+FA
M7DWL[+=/=:K]07L8.ZD<W\3?^#RKX":89%^#7[%'B_6QR(7\3^)[72_Q*P1W
M?Y _C7!?&/\ X/"K[5O@#$OP&_9<70_BM=A%O[_Q#*E[HUHBS,=L8CDCFN#Y
M1X+B,*[-\K#K]P_#C_@V4_X([^ ;6*/5?V=-4\47,6,7OB/QMJ;.Q]6CMIX8
MC]-F*^@?AY_P2T_X)M_"N*%? W["?PHM9;?'DWD_@6RN;E2.A\^:-Y,^^ZLG
MB<AIVY*,G;N_^"_R%S8=;1/YW?$O_!P__P %M?V@=4/AWP'\=+NS>X.$TGP)
MX$L?-)/0*XMY)Q^#UWGBKXM_\',_[;WP%TW]FG5O@O\ %ZY\.*(VEU:?P'/I
M5UJ;([.KS:G<)&S\M@A9%4@ $$5_2KH>@:%X9TY-'\-Z)::?:1?ZJUL;98HT
M^BJ !5NG+.</&WLL-%6V_I)![>*VBC^6WP#_ ,&QO_!8WXFZA]L\6_!?1/#'
MVD[WOO%?CJQ<L3W86DMQ)GZKFOH/P!_P9[?MF>)A;Q_&[]L/P!H\,$:QPKH=
MMJ&KM#'_ '56=+4#'H#BOZ#Z*B?$.83VLO1?YW!XFHS\:?AI_P &;'[-NE;/
M^%Q?MG>.-=P?G_X1KP]9Z3D>WGM>8_6O?_AI_P &LG_!(KP&D:^)OAMXP\9L
MG5_$OC>YC+_46'V8?D*_1>BN.IFV8U-ZK^6GY6,W6JOJ?-'PV_X(U_\ !*[X
M41QIX2_8+^&LIBQY<NN^'(]5D4CH=]]YS9]\YKWKP/\ "WX9?#&R_LWX:_#K
M0O#UMM"_9]#TB&T3'IMB51BMVBN.=:M5^.3?J[D.4GNPHHHK,04444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 ?C7^TU_P:>_$#]J[]H'Q?^T=\
M4O\ @IIY^O>,==GU*_V_!\E(=[?) F=8R(XXPD:#LD:CM7.^$_\ @R._X2?[
M1_QLU\CR-G_-&-V[=G_J,C'2OVVKL/A1_P O_P#VR_\ 9Z^ERC,\=6QM.C.?
MNZZ62V3MLCJHU:DJBBWH?CC^RK_P9Z?$?]C_ /:.\%_M._"3_@JI]G\0^"/$
M%OJFG[O@J0D_EM^\@DQK63%+&7B<=TD8=Z_;ZBBOLSN"BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@#YY_;@_Y*-\&_P#L=9O_ $F-
M=-7,_MP?\E&^#?\ V.LW_I,:Z:OB^)O][A_A_5G#BOC04445\V<H4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%9OBWQGX/\
M :%-XH\=^*]-T33+<9N-1U>_CMH(A_M22$*OXFO/_@7^VW^R/^T]XTU[X??L
MZ_M$>%/&^J^&;>&?7(?"^K)>QVT<K.J-YL1,;Y9&'RL<8&<9&:4)RBY):(=G
M8]2HK\7OVHO^#P'P1X"\0ZMX$_9[_8LU^^U'3;R:SGO?'VN16 MYHG*.&M;4
M3E\,I&/.0_RKR_\ 9W_X.\?'Z>$OB1??M@?!6#4]5O(+./X;:)\-XSID$!/G
MK=_:;NYFGDC(4P,DBI(=RD;%!R/4CDF92I\W)^*O_7J:^PJVO8_>;7=?T+PO
MI,^O>)M:M-.L;9-]S>WURL,42^K.Y 4>Y->?Z1^V'^S1XN^&WC/XL?#'XS>'
MO&>B^ +2YG\4W'@S5X-3^R&"W-P\),#LIE\L9"9SGCK7\G/A7X7?\%1?^"HW
MB8ZAH.@_%[XRSK=%&U74;J]U&TM)/[KW5PWD6_!'#.@ Z8%=U\8_^"<7C/\
M8I\ W?@O]N/]M/PQ\/[J\DCNY_@WX0U5_$NNS7"K\DES96DJ64!"D[9)[I,C
M(7->A_8%"#Y)UO>[)7_"]S3ZO%:.6I^GO[0'_!XU^S_H'GZ?^S%^R7XJ\32C
M*1:EXRU>#280?[XB@%R\B^Q:,D=<=*_,C_@JI_P65^*O_!6+PGX#L/C%\*]#
M\.:KX$UG6YK27PS<3"TN+*]CT\11/%,TC&:-[24F4.%83 "-=I+<+^QW_P $
MS/VM/^"A?B)?#G[(/P U74-'@NC'J'CK7W^RZ=;]0?-N&Q"GRX;R(_.F!S@N
M,5]E?M_?\$7?V5?^"//[ US\3/VD/B')\2OC7XZE_L/P1I%E))9:/I$[+NNK
MY(U(FNC;Q9VR2%8_-EAW0\UZM*AE& Q$(P7[R^FK;U[ZV6ALHT:<DEN?E)11
M17NG0?JU_P &_P!_P0F^ _\ P4I^#'C#]H+]JC4?&UAHVF>)8=)\*1>&M3@M
M([]HX?,NVE,MM*SJIEMU5HV0 B0')''ZO_#_ /X-PO\ @CC\/X[:1/V1H]9N
MK<#=>>(/%NJW1F([O$;H0GZ",#VKF?\ @V<_:L^&7[0O_!,;PU\-?"&A:;HV
MN_"R5_#_ (GTG3HA&)'+--#?E1R3<HY=W/WITG]*_0FO@,SQ^.^NSASN*3V3
MM^7?<\ZK4J>T:O8\>\ ?\$]/V"OA5<6][\-_V*OA1HEU:A1!>Z;\/M.BN%(Z
M$RB'>6_VB2?>O7XXXX8UAAC5$10%51@ #H *=17D2G.;O)W,6V]PHHHJ1!11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %=A\*/\ E_\ ^V7_ +/7'UV'PH_Y?_\ ME_[/7K9
M'_R-*?S_ /26;8?^,CL****_0CT@HHHH **** "BBB@ HHHH *PM;^)WP^\-
M^.=$^&>O>+K*TU_Q)'<OH.DS38GOEMTWS&-?XMBD,?05QO[:?Q?\3? +]E'Q
M]\8?!=LDNKZ#X;N+C3/,CWK'/C:DC*>&5&8.0>"%(K\;/A/^R_XZ_;#\6_"O
MQ;J/[2VJ:GXZ^*B^+II+RYOFEETB\TN R6T,CE]Z&5@K$C&V*5"J\<@'[Q45
MX'^Q1H_[3WP"_91ET_\ ;<\4V6LZSX86ZGCU73M0DO9YM,CB$BB=W13),I$J
MYRVY53+%LFOS#_X*;_\ !2OXP?MH^&K&]^&/@;7O"GPETO7O)LM3N<QS:QJ7
ME.1YKH=@*1[R(49MN[<[$L@4 _;BBO)_!7Q+T_X2?L.:/\7_ !$'GMO#?PJM
MM6O%+_-*L&FK*RY/\3;<?4U^8G[-_P"S?^UE_P %7O"'Q#_:Y\8?M1:YI.JZ
M-J<UMX4TJS>7[,UZD"W'V>,+*HM8562% 4#-F0L<D'> ?LG17P5_P1S_ &_O
M%GQ>_9-\<2_'OQ)<ZOJ7PG@^U7FLW4F^XNM+:"66,RL>9)%-O.N\\D!,Y.2?
MF?\ 9J^!'[4W_!8O4?B'^T7XV_:<UCPT^BWWV?PKI5F\K6D-TR-*ENBK*@@A
MC7RE+*"[&0L<D'< ?L;17P=_P0N_;)^)_P"T%\,?%7P7^-GB*ZU;7O 5U;_8
M]4U&4R74]E-YBB.5SDR-%)"PWL22LB D[<U]XT %-EECAC:::141%+.[' 4#
MJ2>U.K\ _P#@[_\ ^"M/Q/\ !_C'3_\ @F!\!O%]UHNGW&@Q:K\5K_3IVCFO
MTN-WV;2BZD%8?*'G2KTE$T*D[5=6 /L__@HC_P %M/\ @E7X'^-'PY\*ZG^V
MGX5OKSPQXNEEU\>'(KK5XK%?*:,[Y;&&:,,'^4J&RIZ@5]#?LW?M??LP?M@>
M%9/&G[,?QT\-^-=/MRJWC:'J*R2VC,,JL\)Q) Q'(615)]*_BJKTG]DO]K3X
MY_L2_'/1?VA/V>_&<^C:_HTZDA78V]_;[@9+2YC! F@D  9#[$$,JL/&S7*5
MF%IJ5I)678PK4?::WU/[4Z*\W_8__:3\*?MA?LO^!?VG?!5LUOI_C7PY;ZDM
MF[[FM)67$UNS?Q-%*LD9(X)0D5Z17P4HRA)QENCSFFG8****D HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BN8^*7QK^#7P.T(^*/C3\6O#/A#30"3J'B?7;>P
MAXZ_/.ZK^M?/7@#_ (+9_P#!,[XM_M(^'/V4OA%^TO8^*?%_BB\EM=.CT/3;
MJ6R$B0R38:\,8@.X1E5V.Q+%1WS6L*%:I%RA%M+LAJ,FM$?5E%?E?_P5._X+
MZ_M4_L?_ +8&L_L/?LO_ +"(\9>)]/T^RO-.URZNKS4$U"*YMTE#1Z?9Q)*0
MKL\1/G<M&V .*YG]@']JS_@X!\>?M5>&_CW_ ,%#_!FG?#/]GZVBO1XLM/$=
MKI?ANWM/,M)1;R;+R3[>2L_E'#L5VAL\UV++,1[#VLG%)JZNU=^B[LT]E+EN
MS]6OB!\3?AM\)_#\GBSXI_$+0_#6E1?ZW4_$&K0V5NG?F29E4?G7D'P2_P""
MH/[ O[2?QWD_9K^ '[3OAWQCXPCTJ?4FL?#S2W-N;>%HUD9;M$-NY!D4[5D+
M$9(&%)'\XO[8'Q[_ &!?VW_^"AWQ@_:,_:/^*7Q.\+^$'U"#_A%?#/@_3K/7
M;S4Y4007(@NY;E+:VA:2(SH0'4K/@9V9;8_9'_:8T[X9?%M=6_X(U?\ !,CQ
MAK_CFTM+BPMO''C+6M2\3:G#!<1-#*YL],2TL;<LCD9E295^\",9'IK(HJC>
M3?-:^R23\VWKYV-/J_N^9^DG[=W_  <Z_$SX#_M.>,/V-_V;OV"]1\1^,?"G
MB"YT@WVMZK)*+J2)RJRPV-G$TDD<B[74^:C;67*@GCSW]CK_ (.'OVP_ _QN
M\8>,_P#@JY#X8\%>"[?P+>RZ!X&T[3H;#5%UQ)(7MH?L4DDVI*)HQ/$'E7RE
M9E9BH!-?/W[*?_!NO_P6O^*>F:O%\1?C')\(/#_B^:.X\5VNN>.KBXN]7VA@
MCSVMB\BSNH=\+<2(1N/0G%?;_P"S+_P:-?L%_"_[/JO[1_Q,\8?%"_CP9K-9
MAHNF2>O[JW9K@?A<].U;58Y%AJ3IMINVZNWZIWLBG]7BK'X3?M+_ +0NH?M>
M_M!^)OBGXFUWX@:Z-?\ &%]<^&O"^K:Y)J-Q8V-Q.[P6J7<ID8O&&6/:L.&"
M#!&<#Z9_8/\ ^"6?_!;GQ;8:W'^RQ\#?%7PRT3QKH;Z/XD\0^*+O^Q!?Z9)*
MD@1Q=%9G7*+A[:')&>S$'^DG]G7]AW]C[]DFQ6R_9M_9L\'>#G6/RWOM'T.)
M+R9<8_>W)!FEX[N[&O,?V]_^"Q7[!W_!.G3Y[+XZ_%R&]\4I%OMO ?A@+>ZQ
M,2,KOB#!;92.0\[QJ><$GBB6>5:UJ.%HW[7U_!?YA]8<O=A$_-;]FC_@SE\Q
MH-:_;,_:]=V)S=:#\-],[YR<7]ZO/_@+[YKV?XQ_"[_@VX_X(C:8T'Q!^$_A
MSQCX^MX-T/AS5%'BC7KA]N59X+EC;6.1R'=8%/)7)KYP\7_\%3O^"VW_  6Z
M\37OPG_X)M?!C4?AE\/6G-MJ/B73+LPR1QGK]KUJ146%L?-Y-H%FQD#S17TI
M^P-_P:K?LR_!F^M_BI^W7XRE^,'C%Y?M-QHP>6#0H9R=S%P2)[\[N=TI1&R=
MT)J:]6M!7Q]=K^Y#?YVT7]:A)R7\27R1\R:Y_P %,?\ @M;_ ,%J]6G^"_\
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
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "NP^%'_+_P#]LO\ V>N/KL/A1_R__P#;+_V>O6R/_D:4
M_G_Z2S;#_P 9'84445^A'I!1110 4444 %%%% !1110 5%+86,]W%?SV43SP
M!A!,\8+Q[A@[3U&1UQUJ6B@ HHHH **** "BBB@ HHHH **** /GG]N#_DHW
MP;_['6;_ -)C735S/[<'_)1O@W_V.LW_ *3&NFKXOB;_ 'N'^']6<.*^-!11
M17S9RE;6=%T?Q%I5QH7B#2;:_L;N(Q75G>0++%,A&"KHP(93W!&*^$_VO?\
M@V[_ ."7?[5OVK6](^$4WPR\07&6&L?#>9;&(OU&ZR97M2N>NR-&.3\PX(^]
M:*VHXBOAY<U*33\BHRE%Z,_!W6?^"%?_  6V_P""9&JW'C3_ ()>_MDS^+-$
MBE:?_A&[+4AID\YZYETV]>2PN2!QDR%F.<(,XK:^%G_!T)^V?^R3XN@^#_\
MP5;_ &%-4M+Z+Y9=7T?3)M%U)D4X,WV.[_<76>S120QG@C@U^Y%<Y\4_@_\
M";XX^$9_ /QH^&6@>+-#N?\ 7Z1XDTB&]MG.,9,<RLN>>#C(KT?[4A7TQ=)3
M\UI+[T:>U4OC5SYW_9"_X+7_ /!-;]M?[+I?PD_:6TC3M?NL*OA3Q@W]DZCY
MA_Y9HEP0EPW_ %P>0>_!KZKK\P/VOO\ @U*_X)Z?'G[5X@_9]U37OA!KDVYD
M31YCJ.DESU9K2Y?>HST6*:)1V7ICY3_X8F_X.6/^"1/^D_LK?&"Z^+_@'3O]
M5H.E79UB%8!TC_LJ^'GP$XY6R+'_ &^:/J>7XG_=ZO*^T]/Q6@<E.?PNWJ?N
M5X_^$7PH^*]C_9GQ2^&'A[Q+;;=OV?7]%@O$V^FV9&&*^>?B?_P1'_X).?%[
MS#XN_8/\ VQESO;PWISZ*3GOG3W@(/N*^"/V;?\ @[<T?P_XA_X5;_P4:_9&
MUWP1KUG((-3U7PG!(R02]_.TZ\*3VX'4@2S-SPM?IK^RK_P43_8D_;:TY+S]
MF+]I/PQXHN6B\R31H;WR-2A7&29+*<)<1CKRT8'!P>*QJX;,L!J^:*[IZ?>A
M.%6F?&WQ0_X-//\ @E7XZ$C^#4^(O@IV),2Z!XN6>-#V!%_#<,1_P+/O7SYX
M[_X,Y=*TG4/[?_9[_P""@&LZ/=0$M:1:[X.620'M_I-M=1%/J(S7[:T4Z>;Y
ME3VJ-^MG^8*M574_GZ^//_!NA_P7/O?AM=?"6U_;BTWXD>"YY8Y3X3U+XE:N
MD,CQ-NC8VMY$;=6! ((?((IOPOTO_@Z/_P""?GP@TCX!:;^RM9>,? /AFW:W
MT7P])X8T3Q! D!=G*C[!)]I<%F8_O"7Y^E?T#T5O_;5>4>6K3C);ZKKWT*]O
M)JS29_,Q_P %*/\ @K!_P4>^/O[&5[^QI^U5_P $\K3X6:8VK6EZ^H:9X%U7
M1(X!;RF78+>[+HH9SN)##OZU1_8__;J_X(%:)^S[X2^$7[:/_!,KQ)K/B71]
M*6VUSQOX=N4:74[C<2T[B.]M74<XQEB  .:_IU(!&",@]0:\O^)_[$7[&GQL
M\Q_B_P#LG?#?Q/)+G=/KO@FQNI<GN'DB+ ^X(-;0S?#>R]FZ3BKW]V36O]>8
MU6A:UK>C/Q/_ ."DW_!5;_@EA\2O^"0MO^P-_P $\YM2TV*W\0:>MAX%\3:?
MJ$'V;3TNY+V5FO)Y&5\3[#AK@N2XQD XQOV+?^"(O_!'C]K3]FGP3XQUW_@I
M/#X=^)VM:!!<^*?"5A\0-"F33;UQEH$M)4^T*%X4AI'RP;#=A^GOQ0_X-TO^
M"/?Q2$D]U^R+::'=29VW?A?Q%J-ALSZ11S^3^<9KYT^*'_!G]^P+XE,MU\+/
MCO\ $_PO.^=D-W>6.HVT?IA&MXY#^,I_"NBEF.!A1]G2J3@[MMM)W;[]RE5I
MJ-DVB+_@L%\&OAS_ ,$[O^#?'P_^R5X6^+.K7>B0>*=+TBP\3Z?91/=7;/?W
M&JEQ&L\:9+1.>).V:^7_ -F#_@AS_P %??BC^SMX+_:._91_X*>ZAH&E^,_#
MMMK.DZ=J_C;7M%N8()T#QAQ9&X0,5(/RL1R.:['Q9_P:+?M0_#V">']FG_@H
MU9-%*Q86FK:)>Z.I/8,UK<7 ;_>V#Z4W1/V!/^#K[]CW1K3P[\"/VGX?&&F:
M/;I;Z;I]AXYLM0@B@C4*D<<>O0Q@(J@ +@    5K2K4H4.2AB(N3DVW)6O?U
M149)1M&2^9];?ML>,?VZO^">W_!#WPUHGB#]JZQM?CG9ZK8:9??$76O$2W"7
M5S)?37#J+K4(\29MT,8,JCY5QQ@5\>_#S]K/_@[:LO VD_$S1/!-K\1?#>K6
M$=[H^K:?HGAG4H+^U=0T<J-ICJSJRD$'KZ\UY=^W3\4/^#@OX]_!RV^!'_!0
M+_@G=JWQ!\,Z7KL6K_:=,\"WHDBNHH9H5E^T:#.L6 D\H^=63+ XR!CTW]F[
M_@Z:\0?L<_"[PA^S)\7_ /@FUJ.D:;X,\.66B::8/%LUI=);6D*0(6@N[,EW
M*H"S&1<MD]Z*>%K0P[Y*<*LG)M[/1]G=/Y H24=$FS]!/BU^W;_P4$_9V_X)
M"^%_VLO%O[,?_"1?'&Z-DGB#P'!X:O0MN9KMQ(7MH&::+9;J"26(#$$\'%?#
M=M_P=Z?'KX=3+9_'K_@F:;64MM8Q^+[K3&![X2XL),_3(^M<C_P4Q_X+V_L>
M_P#!47]FG0O@7X/^(/Q,^!6N:7XSMM<N=>O?#:WMO*D5K=0BW673[WSU!:X5
MRWE'_5 8.>/OS]AG_@LU_P $G[/]F;X?_ S7/^"@/AO4]8\-^"]+T?7-4\90
M7^G'4+N"UCBFG>34H8]WF2*SY9C][DUS+"K#T.:MAG)MO1<RLNFJNK$<G+&\
MHW^\[WQ;_P %C?A%\+/^"8?A+_@I[\7/A)XDL- \5)9F/PKHL]O>7\)N9WCC
M"O*T$<GRH9"<K\M?A+_P7J_X+&Z/_P %3OBIX4TWX)0^)M'^&/A32!)::%XC
MMXK>XGU>5F\^ZEC@FEC;;'Y<49W$J/-(QYC"OV+_ ."O7QZ\8?'+]D#PWX5_
MX)9>'_A+\=M1D\:V\FL^&;>+0?$]@-*2TNBS"SF=T9O/:WPT8W@;L8!-?CW_
M ,%[O^"?'CK]ESQ?\+/VCI?@IH_@_2/B9\-=&;Q/I7A3P_'INF:/XLALHQJ-
MFEM"/+MMQ E5.K$S8SL8UT9+2PD:ZG*-IMRY5?;RMZ7U*H*"E=[GY\5;T'7M
M;\+:Y9>)_#.KW.GZEIUW'=:??V4[136T\;!TEC=2"CJP#!@000"*J5;T'0=;
M\4ZY9>&/#.D7.H:EJ-W':Z?864#2S7,\C!$BC102[LQ"A0"22 *^L=K:G:?T
MP^-_^"DG_!2#XF?\$9/@I^V/^P;\'+/QU\2?&=Q;Z3XPL!X7N-1EB>);NUN[
M^""WD18Q]LL^3(&15G&1QFOE/_AA;_@ZE_;]_>_M!_M.S_"[0[SF2QN?&$.D
M(T)_@-KH2,S\?P3X)(^8]ZJ?MV?#/X-_ ;_@F9^SI^QD?^"L?AKX4>)OAMI]
MV_Q.\,:#XJO[^:[GOS]KFB>PT<2-/+#=M(D9G$:!9)&WC)SZ%\6O^#N[P-IV
MF:=\._V3_P!EOQ'\0_$[6D-HVO>)673(+V\" --#8VQN)I$=P2(S)&P!QVY^
M0I4J\(WPE*+O*6KCJE?35Z;'$E)? NYT7_!?CQ+^R7X!^#'[,G[)_P#P4@\/
M?$+Q+K$'V6>?QWX"OK/3[2XDM[>"RU-I);M)Y K-+%<F-8MQ"QCS5))'TCHW
M_!*[_@@W_P $Y/#EOXX^)_PI^&.CI&F^/7OBYKZ7[7##HT::E*T1?I@0Q@YQ
M@9K\\O%FF?\ !S3_ ,%=-;TKQ)J'P1T[X5Z)8/*^AZKJ'ARV\.OI(FV;I+:X
MO!+JT>\(F6@.&"*3G"UZE\%?^#1;4/''B#_A8G_!0/\ ;EUWQ1J]VP?4[3PA
M$[RRMWW:EJ'F/(#TYMU/OSQ$X4J&'C3JXCEM>ZBV[W?9:(32C%)RMZ'B/_!9
M/_@JW^ROX]_;?^$7QV_8S_:]\7:EH?PNCL)+GPAX;TB]319KZPOS<P%(+F6V
M@VNA\EY45_ECC #J..]N?^"[_P#P7/\ ^"A]P^C?\$W_ -A4^&='N7*0>(;+
M0)-7>W8G #ZC?+'IZ?\  XAT//%?I;^S)_P0\_X)<_LH?9[_ .'/[)7AW5-6
MM\,NO>,HVUJ[\P?\M%-V72%O>)$'M7U=;6UO9V\=I:0)%%$@2**-0JHH&  !
MP !QBN:IF. A",*=+FY=$Y_Y+?YDNI3222O;N?@SIO\ P;C_ /!7/]OKQA'\
M4_\ @I;^VS::/-<0)#):7&HRZ]?V\*NT@@6"%HK.% SN0(I2H9V.WGG[)_9E
M_P"#6K_@EW\"?L^J_$GPSXC^*6K189IO&.LM%:"0=TM;,0J5_P!B4RCGOQC]
M(**YJN;XZK'E4N5=HZ?EK^)#K5'I>WH<I\(_@5\$_@#X;7P=\#/A%X9\':4N
M/^)=X8T."QA)'0E844,?<Y-=7117FMN3NS(***^:OV[_ /@K=^PK_P $ZM)E
M'[0OQBMCXB\CS+/P/X?"WNLW.1E?]'5@(%8=))VCC..&SQ54Z52M/D@FWY#2
M<G9'TK7S/^WE_P %=?V$_P#@G3I<L?[07QAMY/$@A\RT\#>'0M[K-SD97,"L
M! K#I).T2'!PQ/%?E3X[_P""OG_!9S_@M!XMOO@S_P $NO@3JOP[\$F8VVI>
M*-.G"W449ZFZUB0)%9DKAQ%;XGZA7EKZ"_8-_P"#5'X!_#758OB]_P %"/B)
M<?%OQA/-]KN]!M;B:'1DN&.YFFD8BXOVW<[G,2-DAXFZUZJR_#X1<V,G9_RQ
MUE\^B-?9QA\;^1\]^./^"N'_  6C_P""T_BN^^#G_!,+X&ZI\./ QG-MJ/B?
M3;C9<Q1GJ;K6) D5H=N'$5L%GZA6EKZ'_8+_ .#5']GOX7:E#\6_^"@/Q G^
M+GC":;[5=:%;SS0Z+'<,=S&5V(N+]MW.Z0QHV2&B;K7ZJ>!_ G@CX9>%+'P'
M\./!^EZ!H>F0"'3M'T6PCM;6UC'1(XHP$1?8 5JU%3-)QA[/#15./EN_5[B=
M5I6BK(R_!7@?P7\-O"UEX&^'?A'3-!T33(!#IVCZ-81VMK:QCHD<48"(OL !
M6I117E-MN[,@HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
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
MUM;6,=%CBB550>P K7HHKRFVW=F(4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
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
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "NP^%'_+__ -LO_9ZX^NP^%'_+
M_P#]LO\ V>O6R/\ Y&E/Y_\ I+-L/_&1V%%%%?H1Z04444 %%%% !1110 44
M44 %%%% !7S!\>_^"6/[.OQL_:*\%_'$?#[PO86VD7]]<^-M'&A#;XG,T06'
MS=C*H:.0-(6*L7+<U]/T4 4O#OAOP]X/T.U\,>$]!LM+TVQA$-EI^G6J0P6\
M8Z(D: *BCT  KRCXF?\ !/;]BGXP^,)?'WQ%_9M\,ZAK%Q+YMW?BT,+W+GJ\
MOE,HE8]V<$FO9** ,OP7X(\&_#CPQ9^"OA_X5T_1-'T^+R[+3-*LT@@@7.<*
MB  <DD\<DDUYW\7OV%?V0?CUXM'CSXN?L^^'-:UG"B74YK0QS3A0 OFM&5,N
M  !OW8 QTKUBB@#.\)^$O"W@/PY9^#_!'ARQTC2=/A$-AINFVJ006\8Z*B(
MJCV [UHT44 %%%% 'SS^W!_R4;X-_P#8ZS?^DQKIJYG]N#_DHWP;_P"QUF_]
M)C735\7Q-_O</\/ZLX<5\:"BBBOFSE"BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH *XGXZ?LV?L_?M.>$F\"_M#?!CPSXTTD@[+/Q'H\-V(2>KQF
M128G]'0AAC@UVU%.,I1=T[,$VC\G/VN?^#2;]BWXJR7'B?\ 9+^)?B+X4:PS
M&2#39W;6-)##D!4F=;F+)_B$[!>R<8/SO_PK;_@Z"_X) _O/ OB"[^.'P^TW
M[MG;R2>*+40KR$^SR[-3ME"]1#MC7GYC@&OWKHKTZ>;8E1Y*R52/:2O^.YJJ
MT[6EKZGX^_LJ_P#!W-^S_P"(=13P)^W/^SWXA^&VLP2^1?:SH"/J5A'(#AVF
MMV5+JWP<C8JSL,=:_37]FW]L_P#91_; \/?\)-^S+^T!X7\9VZQ"2XAT;5$>
MYM0>GGV[8F@/(XD13STK#_:J_P""=G[$G[;6G/9_M._LV>&/%%RT7EQZS-9>
M1J4*XP!'>P%+B,=.%D X&1Q7YE?M)?\ !I'H_A_Q#_PM+_@G+^USKO@C7K.0
MSZ9I7BR>1D@E[>3J-F$GMP.@)BF;GEJNV48K9NE+_P "C_F/]S/R/V>HK\%/
M^&V?^#EC_@D3_HW[5/P?NOB_X!T[_6Z]JMH=8A6 =9/[5L3Y\!..&O0Q_P!C
MFOJC]DO_ (.OO^">'QNMH=*_:(TGQ%\(M9,>9FU.T?5=,9L?=CN;2,R^O,D$
M8Z<UG5RG%QCST[3CWB[_ (;B=&:5UKZ'ZAT5_,)_P5T_X.#_ -H']LW]H'3/
M^&5/&^N^ ?ASX!UU+[P?]@N&MKW5;V%CLU*ZVGZ^7 <JBL=P9F./T;_86_X.
MGOV0_&?[)D_B_P#;BUZ7PK\2O"\4=OJFC:+H\MP/$S%3LN;%$&U&?:=\<C(L
M;'.[8P(TK9)CJ5"-3ENWNENNW]=!RH5%%,_6"OGK]N3_ (*F?L0_\$\- ?4/
MVE?C196>KO!YMAX/TG%YK-Z,?+LM4.Y%/022F.+/5Q7Y/?$[_@MY_P %;O\
M@KIXVOO@+_P23_9UUGP9X;,GD7_BJV"2:C%$W\=SJ,FVUTP%>0L9\T$?)*QX
MKV;]AO\ X-3_ (;:+KZ_&[_@IG\7KWXI>+;V?[7?^&M,U&X33FG)RQNKQRMU
M?-GDD>2I.0PD%-9=0PJYL9.S_E6LO\D/V48:S?RZGC'Q*_X+9?\ !7;_ (*]
M^-;[X$?\$F/V>-8\$^&#+Y&H>*K0H^H11M_'<ZE)MMM-ROS!(CYP((25^E>U
M_L,_\&I_PM\.ZZGQK_X*5_%J\^*GBZ\G^UWWAS3M0N$TPSD[F-S=N1=7S9Y)
M_<J3D,L@K]7_ (:?"[X;?!GP78_#CX1^ ='\,^']-B\O3]%T'3H[2UMU]%CC
M4*,]2<<GDUNU%3-)0@Z>%C[./E\3]6)U;*T%9&'\./AE\.?@]X,L?AU\)_ F
MD>&M TR+R]/T70M.CM+6W7T2*-0J^IP.3S6Y117EMMN[,0HHHI %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %=A\*/^7_ /[9?^SUQ]=A\*/^7_\ [9?^SUZV
M1_\ (TI_/_TEFV'_ (R.PHHHK]"/2"BBB@ HHHH **** "BBB@ HHHH ***P
MO$GQ/^'W@_Q;H/@/Q/XNL;'6?%$L\?A[3;B;;+J#P())1$/XBB$,?0&@#=HH
MHH **** "BBB@ HHHH ^>?VX/^2C?!O_ +'6;_TF-=-7,_MP?\E&^#?_ &.L
MW_I,:Z:OB^)O][A_A_5G#BOC04445\V<H4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !7\]?_!V%^Q_\6/!/QH\/_M&>#/V=
M/!>D?"^ZLUM;GQ9X-\.107TNK2'+_P!KRH@+,V (6/RD9!._BOZ%*POB;\,O
MA_\ &?X?ZO\ "KXJ^$+'7_#FOV,EGK&CZG )(+J!QAD93^8(P00""" :[<OQ
MCP.)56UUU1I3G[.=S^("M_X6?#?XA_&#XC:+\,/A-X/O/$'B37-1CM-%T;3[
M7SI;N=C\J!,8([G/R@ DX )K] O^"NG_  ;X?M _L9?M Z9_PRIX(UWQ]\.?
M'VNI8^#_ +!;M<WNE7LS'9IMUM'U\N<X5U4[BK*<_KO_ ,$/O^"'WP^_X)E_
M#Z/XJ_%6WL=?^-.OV(76-80"2#08' +6%DQ'X2S#!D(P,( #]IBLYPE'"*K!
M\SELO\^UNIW3KPC#F1]5_L+_  J\:_!7]DGP'\-OB9\/_!/ACQ-IOAZ!/$.B
M_#S34M-(@O-O[SR8T 4$\%B!@ON(R,5ZS117P$Y.<W)]3SF[NX4445(@HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "NP^%'_+__ -LO_9ZX^NP^
M%'_+_P#]LO\ V>O6R/\ Y&E/Y_\ I+-L/_&1V%%%%?H1Z04444 %%%% !111
M0 4444 %%%% '!?M3?%#6_@G^S9X\^+WAFQ2YU'PUX2O]1L(9%W(9HH'="X[
MH& +>P-?BO\ #+]GSQO^VKXH^%_CSQI^TSJFI>,_BEXG\36,]S/=&:31)M/L
MH[BWW?-E/,=P=J[56(J$ [?N=X]N/ ]OX,U,?$N]TV#0)K-X-7?6)TCM3!(/
M+9)6D(4*P;:<G!W8[U^/_P"T?_P38L_@_P#M)?"_6?\ @G/^T7Y\GQ)U'6CX
M.O+?6ALTN:PAWR1Q:C;,WF*P:2$97*E2KLV6( /O[]C>W_:D_9+_ &-M>O/V
MZ?%5AK=QX*LKS4K+4;/5GO+DZ7!;^<89Y)$7?(I20*V6RI4$_+S\,_LZ_!?]
MI'_@L3-XT_:0^-W[6&I^"M#TW6#IOAO3+%G:SM[HQB80QQ&:-$2-'ARW,DA?
M);(R?2?V?/VR_CU^UG_P3C_:0^$?QW!N_&7PY\(7<-UJ:P)'+=V[V]UN258P
M%,L9M9E+*!N#+D$AF;QG_@DU_P $VOAQ^W=\$/%.O_&;XD^)[?3-#UY[+P_H
MNB7Z1Q6MW);Q/->,DB.K,R^2@P%R(B"3A=H!]O\ _!.[3/VV/V6_V?/&EC^W
MC<B]TGPE:/J7AS59=>CO[LV<44KW$+NK,2BB-&CWDD"1EX"J!\7_ +-7P(_:
MF_X+%ZC\0_VB_&W[3FL>&GT6^^S^%=*LWE:TANF1I4MT594$$,:^4I9078R%
MCD@[NA_8'^+WQ?\ ^&;_ -JG]AKQ=XIN=>MO!'P\\0#PU<2NSFW,<-U:RP1D
MDD1.PC9$SA3OQ]ZO8?\ @W)N;9_V5O&]FCCSH_B"[R+W"M8VH4_FK?E0!M?\
M$+OVR?B?^T%\,?%7P7^-GB*ZU;7O 5U;_8]4U&4R74]E-YBB.5SDR-%)"PWL
M22LB D[<U]XU^4O_  ;^12ZE^U#\:/$.G9:P^PQKO7[N9+V5H_S5'Q^-?JU0
M 445Y?\ %;PI^UGJ_BY[SX/_ !7\+Z1HI@0)9:MH3W$PD ^=BX(X)Z"@#B?V
MX/\ DHWP;_['6;_TF-=-7BG[0/AO]IG1OBM\)Y/C5\2_#NM6S^,&%E'H^C-;
M-&PB)<L23D%<@>AYKVNOB^)O]ZA_A_5G#BOC04445\V<H4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !78?"C_E__P"V
M7_L]<?78?"C_ )?_ /ME_P"SUZV1_P#(TI_/_P!)9MA_XR.PHHHK]"/2"BBB
M@ HHHH **** "BBB@ HHHH Y7XX?"#PE\?OA#XB^"_CF*1M*\2:5+8W;0D"2
M(./ED0G(#HVUUSD;E'!K\A?$_P"P_P#\%#_V-_VBOA7\#?AQ\6]$OGO=>UV;
MX3ZF9E\FTF>S07LKQS1L8&,.QBG[Q X)7<22?VDJ*>PL;FXAN[FRBDEMR3!*
M\8+1DC!VD\C(]* /FC_@G?\ \$Z](_8Y^"OB+PC\1O$$'BKQ+X]E,OC>_57-
MO<)L=!;(7P[H!+,2[ ,[2L2 , ?+NC_\$V?^"FW[#7Q$\36G_!/OXLZ/=^#_
M !0W$>K3VXGME&[RS+'<QE/-C#%1+&3O'+*.%'Z?44 ?)7_!,K_@FQ-^QQX#
M\3ZK\9?$5IXE\:>/<+XEE@+R6T5N-Y^SJ\@#2EFD=I'(&XE0!\NYOF]/^"97
M_!2_]C;QAXR\+?L#_%32)O!'C8>7(;Z[@BN[2+YPF\3QG9,BR.@FA.6&&(4A
M0OZBT4 ?,O\ P2\_X)_)^P/\&+_0?$FNVFJ^+?$UY'=^)+ZP#>1&(U*PVT18
M!G1 TAW$ EI6X P*^FJ** "BBB@#YY_;@_Y*-\&_^QUF_P#28UTU<S^W!_R4
M;X-_]CK-_P"DQKIJ^+XF_P![A_A_5G#BOC04445\V<H4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !78?"C_ )?_ /ME
M_P"SUQ]=A\*/^7__ +9?^SUZV1_\C2G\_P#TEFV'_C(["BBBOT(](**** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** /GG]N#_DHWP;_[
M'6;_ -)C735S/[<'_)1O@W_V.LW_ *3&NFKXOB;_ 'N'^']6<.*^-!1117S9
MRA1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %=A\*/\ E_\ ^V7_ +/7'UV'PH_Y?_\ ME_[/7K9'_R-*?S_ /26;8?^
M,CL****_0CT@HHHH **** "BBB@ HHHH **** *GB#7]%\*:#?>*/$FIPV6G
M:;9RW5_>7#[8X(8T+O(Q[*J@DGT%?FA\6O\ @X)F_P"%M:)<? ?X&ZKJ?@.P
MOKZ/7;O44\NXUN..$,#;X5A;>4/WK;MS%&7<L?6OO[]J+X6:K\</V</'7P>T
M&_2UO_$WA._TZQGD8A%FE@=$WD?P[B WL37XM_!/]H[6/V/OBS\*_@Y^UI\$
M=2TFP^$_B?Q#=:M!'8 W=]!JEHMNRM%(52959,B0.5>-@!G:-P!^R7[(_P"U
MG\*?VS_@[:_&7X2W-RMH]P]KJ&G7R!;G3[I I>"4*2,[61@02"KJ>^!7_;,_
M:Y^'7[%7P.O_ (T_$)&NO*E2VTC1H)@DVIW;YV0(2"%X#.S8.U$8X) !R/V+
M_%'[$-W\#+GXC_L>6GAG2/!\DCS:S+IEF++[/-%&#)]K5PK(Z)@DR?PX8$J0
M3^;G[7?B7QU_P5+U/XJ?M-V-Y>6'P=^"OAZZ@\'J5*C4[\[?WF&'WG^65^,I
M&L"$ N6H _3']AW]K33OVU_@%:?'?2_!$WA^&ZU&YM!IMQ?"X93"^TMO"*#G
MKC'%?-_QX_X+U? 3X7_$[5/AW\-/A+XA\=6^@S/'K.NZ9<QP6J%&VR-$2KF5
M%;Y=YV*3]TD$,</_ ()F^+]3^'W_  1/\9>/-$G:*]T71O%E]9RH<%)HH)70
M@]B&45D?\&['P^\+:G^S3\2=?U71;:YDUKQ4-)U$3Q!A/:QV<;")L]5/VF3(
MZ'<: /M7]DS]K3X0_MF_"2#XO_![4;AK0W#6VH:??1A+K3[E0&:&502 V&5@
M5)4A@0?3TVORM_X-Z-8O?#'QL^,OPCM[EVT^.&VN(XV;(5[>YGAW#W*R#/KM
M'I7ZI4 %%%<'\0?VGO@!\*O$;>$OB)\5-+TC4DA25K.[D8.$;E6X!X- 'FO[
M<'_)1O@W_P!CK-_Z3&NFKR7]IC]HCX)_%[XI?"33_AI\1].UF:S\8N]U'9N2
M8U>$HI.0.K$"O6J^+XF_WJ'^']6<.*^-!1117S9RA1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %=A\*/^7_ /[9?^SU
MQ]=A\*/^7_\ [9?^SUZV1_\ (TI_/_TEFV'_ (R.PHHHK]"/2"BBB@ HHHH
M**** "BBB@ HHHH XC]I'QG\3OAU\"/%7CWX-^$K;7O$NC:1)>Z7HUVKLEXT
M>':,",AF8H'VJIR6VCO7Y6^*O^"EWP!_;1\?? KQ1^U_X7T:QB\):MXI3XA:
M1_9$\]A)9SV2"SDB1O,=RS($VY+K+'N&T%#7[$U\P?'O_@EC^SK\;/VBO!?Q
MQ'P^\+V%MI%_?7/C;1QH0V^)S-$%A\W8RJ&CD#2%BK%RW- 'PY_P3G_98^-O
M[0O[$O[1GAGX#7#>'M'\?ZWI-CX*DUZ]EAA>&VO))+M&DC5V(-K(D+%58.Q*
M$\'%7XK?L!?\%2_V6?V-O%'AK6/C]X0B^&6D:3<7&M>&='U"1C<0N^Z0 -9*
M79F/5G!X S@ 5^O_ (=\-^'O!^AVOACPGH-EI>FV,(ALM/TZU2&"WC'1$C0!
M44>@ %5_&_@CPE\2?"=_X$\>>'[;5='U2W,&HZ=>1[XKB,]58=Q0!^7_ /P1
MV^ /[5'Q1_99\::?J7Q+T]_A-XN\#^(O#^C>&C<'SK?5[@QQ&Y9?) ";3,,^
M8?O#Y?3G_P#@D%^W7\%?V%_AG\4/@Q^T]JMWX;UG3->;4;33+C3IGFN[A(1!
M-:*$1@DJO!&,/M!WYSA6(_5+X6?"+X9?!'PC'X"^$G@C3_#^C13/-'INF0".
M)7<Y=@!W)Y-<5\7OV%?V0?CUXM'CSXN?L^^'-:UG"B74YK0QS3A0 OFM&5,N
M  !OW8 QTH ^(O\ @W?^%OBF\'Q/_:7\0Z;)!::_>V^FZ5,R$+<.KRSW17/5
M59X5R.,[AU4U^FM9WA/PEX6\!^'+/P?X(\.6.D:3I\(AL--TVU2""WC'141
M%4>P'>M&@ K+U;P1X+UZ\.H:YX0TN]N"H4SW>GQR.0.@W,I.*U** /F?]LCP
MAX2\/?$KX/3:!X7TZQ>3QG*)&L[*.(L!;D@$J!G!YKN*YG]N#_DHWP;_ .QU
MF_\ 28UTU?%\3?[W#_#^K.'%?&@HHHKYLY0HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "NP^%'_ "__ /;+_P!GKCZ[
M#X4?\O\ _P!LO_9Z];(_^1I3^?\ Z2S;#_QD=A1117Z$>D%%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% 'SS^W!_R4;X-_]CK-_P"D
MQKIJYG]N#_DHWP;_ .QUF_\ 28UTU?%\3?[W#_#^K.'%?&@HHHKYLY0HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "NP
M^%'_ "__ /;+_P!GKCZ[#X4?\O\ _P!LO_9Z];(_^1I3^?\ Z2S;#_QD=A11
M17Z$>D%%%% !1110 4444 %%%% !1110 5A>)/B?\/O!_BW0? ?B?Q=8V.L^
M*)9X_#VFW$VV74'@022B(?Q%$(8^@-<_^U-\4-;^"?[-GCSXO>&;%+G4?#7A
M*_U&PAD7<AFB@=T+CN@8 M[ U^*_PR_9\\;_ +:OBCX7^//&G[3.J:EXS^*7
MB?Q-8SW,]T9I-$FT^RCN+?=\V4\QW!VKM58BH0#L ?O+17R_^R5X>_;M_9N_
M8H\1:/\ M"+:>.?&WARRNYO!5OI^IR7MU?((-UO:7$CJI=A,"H;<QV,!GY1G
MY!^"O_!,?]N/]MWP_P"(_CI^UK^TAXV\$>+!JLT.A:/JUG,-I6-7$VSS8U@M
MRS[%6)<#8Q'8$ _5ZBOSF_X(J_MT?%'QE\#_ (H>'OV@?%EYX@L_A7I\6IVN
MNWEP9[C[&8[EI('E8YD"_9BR,Q)PY&=JJ!X7^S5\"/VIO^"Q>H_$/]HOQM^T
MYK'AI]%OOL_A72K-Y6M(;ID:5+=%65!!#&OE*64%V,A8Y(.X _8VBO@[_@A=
M^V3\3_V@OACXJ^"_QL\176K:]X"NK?['JFHRF2ZGLIO,41RN<F1HI(6&]B25
MD0$G;FOO&@ HHHH ^>?VX/\ DHWP;_['6;_TF-=-7,_MP?\ )1O@W_V.LW_I
M,:Z:OB^)O][A_A_5G#BOC04445\V<H4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !78?"C_E_P#^V7_L]<?78?"C_E__
M .V7_L]>MD?_ "-*?S_])9MA_P",CL****_0CT@HHHH **** "BBB@ HHHH
M**** ,CQ[<>![?P9J8^)=[IL&@36;P:N^L3I':F"0>6R2M(0H5@VTY.#NQWK
M\?\ ]H__ ()L6?P?_:2^%^L_\$Y_VB_/D^).HZT?!UY;ZT-FES6$.^2.+4;9
MF\Q6#20C*Y4J5=FRQ'ZV_'#X0>$OC]\(?$7P7\<Q2-I7B32I;&[:$@21!Q\L
MB$Y =&VNN<C<HX-?D+XG_8?_ ."A_P"QO^T5\*_@;\./BWHE\][KVNS?"?4S
M,ODVDSV:"]E>.:-C QAV,4_>('!*[B22 ?:7_!&[]MKXU_M1>#?&OPM_:*9;
MGQ;\.M1MK:ZU4P)')=13&= DRQ@(98WMI%+J!N#+D$AF;SW_ (*8?\%)?&_C
M?QM-_P $_/V$K&YU[QGK<SZ7XCUK2?F-J6!$MG;MG D"[O-G)"PJ&&0P9H_2
M?V:_^">/QA_8R_8R^(7A7X3^-[+6?C+X]M6DO/$4MR\-O#<D-''Y<CJ7/DB:
M>42,NYI&)( P!\A_!+_@DE_P5F_9R\3W?C3X*>.?"F@:M?6IMKK4;;74>9XB
MP=DW26[$ LJDXQG:,YP* /JSX3?L!1?L1?\ !+KXN> 3>1:CXT\3?#K6[KQ-
MJ%H#L>X_LV=8K6(D F.,,R@GEF=VP-P4<?\ \&Y-S;/^RMXWLT<>='\07>1>
MX5K&U"G\U;\J]?\ ^"?OP;_X*$>$[GQEIW[?OQ+L?%>EZKIUO;Z):Q7T<ZID
MRBX#!(8\!E9!SG..U?,R?\$RO^"E_P"QMXP\9>%OV!_BII$W@CQL/+D-]=P1
M7=I%\X3>)XSLF19'030G+##$*0H4 RO^#?R*74OVH?C1XAT[+6'V&-=Z_=S)
M>RM'^:H^/QK]6J^9?^"7G_!/Y/V!_@Q?Z#XDUVTU7Q;XFO([OQ)?6 ;R(Q&I
M6&VB+ ,Z(&D.X@$M*W &!7TU0 5Y?\5O"G[6>K^+GO/@_P#%?POI&BF! EEJ
MVA/<3"0#YV+@C@GH*]0HH ^-/V@?#?[3.C?%;X3R?&KXE^'=:MG\8,+*/1]&
M:V:-A$2Y8DG(*Y ]#S7M=<S^W!_R4;X-_P#8ZS?^DQKIJ^+XF_WJ'^']6<.*
M^-!1117S9RA1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %=A\*/^7_\ [9?^SUQ]=A\*/^7_ /[9?^SUZV1_\C2G\_\
MTEFV'_C(["BBBOT(](**** "BBB@ HHHH **** "BBB@ J*>PL;FXAN[FRBD
MEMR3!*\8+1DC!VD\C(]*EHH **** "BBB@ HHHH **** /GG]N#_ )*-\&_^
MQUF_])C735S/[<'_ "4;X-_]CK-_Z3&NFKXOB;_>X?X?U9PXKXT%%%%?-G*%
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 5V'PH_Y?\ _ME_[/7'UV'PH_Y?_P#ME_[/7K9'_P C2G\__26;8?\ C(["
MBBBOT(](**** "BBB@ HHHH **** "BBB@ HHHH **AU+4M/T?3KC5]6O8K:
MUM87FN;B=PJ11J"S.Q/   ))[ 5^:/QR_P"#@ 1?%#2H/V;O@SJ>M>#],UF6
M+7=4U"/RWUJ%8RQ2V 5C;X"F0,^6*#E$YP ?II17DW[&O[9/PE_;=^$:_%CX
M4O=0+!=&TU?2-155N=/N0JL8W"DAE*L&5U)# ]B&4?-/QX_X+U? 3X7_ !.U
M3X=_#3X2^(?'5OH,SQZSKNF7,<%JA1MLC1$JYE16^7>=BD_=)!#$ ^[Z*\R_
M9,_:T^$/[9OPD@^+_P 'M1N&M#<-;:AI]]&$NM/N5 9H95!(#896!4E2&!!]
M/3: "BBB@#YY_;@_Y*-\&_\ L=9O_28UTU<S^W!_R4;X-_\ 8ZS?^DQKIJ^+
MXF_WN'^']6<.*^-!1117S9RA1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %=A\*/^7__ +9?^SUQ]=A\*/\ E_\ ^V7_
M +/7K9'_ ,C2G\__ $EFV'_C(["BBBOT(](**** "BBB@ HHHH **** "BBB
M@ HHHH Y7X[?#Z\^+?P0\9?"K3]1%G<>)O"FHZ3!=MG$#W-M)"KG'/!<'CTK
M\1/A1\=/&?[#GQ(^'OP*_:B^"NHZ3;?#7XFWGB._:"U'VN[BN+9+9U5'*QW"
M?NE9)0^UE. 2,5^WGQP\1?$3PA\'O$WBSX2^&;?6O$NF:+<7>BZ/=;]E]/&A
M=8/D(;+XVC!')%?D_P",_P#@IU\'OVS]:^#<_P"UYX4T729?"/Q!U"3QKI+:
M///I\FE26N$<(_FLS;@4:/EMRJP'(P ?:_P^^)G[&FG_ + WQ2^.'[ >C:#I
M-G9^"]6N[U=$TW['=0WUO8321K<H0'#J3E2V1@Y4D'->'_\ !NQ\/O"VI_LT
M_$G7]5T6VN9-:\5#2=1$\083VL=G&PB;/53]IDR.AW&N*_X(^? V^^+G@C]I
M\_#K1[W2OAWX\T^Z\/\ A*/4"V'\Q+U8U)).YH8;B)7;)YDZGFL'_@D%^W7\
M%?V%_AG\4/@Q^T]JMWX;UG3->;4;33+C3IGFN[A(1!-:*$1@DJO!&,/M!WYS
MA6( .C_X-Z-8O?#'QL^,OPCM[EVT^.&VN(XV;(5[>YGAW#W*R#/KM'I7ZI5^
M97_!N_\ "WQ3>#XG_M+^(=-D@M-?O;?3=*F9"%N'5Y9[HKGJJL\*Y'&=PZJ:
M_36@ K@_B#^T]\ /A5XC;PE\1/BII>D:DD*2M9W<C!PC<JW /!KO*R]6\$>"
M]>O#J&N>$-+O;@J%,]WI\<CD#H-S*3B@#Y(_;(_:T_9O\0>)_AMXHT7XOZ1<
MV'AWQ-+>ZU<Q2L1:P>05WL,9(R<< FJ__#RW]A;_ *./T3_OU<?_ !NO1/VL
M?AM\.S\6_@UI!\ Z*;2_\:RPWUK_ &5#Y=Q']F;Y)%VX=?8Y%>K_ /#,G[-O
M_1O?@?\ \).S_P#C=>7CLIPV85%.HVFE;2WZIF52C&H[L^9/^'EO["W_ $<?
MHG_?JX_^-T?\/+?V%O\ HX_1/^_5Q_\ &Z^F_P#AF3]FW_HWOP/_ .$G9_\
MQNC_ (9D_9M_Z-[\#_\ A)V?_P ;KB_U:P/\TOO7^1G]5I]V?,G_  \M_86_
MZ./T3_OU<?\ QNC_ (>6_L+?]''Z)_WZN/\ XW7TW_PS)^S;_P!&]^!__"3L
M_P#XW1_PS)^S;_T;WX'_ /"3L_\ XW1_JU@?YI?>O\@^JT^[/F3_ (>6_L+?
M]''Z)_WZN/\ XW1_P\M_86_Z./T3_OU<?_&Z^F_^&9/V;?\ HWOP/_X2=G_\
M;H_X9D_9M_Z-[\#_ /A)V?\ \;H_U:P/\TOO7^0?5:?=GS)_P\M_86_Z./T3
M_OU<?_&Z/^'EO["W_1Q^B?\ ?JX_^-U]-_\ #,G[-O\ T;WX'_\ "3L__C='
M_#,G[-O_ $;WX'_\).S_ /C='^K6!_FE]Z_R#ZK3[L^9/^'EO["W_1Q^B?\
M?JX_^-T?\/+?V%O^CC]$_P"_5Q_\;KZ;_P"&9/V;?^C>_ __ (2=G_\ &Z/^
M&9/V;?\ HWOP/_X2=G_\;H_U:P/\TOO7^0?5:?=GS)_P\M_86_Z./T3_ +]7
M'_QNC_AY;^PM_P!''Z)_WZN/_C=?3?\ PS)^S;_T;WX'_P#"3L__ (W1_P ,
MR?LV_P#1O?@?_P ).S_^-T?ZM8'^:7WK_(/JM/NSYD_X>6_L+?\ 1Q^B?]^K
MC_XW1_P\M_86_P"CC]$_[]7'_P ;KZ;_ .&9/V;?^C>_ _\ X2=G_P#&Z/\
MAF3]FW_HWOP/_P"$G9__ !NC_5K _P TOO7^0?5:?=GS)_P\M_86_P"CC]$_
M[]7'_P ;H_X>6_L+?]''Z)_WZN/_ (W7TW_PS)^S;_T;WX'_ /"3L_\ XW1_
MPS)^S;_T;WX'_P#"3L__ (W1_JU@?YI?>O\ (/JM/NSYD_X>6_L+?]''Z)_W
MZN/_ (W1_P /+?V%O^CC]$_[]7'_ ,;KZ;_X9D_9M_Z-[\#_ /A)V?\ \;H_
MX9D_9M_Z-[\#_P#A)V?_ ,;H_P!6L#_-+[U_D'U6GW9\R?\ #RW]A;_HX_1/
M^_5Q_P#&Z/\ AY;^PM_T<?HG_?JX_P#C=?3?_#,G[-O_ $;WX'_\).S_ /C=
M'_#,G[-O_1O?@?\ \).S_P#C='^K6!_FE]Z_R#ZK3[L^9/\ AY;^PM_T<?HG
M_?JX_P#C='_#RW]A;_HX_1/^_5Q_\;KZ;_X9D_9M_P"C>_ __A)V?_QNC_AF
M3]FW_HWOP/\ ^$G9_P#QNC_5K _S2^]?Y!]5I]V?,G_#RW]A;_HX_1/^_5Q_
M\;H_X>6_L+?]''Z)_P!^KC_XW7TW_P ,R?LV_P#1O?@?_P ).S_^-T?\,R?L
MV_\ 1O?@?_PD[/\ ^-T?ZM8'^:7WK_(/JM/NSYD_X>6_L+?]''Z)_P!^KC_X
MW1_P\M_86_Z./T3_ +]7'_QNOIO_ (9D_9M_Z-[\#_\ A)V?_P ;H_X9D_9M
M_P"C>_ __A)V?_QNC_5K _S2^]?Y!]5I]V?,<G_!3#]A2)#(W[1VBD#KM@N"
M?R$5*/\ @I=^PJP##]H[1.1WAN/_ (W7IG[:/[/7P"T']ECQOK&A_ [P?97=
MOHCO!=6GAFUCDC;<O*LL8(/N*[7X;?LU_LZ77PZT"ZNO@%X*DEDT6U>223PK
M9EF8PJ223'R2>]'^K6!_FE]Z_P @^JT^[/G[_AY;^PM_T<?HG_?JX_\ C='_
M  \M_86_Z./T3_OU<?\ QNOIO_AF3]FW_HWOP/\ ^$G9_P#QNC_AF3]FW_HW
MOP/_ .$G9_\ QNC_ %:P/\TOO7^0?5:?=GS)_P /+?V%O^CC]$_[]7'_ ,;H
M_P"'EO["W_1Q^B?]^KC_ .-U]-_\,R?LV_\ 1O?@?_PD[/\ ^-T?\,R?LV_]
M&]^!_P#PD[/_ .-T?ZM8'^:7WK_(/JM/NSYD_P"'EO["W_1Q^B?]^KC_ .-T
M?\/+?V%O^CC]$_[]7'_QNOIO_AF3]FW_ *-[\#_^$G9__&Z/^&9/V;?^C>_
M_P#X2=G_ /&Z/]6L#_-+[U_D'U6GW9\R?\/+?V%O^CC]$_[]7'_QNC_AY;^P
MM_T<?HG_ 'ZN/_C=?3?_  S)^S;_ -&]^!__  D[/_XW1_PS)^S;_P!&]^!_
M_"3L_P#XW1_JU@?YI?>O\@^JT^[/F3_AY;^PM_T<?HG_ 'ZN/_C='_#RW]A;
M_HX_1/\ OU<?_&Z^F_\ AF3]FW_HWOP/_P"$G9__ !NC_AF3]FW_ *-[\#_^
M$G9__&Z/]6L#_-+[U_D'U6GW9\R?\/+?V%O^CC]$_P"_5Q_\;H_X>6_L+?\
M1Q^B?]^KC_XW7TW_ ,,R?LV_]&]^!_\ PD[/_P"-T?\ #,G[-O\ T;WX'_\
M"3L__C='^K6!_FE]Z_R#ZK3[L^9/^'EO["W_ $<?HG_?JX_^-T?\/+?V%O\
MHX_1/^_5Q_\ &Z^F_P#AF3]FW_HWOP/_ .$G9_\ QNC_ (9D_9M_Z-[\#_\
MA)V?_P ;H_U:P/\ -+[U_D'U6GW9\R?\/+?V%O\ HX_1/^_5Q_\ &Z/^'EO[
M"W_1Q^B?]^KC_P"-U]-_\,R?LV_]&]^!_P#PD[/_ .-T?\,R?LV_]&]^!_\
MPD[/_P"-T?ZM8'^:7WK_ "#ZK3[L^9/^'EO["W_1Q^B?]^KC_P"-T?\ #RW]
MA;_HX_1/^_5Q_P#&Z^F_^&9/V;?^C>_ _P#X2=G_ /&Z/^&9/V;?^C>_ _\
MX2=G_P#&Z/\ 5K _S2^]?Y!]5I]V?,G_  \M_86_Z./T3_OU<?\ QNC_ (>6
M_L+?]''Z)_WZN/\ XW7TW_PS)^S;_P!&]^!__"3L_P#XW1_PS)^S;_T;WX'_
M /"3L_\ XW1_JU@?YI?>O\@^JT^[/F3_ (>6_L+?]''Z)_WZN/\ XW1_P\M_
M86_Z./T3_OU<?_&Z^F_^&9/V;?\ HWOP/_X2=G_\;H_X9D_9M_Z-[\#_ /A)
MV?\ \;H_U:P/\TOO7^0?5:?=GS)_P\M_86_Z./T3_OU<?_&Z/^'EO["W_1Q^
MB?\ ?JX_^-U]-_\ #,G[-O\ T;WX'_\ "3L__C='_#,G[-O_ $;WX'_\).S_
M /C='^K6!_FE]Z_R#ZK3[L^9/^'EO["W_1Q^B?\ ?JX_^-T?\/+?V%O^CC]$
M_P"_5Q_\;KZ;_P"&9/V;?^C>_ __ (2=G_\ &Z/^&9/V;?\ HWOP/_X2=G_\
M;H_U:P/\TOO7^0?5:?=GS')_P4P_84B0R-^T=HI Z[8+@G\A%2C_ (*7?L*L
M P_:.T3D=X;C_P"-UZ9^VC^SU\ M!_98\;ZQH?P.\'V5W;Z([P75IX9M8Y(V
MW+RK+&"#[BNU^&W[-?[.EU\.M NKKX!>"I)9-%M7DDD\*V99F,*DDDQ\DGO1
M_JU@?YI?>O\ (/JM/NSY^_X>6_L+?]''Z)_WZN/_ (W1_P /+?V%O^CC]$_[
M]7'_ ,;KZ;_X9D_9M_Z-[\#_ /A)V?\ \;H_X9D_9M_Z-[\#_P#A)V?_ ,;H
M_P!6L#_-+[U_D'U6GW9\R?\ #RW]A;_HX_1/^_5Q_P#&Z/\ AY;^PM_T<?HG
M_?JX_P#C=?3?_#,G[-O_ $;WX'_\).S_ /C='_#,G[-O_1O?@?\ \).S_P#C
M='^K6!_FE]Z_R#ZK3[L^9/\ AY;^PM_T<?HG_?JX_P#C='_#RW]A;_HX_1/^
M_5Q_\;KZ;_X9D_9M_P"C>_ __A)V?_QNC_AF3]FW_HWOP/\ ^$G9_P#QNC_5
MK _S2^]?Y!]5I]V?,G_#RW]A;_HX_1/^_5Q_\;H_X>6_L+?]''Z)_P!^KC_X
MW7TW_P ,R?LV_P#1O?@?_P ).S_^-T?\,R?LV_\ 1O?@?_PD[/\ ^-T?ZM8'
M^:7WK_(/JM/NSYD_X>6_L+?]''Z)_P!^KC_XW1_P\M_86_Z./T3_ +]7'_QN
MOIO_ (9D_9M_Z-[\#_\ A)V?_P ;H_X9D_9M_P"C>_ __A)V?_QNC_5K _S2
M^]?Y!]5I]V?,G_#RW]A;_HX_1/\ OU<?_&Z/^'EO["W_ $<?HG_?JX_^-U]-
M_P##,G[-O_1O?@?_ ,).S_\ C='_  S)^S;_ -&]^!__  D[/_XW1_JU@?YI
M?>O\@^JT^[/F3_AY;^PM_P!''Z)_WZN/_C='_#RW]A;_ *./T3_OU<?_ !NO
MIO\ X9D_9M_Z-[\#_P#A)V?_ ,;H_P"&9/V;?^C>_ __ (2=G_\ &Z/]6L#_
M #2^]?Y!]5I]V?,G_#RW]A;_ *./T3_OU<?_ !NC_AY;^PM_T<?HG_?JX_\
MC=?3?_#,G[-O_1O?@?\ \).S_P#C='_#,G[-O_1O?@?_ ,).S_\ C='^K6!_
MFE]Z_P @^JT^[/F3_AY;^PM_T<?HG_?JX_\ C='_  \M_86_Z./T3_OU<?\
MQNOIO_AF3]FW_HWOP/\ ^$G9_P#QNC_AF3]FW_HWOP/_ .$G9_\ QNC_ %:P
M/\TOO7^0?5:?=GS)_P /+?V%O^CC]$_[]7'_ ,;H_P"'EO["W_1Q^B?]^KC_
M .-U]-_\,R?LV_\ 1O?@?_PD[/\ ^-T?\,R?LV_]&]^!_P#PD[/_ .-T?ZM8
M'^:7WK_(/JM/NSYD_P"'EO["W_1Q^B?]^KC_ .-T?\/+?V%O^CC]$_[]7'_Q
MNOIO_AF3]FW_ *-[\#_^$G9__&Z/^&9/V;?^C>_ _P#X2=G_ /&Z/]6L#_-+
M[U_D'U6GW9\R?\/+?V%O^CC]$_[]7'_QNC_AY;^PM_T<?HG_ 'ZN/_C=?3?_
M  S)^S;_ -&]^!__  D[/_XW1_PS)^S;_P!&]^!__"3L_P#XW1_JU@?YI?>O
M\@^JT^[/F3_AY;^PM_T<?HG_ 'ZN/_C='_#RW]A;_HX_1/\ OU<?_&Z^F_\
MAF3]FW_HWOP/_P"$G9__ !NC_AF3]FW_ *-[\#_^$G9__&Z/]6L#_-+[U_D'
MU6GW9\R?\/+?V%O^CC]$_P"_5Q_\;IL?_!3']A25=R_M':,!G'S6]RO\XJ^G
M?^&9/V;?^C>_ _\ X2=G_P#&Z\5_80^ 7P)\1?!W5+[Q!\%?"5].GC75XDFO
M/#=K*ZQK<$*@+1DA0. .@H_U:P/\TOO7^0?5:?=G'?\ #RW]A;_HX_1/^_5Q
M_P#&Z/\ AY;^PM_T<?HG_?JX_P#C=?3?_#,G[-O_ $;WX'_\).S_ /C='_#,
MG[-O_1O?@?\ \).S_P#C='^K6!_FE]Z_R#ZK3[L^9/\ AY;^PM_T<?HG_?JX
M_P#C='_#RW]A;_HX_1/^_5Q_\;KZ;_X9D_9M_P"C>_ __A)V?_QNC_AF3]FW
M_HWOP/\ ^$G9_P#QNC_5K _S2^]?Y!]5I]V?,G_#RW]A;_HX_1/^_5Q_\;H_
MX>6_L+?]''Z)_P!^KC_XW7TW_P ,R?LV_P#1O?@?_P ).S_^-T?\,R?LV_\
M1O?@?_PD[/\ ^-T?ZM8'^:7WK_(/JM/NSYD_X>6_L+?]''Z)_P!^KC_XW1_P
M\M_86_Z./T3_ +]7'_QNOIO_ (9D_9M_Z-[\#_\ A)V?_P ;H_X9D_9M_P"C
M>_ __A)V?_QNC_5K _S2^]?Y!]5I]V?,G_#RW]A;_HX_1/\ OU<?_&Z/^'EO
M["W_ $<?HG_?JX_^-U]-_P##,G[-O_1O?@?_ ,).S_\ C='_  S)^S;_ -&]
M^!__  D[/_XW1_JU@?YI?>O\@^JT^[/F3_AY;^PM_P!''Z)_WZN/_C='_#RW
M]A;_ *./T3_OU<?_ !NOIO\ X9D_9M_Z-[\#_P#A)V?_ ,;H_P"&9/V;?^C>
M_ __ (2=G_\ &Z/]6L#_ #2^]?Y!]5I]V?,G_#RW]A;_ *./T3_OU<?_ !NC
M_AY;^PM_T<?HG_?JX_\ C=?3?_#,G[-O_1O?@?\ \).S_P#C='_#,G[-O_1O
M?@?_ ,).S_\ C='^K6!_FE]Z_P @^JT^[/F3_AY;^PM_T<?HG_?JX_\ C='_
M  \M_86_Z./T3_OU<?\ QNOIO_AF3]FW_HWOP/\ ^$G9_P#QNC_AF3]FW_HW
MOP/_ .$G9_\ QNC_ %:P/\TOO7^0?5:?=GS)_P /+?V%O^CC]$_[]7'_ ,;H
M_P"'EO["W_1Q^B?]^KC_ .-U]-_\,R?LV_\ 1O?@?_PD[/\ ^-T?\,R?LV_]
M&]^!_P#PD[/_ .-T?ZM8'^:7WK_(/JM/NSYD_P"'EO["W_1Q^B?]^KC_ .-T
M?\/+?V%O^CC]$_[]7'_QNOIO_AF3]FW_ *-[\#_^$G9__&Z/^&9/V;?^C>_
M_P#X2=G_ /&Z/]6L#_-+[U_D'U6GW9\R?\/+?V%O^CC]$_[]7'_QNC_AY;^P
MM_T<?HG_ 'ZN/_C=?3?_  S)^S;_ -&]^!__  D[/_XW1_PS)^S;_P!&]^!_
M_"3L_P#XW1_JU@?YI?>O\@^JT^[/F3_AY;^PM_T<?HG_ 'ZN/_C='_#RW]A;
M_HX_1/\ OU<?_&Z^F_\ AF3]FW_HWOP/_P"$G9__ !NC_AF3]FW_ *-[\#_^
M$G9__&Z/]6L#_-+[U_D'U6GW9\R?\/+?V%O^CC]$_P"_5Q_\;H_X>6_L+?\
M1Q^B?]^KC_XW7TW_ ,,R?LV_]&]^!_\ PD[/_P"-T?\ #,G[-O\ T;WX'_\
M"3L__C='^K6!_FE]Z_R#ZK3[L^9/^'EO["W_ $<?HG_?JX_^-TV/_@IC^PI*
MNY?VCM& SCYK>Y7^<5?3O_#,G[-O_1O?@?\ \).S_P#C=>*_L(? +X$^(O@[
MJE]X@^"OA*^G3QKJ\237GANUE=8UN"%0%HR0H' '04?ZM8'^:7WK_(/JM/NS
MCO\ AY;^PM_T<?HG_?JX_P#C='_#RW]A;_HX_1/^_5Q_\;KZ;_X9D_9M_P"C
M>_ __A)V?_QNC_AF3]FW_HWOP/\ ^$G9_P#QNC_5K _S2^]?Y!]5I]V?,G_#
MRW]A;_HX_1/^_5Q_\;H_X>6_L+?]''Z)_P!^KC_XW7TW_P ,R?LV_P#1O?@?
M_P ).S_^-T?\,R?LV_\ 1O?@?_PD[/\ ^-T?ZM8'^:7WK_(/JM/NSYD_X>6_
ML+?]''Z)_P!^KC_XW1_P\M_86_Z./T3_ +]7'_QNOIO_ (9D_9M_Z-[\#_\
MA)V?_P ;H_X9D_9M_P"C>_ __A)V?_QNC_5K _S2^]?Y!]5I]V?,G_#RW]A;
M_HX_1/\ OU<?_&Z/^'EO["W_ $<?HG_?JX_^-U]-_P##,G[-O_1O?@?_ ,).
MS_\ C='_  S)^S;_ -&]^!__  D[/_XW1_JU@?YI?>O\@^JT^[/F3_AY;^PM
M_P!''Z)_WZN/_C='_#RW]A;_ *./T3_OU<?_ !NOIO\ X9D_9M_Z-[\#_P#A
M)V?_ ,;H_P"&9/V;?^C>_ __ (2=G_\ &Z/]6L#_ #2^]?Y!]5I]V?,G_#RW
M]A;_ *./T3_OU<?_ !NC_AY;^PM_T<?HG_?JX_\ C=?3?_#,G[-O_1O?@?\
M\).S_P#C='_#,G[-O_1O?@?_ ,).S_\ C='^K6!_FE]Z_P @^JT^[/F3_AY;
M^PM_T<?HG_?JX_\ C='_  \M_86_Z./T3_OU<?\ QNOIO_AF3]FW_HWOP/\
M^$G9_P#QNC_AF3]FW_HWOP/_ .$G9_\ QNC_ %:P/\TOO7^0?5:?=GS)_P /
M+?V%O^CC]$_[]7'_ ,;H_P"'EO["W_1Q^B?]^KC_ .-U]-_\,R?LV_\ 1O?@
M?_PD[/\ ^-T?\,R?LV_]&]^!_P#PD[/_ .-T?ZM8'^:7WK_(/JM/NSYD_P"'
MEO["W_1Q^B?]^KC_ .-T?\/+?V%O^CC]$_[]7'_QNOIO_AF3]FW_ *-[\#_^
M$G9__&Z/^&9/V;?^C>_ _P#X2=G_ /&Z/]6L#_-+[U_D'U6GW9\R?\/+?V%O
M^CC]$_[]7'_QNC_AY;^PM_T<?HG_ 'ZN/_C=?3?_  S)^S;_ -&]^!__  D[
M/_XW1_PS)^S;_P!&]^!__"3L_P#XW1_JU@?YI?>O\@^JT^[/F3_AY;^PM_T<
M?HG_ 'ZN/_C='_#RW]A;_HX_1/\ OU<?_&Z^F_\ AF3]FW_HWOP/_P"$G9__
M !NC_AF3]FW_ *-[\#_^$G9__&Z/]6L#_-+[U_D'U6GW9\R?\/+?V%O^CC]$
M_P"_5Q_\;H_X>6_L+?\ 1Q^B?]^KC_XW7TW_ ,,R?LV_]&]^!_\ PD[/_P"-
MT?\ #,G[-O\ T;WX'_\ "3L__C='^K6!_FE]Z_R#ZK3[L^9/^'EO["W_ $<?
MHG_?JX_^-T?\/+?V%O\ HX_1/^_5Q_\ &Z^F_P#AF3]FW_HWOP/_ .$G9_\
MQNC_ (9D_9M_Z-[\#_\ A)V?_P ;H_U:P/\ -+[U_D'U6GW9\R?\/+?V%O\
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
M@^S^&\WQ:AUJ"YT"+0VU==1MI T<MF(3-YJMT*F/Y@>X->7?L!?M>:M^V]\
MQ\=M1^%'_"(07&M7-EI]A_;?V_[1%"$!G\SR(=N9#(FW:<>7G/.  >VT5\H^
M-/\ @K'\(M%_;@T']BCP1X5?Q+=ZGJ,&G:IXDL=61;;3KQV8-!MV-YK1@+NP
MPPS%.JM7N?[2/[2'PH_91^$VH?&;XR:ZUEI%@5C1((_,GNYWSL@A3(WR-@X&
M0  68JJLP .[HK\^O!'_  <*? 35_&-EIWQ"^!/B[PQX=U.8I9>)II([A0H;
M:9'B4 [%/WO+:0CL#7WYHNM:1XDT:T\1>']3@O;"_MH[FRO+64/'/"ZADD1A
MPRLI!!'!!H LT444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M44C,J*7=@ !DDG@"OE/X??\ !6'X2?%K]NV/]BKX9>%'UF!VNHCXWM=60VCS
M6]I)<2K'&$)D4-&8]X?!.2,K@D ^K:*\P_:U_:[^#?[%_P *I/BQ\9=3N$M7
MN1:Z=IVGPB2[U"X*EA%$A*C.U68LS*J@<GH#\B>#O^#A?X)7WB>QM?B5^SUX
MO\,^']2EVVGB$S1W*[,@&5H@J$HN?F\MG('0,>* /T*KF_A;\*?"/P>\.S^%
M_!<,Z6EQJ5Q?2"XG,C>=,^]SD]L]!VJQ?_$7P?9_#>;XM0ZU!<Z!%H;:NNHV
MT@:.6S$)F\U6Z%3'\P/<&OFWX/\ _!5GX=>)?V*+O]MSX[> 9? VB+KTVF:1
MI-KJO]IW.JN@4*(288 9&<3+L(PHA9F<#.T ^KJ*_._0?^#A_P"#,VOVLGC+
M]FWQEH_AJ]N#';>(!<13DJ#@MY6%#;?X@DC$<X!/!^U/&/[3'P3\#? "7]I_
M7/'-M_PA,>CQZG%K, +K<02!?*$:]6=RZ*J8R68# - '>45^>WAO_@X<^ 6H
M^,+:W\4_ 3QCHWA6\O#!;^*)7BF*X(!=X$[*""P21V Z!C@'[^T#7M%\5:%9
M>)_#>J0WVG:E:1W5A>VT@>.XAD4.DBL."K*00>X- %NBBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBOE']O3_ (*Q_"+]B#QQHWPP'A9_
M&'B/4%,FIZ7IVK) =*B.WRVF8H^&DR2J8!VKN. R[@#ZNHK*\<>-_"GPU\':
MI\0/'6N0:9HVC6,MYJ=_<$A((8U+.QQR< = "2> "3BO@3Q!_P '#_P9M]<N
MIO!G[-GC/6/#5G<".X\0/<0P$ G ;RL.!N_A#R*3QD \  _1"N;^%OPI\(_!
M[P[/X7\%PSI:7&I7%](+B<R-YTS[W.3VST':L/\ 9D_::^$W[7'PDL?C-\&M
M9ENM*NY&AF@NHA'<65PF-]O,@)V2+N4\$@AE9258$^;?##_@H'HGQ'_:L^+'
MP"E\!P:9X9^$FE&ZUSQ[<Z\#&TBA/,C:W\D")4Q<Y<RMQ;D[?F^4 ^B:*_/7
MQG_P<,?!*P\27L'PU_9Z\7^)O#^G2[;OQ#YT=JNW.!(L95R%;'R^8R$]P#Q7
MUW^R7^UQ\'?VS_A1%\6O@WJ=P]J+AK;4=.OXA'=:?<J QAE0%@#M96!4LI!!
M!ZX /3Z*^=/^"@7_  4A^%'[ OAK2Y_$6E?\)'XBUFY LO"UEJ*P3_9@&WW3
ML5;9&" HR/F8X'W6*^T?![XAP_%SX1^%OBO;:6UC'XG\.6.K1V3RB1K=;FW2
M81E@!N*[\9P,XS@4 ='1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !117C7[;W[;'PO_8;^#\OQ.\?%;^_GF6#0O#<%VL5SJDQ8;@F0=J(I
M+.Y!"@ =64$ ]EHKS7]D+]HRR_:T_9T\-_M":=X5ET2'Q%'<NFES78G:#R;J
M:W.7"J&R8MW08W8[5\V?M)_\%Q_@7\&/BOJ/P:^%WPL\0?$35M&N9+?5I]'E
M2&UCEC.)$C?:[RE""&(0)D<,>M 'V[7-^-_A3X1^(/B+PYXH\1PSM=^%M2:^
MTDPSE%68H4)8?Q#!Z5XW^PE_P4I^!/[>EGJ.G> K34-$\2:-"LVI^&]8">:(
M2P7SXG0E98PQ"D\,I(W*-REK?[1G[<?_  H[]JCX5_LK>'_A?_PD>J_$>Y<W
M=W_;?V7^Q[19%4W'E^3)Y_RBX;;NC_U&-WS94 ]]HKXQ_:O_ ."U7P,_9V^+
M5[\"_ ?PWU[X@^)M*G:#5H=%D2*WMIU^_ )"':21,'>%0JI!!;(8#M_V$O\
M@J-\"/VZ]2O_  9X8TG4_#?BS3+8W-SX=UK86E@#!6DAD0XD"EE# A6&X?*1
MS0!]+T5\=_M?_P#!9CX%_LP?%6X^!?A3P!KGC[Q98N$U.RT1TC@M)=N[R3*0
MS/*!@LJ(P7D%@P*CH_V%_P#@JQ\"?VW_ !->?#72M U7PIXPLK=YSX?ULHWV
MF-#B0PRK]]DR-R,J,!D@$!B #ZAHHHH **** "BBB@ HHHH **** "BBB@ H
MHHH ^.OVU_\ @FSXZ_;4_:&M_&7Q4^.U_9?"K0]&A>V\$Z9<RF2[OD\PR2%6
M BA#!D7S 'D(!4!.&KP'_@VJ_P"0/\8_^OG0?_0=0K].==_Y =Y_UZ2?^@FO
MS&_X-JO^0/\ &/\ Z^=!_P#0=0H ^S]<_P"">G[.^O?M?6W[;^NIK%QXQLG2
M6.*XU!'L T=I]FC;R60[2B@.I5AB10_6O@/]K;QEX:_X*%_\%=_AUX._9CB3
M4H/!UQ90Z[XKL%S'(EI>-<W,ZR#AHHE.Q')P\API(9">G_X+B_\ !1[Q1HWB
M>Z_8@^#.OMID0MHO^$_UN!V$CB9 ZV*,N2L?ELK2E<E@XCX =6U_^"<?[7G_
M  2G_8[\*:?\-/AUXVUK5?&/B2XM[;7/$USX3N$DO[EV"K$I(_<VZNWRIG_:
M8ELF@#N?^"Q.?C?\?/V>/V+;8F:#Q/XW&K:_;CG;:1,D(<CO^ZDO3_P"O3?V
M]_\ @GY\3?VZ/B=X7T;4_CS>>&OA=I>GY\0^'M-FD,VIW8F+*1%Q",)@"5]Y
M0]$/->:?#\?\-%_\%W?%7B]OW^E_!OP(NG6,_55NY8PC)['=>WH_[95][T ?
ME'_P0@\.:7X._;>^-7A'0XW2RTK3[BSLT=RS+%%J6Q 2>IVJ.:_4/Q'X1^'V
MHF77_%OA?1[@P0%IKW4;&)RD:@DDNXX4#)ZX%?F7_P $2?\ E()\?/\ =OO_
M $[&OKS_ (*W_%J^^#O_  3\^(6N:/<F*]U73XM%M64X.+R9()<'L1"\I'N*
M /DK]CWP/H/_  5!_P""AOB3]J;Q#X1LX?A9\,;A+;P=HD=@D4%Y.'8VS2(%
M <G:US(#DAFAC.4XK]1J^4O^"+'PHL?A=_P3W\'W<=LJ7GBF:[US47 QYCRS
M,D1_\!XH!^%?5M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% 'QU^VO_P39\=?MJ?M#6_C+XJ?':_LOA5H>C0O;>"=,N93)=WR>89)"K 1
M0A@R+Y@#R$ J G#5X#_P;5?\@?XQ_P#7SH/_ *#J%?ISKO\ R [S_KTD_P#0
M37YC?\&U7_('^,?_ %\Z#_Z#J% 'V?KG_!/3]G?7OVOK;]M_74UBX\8V3I+'
M%<:@CV :.T^S1MY+(=I10'4JPQ(H?K7P'^UMXR\-?\%"_P#@KO\ #KP=^S'$
MFI0>#KBRAUWQ78+F.1+2\:YN9UD'#11*=B.3AY#A20R$]/\ \%Q?^"CWBC1O
M$]U^Q!\&=?;3(A;1?\)_K<#L)'$R!UL49<E8_+96E*Y+!Q'P ZMK_P#!./\
M:\_X)3_L=^%-/^&GPZ\;:UJOC'Q)<6]MKGB:Y\)W"27]R[!5B4D?N;=7;Y4S
M_M,2V30!W/\ P6)S\;_CY^SQ^Q;;$S0>)_&XU;7[<<[;2)DA#D=_W4EZ?^ 5
MZ;^WO_P3\^)O[='Q.\+Z-J?QYO/#7PNTO3\^(?#VFS2&;4[L3%E(BXA&$P!*
M^\H>B'FO-/A^/^&B_P#@N[XJ\7M^_P!+^#?@1=.L9^JK=RQA&3V.Z]O1_P!L
MJ^]Z /RC_P""$'AS2_!W[;WQJ\(Z'&Z66E:?<6=FCN698HM2V("3U.U1S76_
M\%S_  O:_"CX\?!_]M=->T._G\,7]K _@G5+S9-J26E[]K5XDP=\>9&25L?)
MNC^]G P?^")/_*03X^?[M]_Z=C5/_@K9?1_"7_@JE\)/CE\=M#N;_P"'-M:Z
M8\;&V,T"I;WDKW*;,8=T+I*R8)964<YQ0!PGQ@_:=T#_ (*T_MR_!_PC_P (
M[9_"^RT"X4RZAXEU-1=7Q>>&4PQ,$4%SY86!,_,\C'(W8K]E*_'[_@LM^TK\
M OVTOB!\*?!7[(FK+XO\80W<\7]IZ+92QR?Z0\ MK57=59W\P.^/^69)Z%C7
MZ[Z%;ZE::)9VNLW8GO(K6-+J=>DD@4!F_$Y- %JBBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** /G[_@H9^RM\:OVO_AQHGPD^%7QJ;P3IDVL
ME_&-Y%+-ON]/,3J8!'$5\[+E24=T0@<DX /Y]?LB? +P?^R[_P %W]-^ O@*
M[O+C2O#MM<PV]SJ$@::9G\-M+([E0!EI)'.  !G X%?L-7Y9>&/^5E"__P!Z
M;_U%A0!]P_MD_L#? S]NBQT&P^-EUK\:>''N'TW^Q-3%OAI_+#EPR.'.(E R
M.,MCJ:^/?^"]/QS^$,_PP\*?L0?#G2+;5?&(UZRN8-(TJV#MHUND3Q0PJJ#Y
M99?,14B7G8"2 &3=[[_P5L_X* 7O[#WP1M+#X?\ E/XY\8/-;>'GF0.EA%&%
M\Z\93PQ3>BHIX+N"0P1E/P5_P31_:#_X)Z_ '79_VF?VK_B3KGB3XKZC>37$
M37.@W-W'I+.S;IA(0?.N9,EC*?NAMJ\[F(!]A_M:W'B3]C3_ ((FK\-?%5_M
M\1?\(-IWA>9!+D"XNMD5S"K=PD+7 !'41UNZ3^Q?\;-;_P""6WPY_9=^!WQ/
M/@36IM,T^X\1ZLMQ-"\<5PKW-]"/)^9R99R-N5# $%@":\J_X*9_%KP?^V[J
MO[,?P)^&-]/>Z!\3O%\>N70E@:*06$;+ )'1N1^[ENS@_P#/.OT:5510B* H
M&  . * /Q>MOV3O!G[%O_!8/X._ WP5KM]JD5M<Z1=WVIZAM$EU=2M*9'"+Q
M&O "H"< #)8Y8_1O_!QMX=\7ZC^SMX$\1:7!-)HNF^+95U?RP2L<LMN1 [XZ
M#Y95!/=P/XAGA_VQ/^4_7PM_WM#_ )S5]F_\%+/V@O"O[.'[,%]XR^(7[/Y^
M(_AK4+^+3->T1[A(X8H90VV:4O&X">8L: @9#R(1@\T ?(W_  5"_:'_ &-/
MB3_P2U\)>&?ASXX\,ZAJI71O^$1T33KN)[S3#$BK.'A4[[<)")(FW!1N*CJ1
M7TG_ ,$7O&>K>-/^"<W@*76;AYIM,^WZ<DKG),4-[,L2_18]B#V05^>/[5GB
M_P#X)-VO[(QE_8\^&JQ?$OQY]ABGTR>?4+V?PV@ECGN(E>Z)16W1^0&C^9UD
M;!V$U^G7_!,?X%>(OV<_V'/ 7PQ\9:>]IK*:=+?ZM:RKAX)KJ>2Y,3CLZ+*L
M9'8H: />J*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ^?O^
M"AG[*WQJ_:_^'&B?"3X5?&IO!.F3:R7\8WD4LV^[T\Q.I@$<17SLN5)1W1"!
MR3@ _GU^R)\ O!_[+O\ P7?TWX"^ KN\N-*\.VUS#;W.H2!IIF?PVTLCN5 &
M6DD<X  &<#@5^PU?EEX8_P"5E"__ -Z;_P!184 ?</[9/[ WP,_;HL=!L/C9
M=:_&GAQ[A]-_L34Q;X:?RPY<,CASB)0,CC+8ZFOCW_@O3\<_A#/\,/"G[$'P
MYTBVU7QB->LKF#2-*M@[:-;I$\4,*J@^667S$5(EYV D@!DW>^_\%;/^"@%[
M^P]\$;2P^'_E/XY\8/-;>'GF0.EA%&%\Z\93PQ3>BHIX+N"0P1E/P5_P31_:
M#_X)Z_ '79_VF?VK_B3KGB3XKZC>37$37.@W-W'I+.S;IA(0?.N9,EC*?NAM
MJ\[F(!]A_M:W'B3]C3_@B:OPU\57^WQ%_P (-IWA>9!+D"XNMD5S"K=PD+7
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
M3]F?X _!OQ;JOCSX6?"71="UG7-W]KZCIUH(Y;O=)YC;R.N7^;ZUJ_%7X/\
MPP^./A)O GQ=\#Z?XAT9[A)WTW4X/,B,B9*L5]1DXKI** ,SP9X,\*_#OPK8
M>!O ^@VVEZ1I5LMOIVG6<>R*WB485%'8"M.BB@ HHHH **** "BBB@ HHHH
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
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***\K_ &W/VI] _8D_
M9/\ '7[5_BGPK>:YI_@70WU.[TG3YDCFND5E78C/\H/S=3Z4 >J5^(/_  6;
M_P"#KW_AE[]H[2OV>O\ @GK9>'_&'_"'^($?XF>)M17S[#4/+8B71[-U/U$E
MTN=K *F<,3\N?\%6O^#N'XB_MA?L]W'[._[&/PGUSX60>(8W@\7^*M0UJ.74
M9;-AAK2T\E0+<."0\NXN5)50N2Q_&2@#^WW_ ()N_P#!2+]G'_@J!^SC8?M"
M_L]:_P#W;?Q-X9O)5^W^'[_;E[6X0?B4D'RR+AE[@>_U_$'_ ,$W/^"D?[1W
M_!+[]HZP_:%_9ZU[^[;^)O#-Y*WV#Q!8;LM:W"C\2D@^:-L,O<'^GW_@C?\
M\%]OA7_P6'\?>+/ASX%_9[\0>"K[P?X?MM3OY=6U>"[BF\V7RO+C,:J3ALG<
M0,CL.E 'W_7X\?\ !9#XY?%O]HK]M*Z^ OP&U35)+/X8>%+RXU./2;UXU,T=
MN;V_E8H1G9%'%%@\[XRHY;%?JM^T'\9/#_[/?P0\4_&SQ.5-GX:T2>^:)FQY
M\BJ?+A!_O22%$'NXK\7O^";G[?'[/O[-?Q>^(OQZ_:H\+>*O$WB7QM \$<FA
M:7:7$?EW,SSWIE^T7,7,CB(  'A6!/.* /TD_P""-7[3TW[27[%6BVOB#56N
MO$/@J4Z!K+S2%I)4B4&VF;/)W0-&I8_>>-SZU\X?\%A?%?BG1/\ @I)\!=+T
M;Q+J%I;7 TK[1;VMX\<<N=88'<JD!LCCGM7B_P#P1:_:;\&?![]O?6?A7X4O
M+^W\"_$J>>PT2/5U6.>.6*2273S,$=U$I0R0D*S#?..2!FO6/^"S'_*3+]G_
M .FD_P#IY:@#]#/VAOVJOV??V4O#5OXL^/\ \3;'P[:7DK1V*3I)-/=,H!81
M0PJ\DF,KDJI"[ADC(KSKX)?\%4_V$?V@?&]I\-_AU\=+<ZW?S"+3[#5=+NK$
MW4A.%2-YXE1G8\*F[<20 ":\,_X*L^*/^"?6B?'SP3<?M _#?Q=\0_B1;VT
M\/\ @CPQ<-+%/;_:':*.Y@9O+*RR[UVJK22  $%0M?$W_!0'6/$][\;_ (9>
M/U_8+M/@%'-=XTBUM4A@N-5,-Q WG2PPQ0^4T9=0-R!OGQN;:, '[#_%[]L'
M]G#X"_$3P]\)_BY\3H-%U_Q4\::#836%S)]J,DPA7]Y'&R(#(0N790.IP.:X
M#3O^"L7_  3ZU7XGI\)+#]I#2WU26\%K%<_8[D6+S%MH47AB\@@GH^_8>S5\
M4_\ !?#PU:^-/VR_@UX.OI'2#5M*BLYGC.&5)=1V$CWPU6/^"\_[+?[/?P)^
M!OPVU7X-?"#0/#,\.N3Z;)-HVFI!)<0?9]X$SJ TS!D!WR%FRS'/S'(!]I?$
M?_@JQ^P-\*/B7-\)O&G[0=C%K%K<FWOA9Z==75O:3 X,<D\,31JP/##=\A!#
M;<&O>;/Q)X>U#P[%XOL==LYM)FLA>0ZG'<JUN]N4WB82 [2A7YMV<8YSBOS,
M_;J_8T_9R^$W_!'+P_XR\(?"?1+7Q+8Z;X?OI?$T>GH-0NKBZ,*W#27&/,=7
M\YSL)*C"@ ;5QR_[0WQA\>^#O^" /PITS0M5N(QXJU9-"U:Y1R&-BDNH2"'<
M.0&^RQ(1T*!E/!Q0!]F^(/\ @L7_ ,$Y/#?BU_!U]^T=:S3QRF.6\L-%OKFT
M5LXXGB@:-Q_M*67WKZ&\$>.?!OQ*\*67CGX?>*+#6M&U*$2V&IZ9=+-#.F<9
M5U)!P001U!!!Y%?'7[$W_!,3]BOQC^P7X-B\9_!S1]:U3QIX-M=3U?Q-<0!M
M0CN+N!93Y,_WH/*+A%5"!^[^8$EL^,_\&\WCSQ;I7B_XL?L^2:W)J'AW2)H+
M_3F+9CAG\Z2"1T'0>:JQDC_ID#ZY /TYU/4[#1=-N-8U6[2WM;2!YKF>0X6.
M-5+,Q/8  G\*_(BP\4?M;_\ !<;]I#Q)X6\&?%6\\#_"7PTX9H(3)Y4-N[LL
M!EAC=/M5U*$=\.P1 K@$8 ;]2OVD/#FM^,/V=_'OA+PU&[ZEJG@O5+/3UC^\
M9Y;25(P/?<PK\]_^#;CQAX<'AGXH_#U[F*/65U#3]0$#$"26VV2Q%@.I". #
MZ&5?6@#D?CM_P1L_:?\ V+/#UO\ &[]A[X^^*/$.L:?>0B\T71[![2_8,X02
M1+#(ZW" D;XV7 3<3N ('Z!?!+]H3QKX9_8XT[XZ_MM^'G\#:QI&EE_&2W%L
M7$1CD\L7 C@WL!(-C[ ,J7*XP*^6?V_?B#_P61^"'BCQ]\9?A=XZT33_ (4Z
M&XNM-+V>E33Q6FV-3\LD+2L=Y;@DFL7PC^TQ\9OVKO\ @B)\7?BA\=/%,>L:
MW'<WMBEW'I\%L!!&;-E79 B+P7;G&>>M 'TSK_\ P5N_X)[>'-+T'6=0_:(M
M'M_$BR/IC6VBWTK^6DSPM))&L!>%?,C=075=VTD9 )KTC]H+]KC]G+]E?P_;
M>(_CY\5=/\/0WP)L+>=));JYQC)CMXE:5P,C)"X7(R1FOA+_ ((F?L&_LR_%
MC]E@_&_XO?"VQ\0Z_<^,)3I]Y?O)_H<5J8C$L85@!^]#LW]X-M;*C%<'X/\
M OA[]NW_ (+D^-O"O[2%L=5T3PG<ZE%IV@W<K"":#3W6"W@V@C]V2QN&4<.=
MV<AFR ?H#^SO_P %&_V,_P!J;Q)_PA?P9^-EE>ZV49HM'O[.>QN9@!D^4EQ&
MGG8 )(3<0 2< 5T/[0G[9/[-7[*M_HNE_'WXG1>'I_$/F_V/'+IMU/\ :/**
M!\&")PN#(GWL?>XZ&OSL_P""XO[+WP7_ &5_^%<?M#?LU^%;'P)X@.O26[Q>
M&85M(V>%%FAN4CCPJ21LI!90,[QG.!6;_P %T/%^I>/=!_9I\>ZY;""[UKPQ
M<ZA>0@8$<DR:;(ZX[8+$4 ?J+\;_ ([?"C]G'X?W'Q3^-/BY-#T"UGBAN-0D
MM9I@CR,$0;84=SEB!P/K6!K'[8_[-N@?L^6O[5&K_$V*'P#>B,VWB$Z;=%7W
MS&%?W0B,HS("O*>_3FO!_P#@NW(D?_!.[7U=@"^OZ4%'J?M*G^0-?/?QG_Y5
MTO"O^YI__IX:@#Z^\>_\%8_^"?WPWL-'U#Q)^T+9LNNV,=[80V.DWMS*+>3E
M))8XH6>#(Y"R!6(((!!!KVKX5_%GX;?&_P #V7Q*^$OC.QU_0]04FTU'3YMR
M,0<,I'5&!X*, RG@@&OB/_@EM_P3X_9!^*'_  3U\/\ B7XD?!S0_$>K^-K6
M]EU;7=0LTEO("+F:!$MIB"]MY:1J/W97Y@2>M>:_\&]/B3Q!X;^)GQA^!D.K
MRWF@Z?);WEKN;Y$N$GEMVD4= 9$"9]?*7TH _3/QR[Q^"=8DC8JRZ5<%6!P0
M?+:OS8_X-Q?%OB?Q);_&1_$_B6_U 6Y\/F(WUX\WE@C4MVW<3C.!G'7 K])O
M'G_(CZS_ -@FX_\ 135^8W_!MC_R#_C;_N^'OY:G0!]F6O\ P51_8"O?A]J7
MQ0MOVCM,.C:5=QVMU-)IUY'*\[JS+'%"\(EF;:K$^6K;0,G%=3^S1^W)^RU^
MUZ;VV^ /Q6M=:O--B$M_ILMI-:W4,9('F>5.B,R9(&]05!8 G) K\T/^#?[]
MF7X*?'3QE\1O&WQA^'>E>)F\+VFEP:18ZY9)=6T379NC)*89 49P+9 &(.,G
M&#71?LQ>!/#'P._X.!=;^&/POTF+1]"#:DD>EV0V0QQ2Z3]K,2J.%02D%5'"
M[0   * /T6_:/_;/_9C_ &2K2UN/C_\ %JPT&6_4M8V'E2W%W.H."ZP0(\A3
M/&_;MSQFLS]FW]O[]D?]K75)O#WP+^,5GJFJV\!FFT>YM)[.[$8QEUCN$0R*
M,C+)N R,D9K\]O@3X(\(_MG_ /!<?XF6/[1VC0:_IWA:ZUE=,T35E$EM*EA<
MQV5M$T3?*T81C+L(VLP)(.3G[*;_ ():?LAZ+^UQH7[2GP\GO/!/B#1$@N;/
MPMX.GM;&PG:,NK2O;B(MLD0^4ZQE%8*<\LQ(!]14444 %%%>5_MN?M3Z!^Q)
M^R?XZ_:O\4^%;S7-/\"Z&^IW>DZ?,D<UTBLJ[$9_E!^;J?2@#R+_ (*[?\%=
MO@!_P2*^ $'Q3^*=E+K_ (HU^66U\#>!K"Z6*XUBXC4%W9R&\BVCW)YDVUMN
M] %9G53_ #V?&;_@[@_X+(?$?QG-X@^'7Q0\)_#[2S,3;:#X>\$6-W&D>3M5
MY=1CN)7;& 6#*">0%Z5X5_P6[_X*G3?\%;/VQT_:#T?PIJGAWPQI/ABST;PS
MX<U6\2:2SC3?+.[&/Y-TD\LAR.2HC!^Z,?'E '] '_!)C_@\!\8>,?BCI'P'
M_P""GWAS0+73M:NH[.P^*OAZU-FEA,Y"J=1MMQC\DL?FGB\L1#!:,KN=?WZB
MECFC6:&171U#(ZG(8'H0>]?P"U_8K_P;A?M3^)OVL_\ @D1\+O%GC07$FK>%
MK2;PG>WMU-YC7@TYO(AF+=23 (@2W)96)ZT >[?\%(_CWXX_9E_8K\<_&3X;
M1C^W-.L[>#3;AH@XM9+FZBMOM!4@@F,2EP"""RKD$9K\X_V+?^"97A__ (*/
M?"<_'[XF?MQZE>>-;VYN3=Z4NV_O-*9)F1&N3--YA+A5D  0;77#'M^HW[5W
MC_\ 9O\  7P6U-?VKM:T^S\%ZVITK41J<,KQ7!E1R(L1*6#$(Q!&""H(((%?
MGAK/_!";P9\3]"T_X^?L#?M8/'I&K0_;?#J:]:S)A23@K=PA94 .5PT.\8Y)
M(- 'K?\ P2F\#?\ !1#]G/XT^)_V>?VBM$UW6/AO:I=)X?\ $VI70FAAN()5
M6-K9G<R+;SQ;F"$84A2 I+YY/_@X(^*?Q>\)_P#"M?A_9>*M7T/X?:_<7)\3
M7>BLP:ZEC>$>7)M(WA(G9UC)"NQ).=@*XG_!,_\ :Z_;"^"_[<L__!.K]K7Q
M?<^)"XN;:TN=1OS>3Z?<Q6C7<;)<M\\L$L"\*^2I9,;,,IQOVH?'OQO_ ."N
M?[=&L?L#_#WQ)9^&OA]X$U*ZFU:[FL5FD=[&3[-->L.&=O.E\J*-61=KAF/)
M( .0^&%M\-?V4?\ @I#\)?AS_P $V?V@_$'C70?%<M@/&NFRZ@EU;-;SR S;
MS%''&Q2U)F(*%X63DYRJ_IA^WK>7FG?L2?%J_P!/NI()X?AWK#PS0R%71A:2
M$,".00>XK\I/V=?C9XK_ ."+7QY^)?PK^,_P7T[5]?N="?\ X13Q"MH-TD@#
M&V=)3AS8SG'F*IW*T8!PRL!]\:O^T9XV_:Q_X)"?$'X\^.?AM#X6N-<^'6OM
M:Z=#?-.LL"6\T:S@LB% Y5B%.?EVG<0U 'PI_P $X?\ @G/\0_V_/@OK/Q7N
M/VPO$GA632O$TND)9)937HDV6UO-YI8W<6/]?C;C^'.>>.M_9T\>?M2_\$VO
M^"FV@?L=^.?C=?>,_"_B35+#3YK>YNY9()8KW"6]S'%*[FUF21EW!2<A2,L"
MK5PO_!,CX=?\%3?&7P-UR[_8;^+NC^'_  LOBF6+5+2_:U61[_[-;EY 9;:5
M@/*,(X8#*GC.2?JG]BO_ ()%_'G0?VHH?VQ?VY_B]8^)O$EA="]T^QL;R6Z>
M:[5-D4UQ-(B!5B !2*,$95.0J[2 ?H97Y5?\%:?CI\3_ (O_ +>_A[]AF_\
MCJ_PU^'[06*:IJ[W#0VTTERAD:XN"KIYJ*"L2H[",.I)(R2/U5KXD_;C^!O_
M  3P_P""@OQUM/V>O$OQE_L7XS:3!+:6#Z/;2&Y$<<;7#6\ZO'Y4R*I>0+O5
MAEMK $@@'SG\:_\ @CC\>_V5O"VD_'7]@#X_^*/$^N1W\/G66D!;:>6)P2+B
M*2*79*@( :-@05<G) (/W]X(_:9O/A1^QWH'QX_;DC_X0?5+>P@@\7+/9O*(
M;PR^0&\NV60@2L%<!00HD XQ7YK_ !T_X)U?MY_\$O/!=_\ M"_ /]J1[KPU
MH<T4FI?V/=SV,RH\JQJ\UE(7@G3>Z@J6?KG:0"1[#^U9^U-KG[8G_!"V[^,W
MBZPAM]<DUBPL=<6U3;%)<P:E$AE0?PAUV/MZ*6(' H ^I?'G_!67_@G[\.+#
M1]1\1_M#6;+KEC'>6,5AI5Y<RBW?[LDL<4+/!D<A9 K$$$ @YK4^)?\ P4S_
M &&OA/X&T/XA^*_V@](?3O$MJ;G0AI<4UY/=1!BA?R8$9XP'5D)D"X9&4_,I
M ^.OV<?V-OV<+O\ X(@^(OBUK?PDT._\5ZEX#\0:W)XDO-.CDO8;FV:Z-OY,
MS O"J"",;4(!^;(.XYJ_\$(?V._V=/C3^S-XU^)/QA^$VB>)]0O?%<^A1OK>
MGI<_9+6.SMI?W.\'R79KER73#?*O/% 'Z(_ 7]HOX*_M/>!%^)/P*\?VGB#2
M#.8))[97C>"4 $QRQ2*LD3X(.UU!P01P0:\H^,/_  5B_8'^!OC6[^'?CGX\
M0/K&GW!@U"UTC2;N^6UD!PR/)!$T893D,H8LI!! /%?&O_!NOJ=OH\?QTTW6
MM;:UTFTM=(FN9WN3$MNJ_P!H!Y=X(\O"#)8$8V@YX%9_P<\;?L06GB7Q9X6_
M8)_X)D>)OCI)=78BO=>\96T4]A:\$*(IKF*9H8WY;]YY;OCDX48 /TK^ '[3
M7P(_:E\(R>./@)\2;'Q%IT$PBNFME>.6VD(R%EAE59(B1R-RC(Z9K\_?^"&G
MBOQ3K_[6WQQLM=\2ZA>PVX/D17=X\BQ_Z?,/E#$@<<<5A?\ !O:-4TC]HKXS
M>';C21I2I8V_VG2(I_,2VECNYE$8;)W;-SJ&R<COS5W_ ((._P#)W_QW^A_]
M.$U &A_P17\5^*==_;M^.NGZWXEU"\M[<7?V>"ZO'D2+_B:,/E5B0O''%<M\
M9/B_^T[_ ,%=?VW=<_9/^!7Q3N?"/PT\+R7*W]W9R2+'<6UO*(9+R<1LK7+2
M2L!%"6"A2I.TAWK9_P""(?\ R?Q\>_I=_P#IU:N>_P"#>^YC\&_M3_%3X9^+
M6$/B Z$%,,YQ(6MKPI<+SR2&D0D=>,]J %^._P#P2/\ VL/V#-+T[X[?L-_'
M?Q7XFU2UU&&/4='T32I(;WYV"B411/(MU#N($D;K@*<MN7=M_2#X'?&'QC+^
MR]HOQ@_:JT"#P'K-MHAG\86^JSQPPV,D197F)W%8T<*) I.5$@4\@UM_'GX_
M_"?]F;X;W/Q:^-7BI='T&TN8()[PV\DS!YI%C0+'$K._+9(520JL<8!KQ?\
M;6^,?["WQ<_88NOB9\;?'USJ_P +]8N8OLEQX7O94GU.ZCE;R[>(*5+N)(F)
M1\*IB+/@(2 "D/\ @M-_P3</B#^P!^T&?]9L^VGPQJ7V?=G'W_L_3_:QM[YQ
M7N7CG]HOX)?#GX*R?M%^+/B)8Q^"(K6WN3XBM ]U T,\B11.GD*[.K/(@!4'
M[V3@ FOR5_: \1_#KQK^PG?Z7^SA_P $JK[0?!>F6%M-#\9?%D%O#J/EK<1C
M[2LHB#W+2L=C%)F7#D!<  >F:+>7EY_P;6ZDMW.SB&?RX=QSM0>*8R!],DT
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
MI + 'V)^SY_P4K_8J_:@\61^ ?A!\;+6ZUZ96:WT?4=/N;*>?:"Q$0N(T$K
M DJA8@ G&!76_M&?M>?LX?LF:-:ZW^T#\4['P^E^S"PMI(I9[FZVXW&."%'D
M91D L%VC<,D9%?F%\'OVT/V!_B)^U-X7\2?M7?L--\,_&.E7]K'9:YX5U">Q
MLK:\28/#<75G$('3:^,N3*< !@5''K7_  5^_9-_:EU']JWPE^V3\&O@];_$
MO1M"T:VMKGPM=Z9_:*0RP332;);($//!()=W[O)#!L[?E) /K#X"_P#!3S]A
M_P#:4\8P?#SX5?'"VGUV[)%GI6IZ=<V,ER0,[8C<1HLC8!.Q6+8'2O3OC7\>
M?@]^SGX(E^(WQM^(&G^'=&BD$?VN^<YED()$<:*"\KD G8BLV 3C -?DUX+_
M &U?V$?'_P"T'X9U;]M']@G_ (5QXCT*ZA6+7/!UW<:;;VTZRJ\5Q<V<0@E
MC=<[]\C <;6  K>_X+4^.-7\=?\ !1KX;_";7/!^K>+/#6D:9IL\/@W1I&\[
M6&N;MVGCAV@GS)DCCA!4$_(,<T ??GP#_P""FG[$?[2_C&/X>?";XXVESKDY
M(M-+U+3[FQENB,G$7VF-!*V 3L4EL G'!KY _P"#COQ5XH\,6?P>/AKQ)?Z?
MY\NO^=]AO'A\S T[&[81G&3C/J:\;_;9\$?$3X\1>$]?_9C_ ."2WQ#^%'B3
MPQ?B1=6T/PC+ L\2@-'E+>W3,J2*C+(<L.1GICM_^#@/6O$GB3X1_L[>(O&6
ME36&KW^C:K<ZK8W$)CDM[E[?2VEC9#@HRN6!4]",4 =E_P '$GBKQ/X:\#_!
M^3PYXCO]/:>YU;SFLKQXC)B*RQNVD9QD]?6OTB\(LS^$]+=V)8Z= 22>2?+6
MOS._X./_ /D1/@U_U]:O_P"BK*OTQ\'?\BCI7_8-@_\ 1:T ?(W_  6!\2?M
MRW7@7PU\)_V,/!WB>0:_<3'Q5XA\,0OY]I"IC6* 21_/$'+NSLN#MB SAF!^
M0/VS?V-/VAO^"5/@7PK^U#\,?VTO$.IZQ<^(H=.U:W?S(4DN'@EFW!6F=;B$
M^0ZLDBG(*DYY _6+XR?&+X=? +X:ZK\6_BOXEATG0M&MC->W<W)ZX5$4<N[,
M0JH,EF( ZU^6]MI_[0?_  7?_:4MM=U/2[SPI\"_!FHE4W'!93@NBL.)KV5
MH)&4@0CJ2/- /:?^"F/_  46^)O@#_@GO\,?&WPXO9/#GBWXQ:-:74EY9.5E
MTZV-G%/=&W8\JV^:)%?J%<D$-@CYN_:$_9G_ &LO^"8GPL^'G[:O@[]J?7M2
MUO6M1M8O%.E73RF".ZFMVN%AD#2L+J$B*2-]ZC)"L,%AM[[_ (.-O"=IX7T7
MX'Z5X=TU+71],LM:L+*U@7$=LB+IPCC [#8H ]DKV7_@O7JFF2_\$\-!FAE0
MI>^,]*^QD'ALVETXQ_P$$T 7?^"EO_!13Q-\._\ @GIX,^+OP3U)]'U_XLVM
MG_9UY"_[[2[>6U^T7#1MVE7*PANJF0L,%0:^2?C5^RU^UC^P1^SGX"_;^\)?
MM8>)+KQ+K%U83>(]+FFE*V[7<)GC61GE872 J(I%D7#%P0,54_X*-Z'K=C_P
M3'_9/N;V-Q$FAWA<L./WT-M)#^<8)'M7UI_P6!U33)?^"2VC3PRH8[U_#OV,
M@\-F-7&/^ J30!I_MT?\%'_$W@O_ ()B>%/VC/A5<+I7B?XFVUC9Z?-#\QTN
M:6!Y+MX]V<F/RI8U8]&=&[5\??$W]E#]K#]D[]D3P=_P4C\-_M;>*)?%.JMI
MVHZWI\EU,?L\%ZN^ O*\K?:#EXEDCD3:WFL.B_-#^VIH>MV/_!&W]FFYO8G$
M2:K?;RPX_?&YDA_.,$CVKZU_X*+ZIILO_!#S2YX94,=[X1\(?8R#PV9+%QC_
M ("I- 'U3^Q[\>!^TY^S%X*^.TEK'!<>(=$CFOX(,^7'=H3%<*F>=HFCD SS
M@"O2J^6_^"+MA?:?_P $U?AO%?JRM(NJRQJW9'U6\9?S!!_&OJ2@ HHK\&/V
M\?\ @[\\/G2_%_P3_9T^&_C[X=>./#NO7-C8>+EM]'U:TEEMIGB9)K2Z0[H7
MVD_(T<BG:=Q *, ?L'_P4)_:LT;]A[]B3XG?M7:R\.?!7A&ZO=-AG^Y<:@R^
M590'_KI=201_\#H_X)[?M6:-^W#^Q)\,?VKM&>'/C7PC:WNI0P?<M]05?*O8
M!_USNHYX_P#@%?R3?MG_ /!=[_@I[^W[\&KO]GO]IS]H*WUCP=?:A;WMWHMA
MX3TVP666!M\6Z2W@21E#X?:6*EE4X^48/V,/^"[W_!3W]@+X-6G[/?[,?[05
MOH_@ZQU"XO;31;_PGIM^L4L[;Y=LEQ \BJ7R^T,%#,QQ\QR ?V>TRXE-O;R3
MB)I"B%@B#+-@=![U^*?_  1__P"#HVT_:-^*?PW_ &+?CAX3\;>,_B%X[UX6
M-WX[O+/2-+L+:5T9@D5G9H"L*A,?.[R,226 (1?VB\2>(=%\(^';_P 6>)+]
M+33M+LI;N_NI 2L,,:%W<X!. JD\>E 'XN?L[>#_ !)_P66_:%\77?[3_P"U
MM/X6:TDCE\/^#1,&,J2/(!!9PRR*BK"$0,0K.QD5FY):O:?A7^QO_P %!/\
M@G#^V5X=T;]GG5/$OQ#^%=_+:OKR@B*T%I)*8YXY8'E*)<1*/,22/D@KV+I6
MC\0_^"7?["__  4<\1>)?C7^PY^T8NCWR:H?^$@LK;29+C31>2#S"4CD\F2'
M>26RA>/.0JC!%>-:UX]_X*"_\$6OC=X5T'XG_%L^+? ^LNTB:4NKS7EC>V<;
MHLZ1)< /:3HKH04 7)7F1=PH _0G_@K9\1OC)\*OV$/&7C+X'ZA=V.K0_98K
MO4]/8BXLK*2=$GEC(Y5@K;=XY169@05R/R?UG1/V<OAA^R#X,_:O^"W[6'BR
M+X\W^OF/5M'AU51+"Z.QE8JBB6-0ODE9'D99=Y&WDA/NW_@L;^VK\7M!\9>%
M/V"OV<4MXM=^)EC!%J>I3Q(Q>WOIWLX;2/>"J>:RR;W(RJE<8R2/DCX@_LG>
M._\ @C;^U)\._C?\2_#.E_$?P:\T337QTH>2EUL_?PJLA(CN(N98)&(W[ V
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
M0W-JDI"O;L7\MDB>8)_JHW'F@<@YK[YH **** "BBB@ HHHH **** "BBB@
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
M;SP'K)M;V[5BOF,@M" TK!  SLJ1Y)5#RK=Q_P %A_\ @GY\>/VV-+^&VG?
MDZ5(/"8U1=1;7=7>)B)ULQ$0Q5S(?W#[B3GH><U]P44 ?$W_  6"_8)^/7[;
MGA?X=Z3\$TT8S>&9M0;4_P"U]1-N,3);*FPA&W<Q-GICBOLWP]93Z9H%CIMS
MCS+>SBCDVG(W*@!Q^(JY10!\.?\ !8']BW]L;]MN\\)^"?@==Z''X1T6&6\U
M*WU/66MS<ZB[%%8H$;<(X@=I]9GKPWX9?L*_\%R_@SX'L/AM\+?CKX>T/0M,
MC9+'3;'68%CB#,68\VI))9BQ))))))K]5:* /D[]J?\ 8 \>?MJ?L+>$OA!\
M8/&MM#\4/#NG6EW_ ,)'(?-@EU1;?R[A9"B@F*4ELLJY!",%.W:?EV[_ ."9
M'_!4S]J*#P7\!OVN/BQH=G\.?!$D:6UU:7D$T\D*((@R+%&'FF$0V*\Y&T$D
MY)8-^J=% 'SW^W!^P%X)_:R_9/M?V;_#]Y%H$OAM;63P7>-&7BL9;:$PQQN!
M\QB:)FC;'(R&P2H!^*KW_@F1_P %7/V@_"W@_P#9;_:.^+'AVR^&?@RYB%G>
M6]Y#.XAB0Q1E%CC66=TB9DC$Q0 -R17ZLT4 > _M7?L!_#K]HO\ 8UM_V1]%
MN_[$MM LK-?!U^T?F_8)[2+RH6<<;PT9>-SU(D8CG%?#]W_P3)_X*T?%_P"'
MWAK]CSXR?%?PS:?"_P +WT;6M_%>Q3;88P5CVA(EGGV([B..78HR 2 JE?U>
MHH YSX0?"WPK\$?A9X?^$/@BW>/2?#>D0:?8B0@NR1(%WN1C+L068]V8FNCH
MHH *X.[_ &6OV8[^ZEOK[]G/P'-/-(TDTTWA"R9Y')R68F+)))R2:[RB@#\)
M_P!K?_@@;\7_ /@L!_P5O\8_$K6/#-K\&OV=/ 36OA;2-2TW1(;2_P#$?V-2
MUZ;"U"!<->27*?;)1LVJA03;2JG[)'_! WXO_P#!'_\ X*W^#OB5H_AFU^,O
M[.GCUKKPMJ^I:EHD-W?^'/MBAK(W]J4*X6\CMD^V1#9M9RXAW!6_=BB@#B]
M_9P_9X\*:S;^(_"WP&\%Z;J%I)YEI?Z?X6M(9H7_ +R.D893[@UUVI:=8:QI
MUQI&JVD=Q:W4+PW,$J[DDC8%65AW!!((]ZFHH _+R_\ ^"57_!0G]BOXQ:UX
M\_X)O_&6P.@ZR^!I6H7<27"0ABR0SQ74;V\_E[BJRY#\L<+DYL^"O^"47[='
M[6?Q^T;XR_\ !2GXMZ=>:5HDD9.B65S'+-<Q(^_[,D=O&EO;Q.?ONI+D=LD,
MOZ=44 ?&G_!43_@F?XR_:[\1^&OC[\ /&]KH'Q%\(11PV<E]*\45W#%,9X=L
MJ*QAFBE9V1MI!WX)7 (\)^)/[$O_  6A_;:LM/\ A#^U3\5O#&C>#K:[CFOI
MX'M#]H9.DQBLXPTSC)(1VC3//R]:_4&B@#X2_P""<_\ P3>_:L_87_:2\06"
M_'>WOOA%<6K7$6GQ1@OJUTPV1^9 X/V66,*"\D;'>%C7)!(C7]A?_@GE^T+^
MSW_P45^)G[3OQ!30QX8\5KKHTHV.IF6X_P!+U2&YBWQ[!M_=HV>3@X%?=E%
M!1110!\;_P#!8C]AOXX?MO\ @/P5X=^"*Z0;C0=7NKF__M?4#;KLDB15VD*V
M3E36-_P4>_X)_P#Q^_:B_9(^%/P7^%Z:*=:\'+:#6!J.I&&+]W8"!MC;#N^<
M>@XYK[AHH \%_:!_9U^(GQ)_X)X:A^S+X;6Q_P"$FN? 5EI$8N+K9;_:8HX5
M;,F#\N4;!QZ5YM^R9_P3GU_1/^";6K_L1?M*M9PW&MW=\\UQHUS]H6V+S)+;
MSH2J@O'(B/M(QE<'@U]AT4 ?F3\"/V$_^"R/[.>B:A^R_P#"CXZ>$M,^'][=
M3&'Q*\JRR6$4I_>R6R-$9X9&!+;!\H<DJZDF0^E?\$HO^";OQM_8:^-OQ#\0
M_$*]TNZT'6;);/P_=VE]YEQ-''<LR/*FT!&,>TD G!)%?=E% 'YE:=_P3>_X
M*.?L??M8^*_BK^PSXK\)7>@>+KFXXUZX4"WMI9O.$5Q%(N2T3'"R1%B0,X&Y
MDK;^"/\ P2Z_;%\"?\%'O"_[7GQ<^).B^+HEDEOO%VN+<^3*]W+8S0&."#RQ
M^YC+Q1I]WY$SM484?HU10!\)?M&?L6?\%#_AQ^UC??M6_L2?':/6K?5Q+]K\
M%^-M:FDAM1*5:6"))28C;EU#J T31X55R!FN=^%W_!.;]M+]HS]M#PU^V-^W
M[KOA/3&\'R6DNEZ#X5PTEP]I,T]NC% 56,2L79F>1V V8 P5_0^B@#X$_P""
MGW_!//\ :K^,_P"U1X)_:]_9*U+1WUOPS86</V/4KM(GM[JTNI;B&X7S5,<B
M'S K(Q_@'#!CC,_;V_8#_;P_;4_9N^$.B>+=0\+7OC_PT^JR^,KAM06WMV:=
MXO)\KRX0IQ'&H;"@ CJW4_H=10!CIH=\OP_'AH[/M(T;[-][Y=_E;.OIFOA[
M_@FO_P $P_C-\!/@)\:/@A^T/>Z79P_$W2(M-MKK0=0-RT,36UW!*YRJX*_:
M%('0X.:^^:* /S*_9:_8@_X+!_LAZ1KW[._P8\:_#RP\):YJSW9\6WDOGO9.
M\:1/<V\97S!(T<<?R.C*&08(R6/IO_!*;_@GG^T-^PI\;/B+-\1K_1]5\,^(
MK9(M*UJSOB;FX:WN',3RPD?NS)'*[$;FVL,9.<U]T44 ?"'_  2]_P""<'QW
M_9<USXN)\<+VRL['Q[I\5IIUWX8UU_M4*[KK>ZR*JM#(%F4JZG(89'2N4\#_
M +*O_!9;]C3Q'XA\/_L\_%7PS\2/#6MWQNH+OQGJ+R7,3[0@D99W5HY"H4,%
MDD0[0>M?HU10!\6?\$R_^";GQ3_9J^+'C']JK]I3Q?I.H>/?&B7,<MAH"_Z+
M9I<7*W-P['8BF1Y$3"HH1%4@%MWR_:=%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% '_
!V0$!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<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="idm140629862272672">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cover - USD ($)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Feb. 17, 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">0-21220<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">ALAMO GROUP 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">74-1621248<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">1627 East Walnut<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Seguin<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">TX<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">78155<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">830<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">379-1480<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock, par value$.10 per share<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">ALG<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NYSE<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityWellKnownSeasonedIssuer', window );">Entity Well-known Seasoned Issuer</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityVoluntaryFilers', window );">Entity Voluntary Filers</a></td>
<td class="text">No<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Large Accelerated Filer<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<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="re">
<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,160,963,116<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11,971,477<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_DocumentsIncorporatedByReferenceTextBlock', window );">Documents Incorporated by Reference</a></td>
<td class="text">Portions of the registrant&#8217;s proxy statement relating to the 2023 Annual Meeting of Stockholders have been incorporated by reference herein in response to Part III.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">0000897077<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2022<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">FY<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</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_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>15
<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="idm140629862192192">
<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_alg_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_AuditorFirmId', window );">Auditor Firm ID</a></td>
<td class="text">185<span></span>
</td>
</tr>
<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_AuditorName', window );">Auditor Name</a></td>
<td class="text">KPMG LLP<span></span>
</td>
</tr>
<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_AuditorLocation', window );">Auditor Location</a></td>
<td class="text">San Antonio, TX<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alg_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</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;">alg_AuditInformationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<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="idm140629860263680">
<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">$ 47,016<span></span>
</td>
<td class="nump">$ 42,115<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable, net</a></td>
<td class="nump">317,581<span></span>
</td>
<td class="nump">237,970<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories, net</a></td>
<td class="nump">352,553<span></span>
</td>
<td class="nump">320,917<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent', window );">Prepaid expenses and other current assets</a></td>
<td class="nump">9,144<span></span>
</td>
<td class="nump">9,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_IncomeTaxesReceivable', window );">Income tax receivable&#160;</a></td>
<td class="nump">916<span></span>
</td>
<td class="nump">1,666<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_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">727,210<span></span>
</td>
<td class="nump">612,168<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_alg_RentalEquipmentNet', window );">Rental equipment, net</a></td>
<td class="nump">33,723<span></span>
</td>
<td class="nump">32,514<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization', window );">Property, plant and equipment</a></td>
<td class="nump">335,078<span></span>
</td>
<td class="nump">321,863<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization', window );">Less:&#160; Accumulated depreciation</a></td>
<td class="num">(180,071)<span></span>
</td>
<td class="num">(169,372)<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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization', window );">Total property, plant and equipment, net</a></td>
<td class="nump">155,007<span></span>
</td>
<td class="nump">152,491<span></span>
</td>
</tr>
<tr class="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">195,858<span></span>
</td>
<td class="nump">202,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_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets, net</a></td>
<td class="nump">171,341<span></span>
</td>
<td class="nump">183,466<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxAssetsNet', window );">Deferred income taxes</a></td>
<td class="nump">969<span></span>
</td>
<td class="nump">1,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_OtherAssetsNoncurrent', window );">Other non-current assets</a></td>
<td class="nump">24,400<span></span>
</td>
<td class="nump">21,587<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,308,508<span></span>
</td>
<td class="nump">1,205,742<span></span>
</td>
</tr>
<tr class="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 );">Trade accounts payable</a></td>
<td class="nump">97,537<span></span>
</td>
<td class="nump">101,396<span></span>
</td>
</tr>
<tr class="re">
<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 );">Income taxes payable</a></td>
<td class="nump">6,592<span></span>
</td>
<td class="nump">2,613<span></span>
</td>
</tr>
<tr class="ro">
<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 liabilities</a></td>
<td class="nump">71,368<span></span>
</td>
<td class="nump">73,523<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent', window );">Current maturities of long-term debt and finance lease obligations</a></td>
<td class="nump">15,009<span></span>
</td>
<td class="nump">15,032<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_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">190,506<span></span>
</td>
<td class="nump">192,564<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtAndCapitalLeaseObligations', window );">Long-term debt and finance lease obligations, net of current maturities</a></td>
<td class="nump">286,943<span></span>
</td>
<td class="nump">254,522<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedIncomeTaxesNoncurrent', window );">Long-term tax liability</a></td>
<td class="nump">3,781<span></span>
</td>
<td class="nump">4,416<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesNoncurrent', window );">Other long-term liabilities</a></td>
<td class="nump">23,668<span></span>
</td>
<td class="nump">27,119<span></span>
</td>
</tr>
<tr class="ro">
<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">18,250<span></span>
</td>
<td class="nump">21,458<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>Stockholders&#8217; equity:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common stock, $.10 par value, 20,000,000 shares authorized; 11,913,890 and 11,874,178 outstanding at December 31, 2022 and December 31, 2021, respectively</a></td>
<td class="nump">1,191<span></span>
</td>
<td class="nump">1,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_AdditionalPaidInCapitalCommonStock', window );">Additional paid-in capital</a></td>
<td class="nump">129,820<span></span>
</td>
<td class="nump">124,228<span></span>
</td>
</tr>
<tr class="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 );">Treasury stock, at cost; 82,600 shares at December 31, 2022 and December 31, 2021</a></td>
<td class="num">(4,566)<span></span>
</td>
<td class="num">(4,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_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="nump">727,183<span></span>
</td>
<td class="nump">633,804<span></span>
</td>
</tr>
<tr class="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 );">Accumulated other comprehensive loss</a></td>
<td class="num">(68,268)<span></span>
</td>
<td class="num">(48,990)<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">785,360<span></span>
</td>
<td class="nump">705,663<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 stockholders&#8217; equity</a></td>
<td class="nump">$ 1,308,508<span></span>
</td>
<td class="nump">$ 1,205,742<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alg_RentalEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Rental 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;">alg_RentalEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_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_AccruedIncomeTaxesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 domestic and foreign income tax obligations due beyond one year or the operating cycle, whichever is longer. Alternate captions include income taxes payable, noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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(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_AccruedIncomeTaxesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_AdditionalPaidInCapitalCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.</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)(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_AdditionalPaidInCapitalCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredIncomeTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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_DeferredIncomeTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxLiabilitiesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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_IncomeTaxesReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount due within one year of the balance sheet date (or one operating cycle, if longer) from tax authorities as of the balance sheet date representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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.5(c))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 2: 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(3)(a)(4))<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 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.10)<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_IncomeTaxesReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_LongTermDebtAndCapitalLeaseObligations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 long-term debt and lease obligation, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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_LongTermDebtAndCapitalLeaseObligations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 long-term debt and lease obligation, 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 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_LongTermDebtAndCapitalLeaseObligationsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_PrepaidExpenseAndOtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="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(9))<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_PrepaidExpenseAndOtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 and amortization from plant, property, and equipment and right-of-use asset from finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918638-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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 and amortization, of property, plant, and equipment and finance lease right-of-use asset.</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 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://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> -Subparagraph (a)<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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 amortization, of property, plant, and equipment and finance lease right-of-use asset.</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 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><br>Reference 2: 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(18))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>17
<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="idm140629860187792">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets (Parenthetical) - $ / shares<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_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_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (in dollars per share)</a></td>
<td class="nump">$ 0.10<span></span>
</td>
<td class="nump">$ 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_CommonStockSharesAuthorized', window );">Common stock, shares authorized (in shares)</a></td>
<td class="nump">20,000,000<span></span>
</td>
<td class="nump">20,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common stock, shares outstanding (in shares)</a></td>
<td class="nump">11,913,890<span></span>
</td>
<td class="nump">11,874,178<span></span>
</td>
</tr>
<tr class="re">
<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 (in shares)</a></td>
<td class="nump">82,600<span></span>
</td>
<td class="nump">82,600<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_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_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_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>18
<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="idm140629859850624">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Income - 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_RevenuesAbstract', window );"><strong>Net sales:</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total net sales</a></td>
<td class="nump">$ 1,513,616<span></span>
</td>
<td class="nump">$ 1,334,223<span></span>
</td>
<td class="nump">$ 1,163,466<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of sales</a></td>
<td class="nump">1,137,098<span></span>
</td>
<td class="nump">999,709<span></span>
</td>
<td class="nump">869,736<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">376,518<span></span>
</td>
<td class="nump">334,514<span></span>
</td>
<td class="nump">293,730<span></span>
</td>
</tr>
<tr class="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 expenses</a></td>
<td class="nump">212,649<span></span>
</td>
<td class="nump">202,939<span></span>
</td>
<td class="nump">184,199<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AmortizationOfDeferredCharges', window );">Amortization expense</a></td>
<td class="nump">15,277<span></span>
</td>
<td class="nump">14,637<span></span>
</td>
<td class="nump">14,746<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">148,592<span></span>
</td>
<td class="nump">116,938<span></span>
</td>
<td class="nump">94,785<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Interest expense</a></td>
<td class="num">(14,361)<span></span>
</td>
<td class="num">(10,533)<span></span>
</td>
<td class="num">(15,837)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InvestmentIncomeInterest', window );">Interest income</a></td>
<td class="nump">752<span></span>
</td>
<td class="nump">1,149<span></span>
</td>
<td class="nump">1,366<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncomeExpense', window );">Other income</a></td>
<td class="num">(673)<span></span>
</td>
<td class="nump">1,944<span></span>
</td>
<td class="num">(557)<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income taxes</a></td>
<td class="nump">134,310<span></span>
</td>
<td class="nump">109,498<span></span>
</td>
<td class="nump">79,757<span></span>
</td>
</tr>
<tr class="ro">
<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">32,382<span></span>
</td>
<td class="nump">29,253<span></span>
</td>
<td class="nump">21,953<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">$ 101,928<span></span>
</td>
<td class="nump">$ 80,245<span></span>
</td>
<td class="nump">$ 57,804<span></span>
</td>
</tr>
<tr class="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 income per common 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_EarningsPerShareBasic', window );">Basic (in dollars per share)</a></td>
<td class="nump">$ 8.58<span></span>
</td>
<td class="nump">$ 6.78<span></span>
</td>
<td class="nump">$ 4.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_EarningsPerShareDiluted', window );">Diluted (in dollars per share)</a></td>
<td class="nump">$ 8.54<span></span>
</td>
<td class="nump">$ 6.75<span></span>
</td>
<td class="nump">$ 4.88<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alg_AverageCommonSharesAbstract', window );"><strong>Average common 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_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic (in shares)</a></td>
<td class="nump">11,877<span></span>
</td>
<td class="nump">11,837<span></span>
</td>
<td class="nump">11,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_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted (in shares)</a></td>
<td class="nump">11,934<span></span>
</td>
<td class="nump">11,896<span></span>
</td>
<td class="nump">11,845<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=alg_VegetationManagementMember', window );">Vegetation 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_RevenuesAbstract', window );"><strong>Net sales:</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total net sales</a></td>
<td class="nump">$ 937,065<span></span>
</td>
<td class="nump">$ 812,676<span></span>
</td>
<td class="nump">$ 654,630<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">108,508<span></span>
</td>
<td class="nump">78,917<span></span>
</td>
<td class="nump">46,651<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=alg_IndustrialManagementMember', window );">Industrial Equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuesAbstract', window );"><strong>Net sales:</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total net sales</a></td>
<td class="nump">576,551<span></span>
</td>
<td class="nump">521,547<span></span>
</td>
<td class="nump">508,836<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">$ 40,084<span></span>
</td>
<td class="nump">$ 38,021<span></span>
</td>
<td class="nump">$ 48,134<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alg_AverageCommonSharesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Average Common Shares [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;">alg_AverageCommonSharesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_AmortizationOfDeferredCharges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amortization of deferred charges applied against earnings 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 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_AmortizationOfDeferredCharges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CostOfGoodsAndServicesSold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI https://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<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.2(a),(d))<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_CostOfGoodsAndServicesSold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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_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_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_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_InterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 cost of borrowed funds accounted for as interest 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 835<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6450988&amp;loc=d3e26243-108391<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28555-108399<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (d)<br> -URI 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 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (210.5-03(11))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04.9)<br> -URI 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_InterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIncomeInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 accretion (amortization) of purchase discount (premium) of interest income on nonoperating 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 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7(b))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (c)<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_InvestmentIncomeInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_OtherNonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (expense) related to nonoperating activities, classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.9)<br> -URI 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_OtherNonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 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 40<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9031-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 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 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130543-203045<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 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 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 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<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 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130545-203045<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI https://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenuesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RevenuesAbstract</td>
</tr>
<tr>
<td style="padding-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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=alg_VegetationManagementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_VegetationManagementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=alg_IndustrialManagementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_IndustrialManagementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>19
<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="idm140629861562048">
<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_StatementOfIncomeAndComprehensiveIncomeAbstract', window );"><strong>Statement of Comprehensive Income [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">$ 101,928<span></span>
</td>
<td class="nump">$ 80,245<span></span>
</td>
<td class="nump">$ 57,804<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract', window );"><strong>Other comprehensive income (loss), net of tax:</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_OciBeforeReclassificationsNetOfTaxAttributableToParent', window );">Foreign currency translation adjustment, net of tax (expense) benefit of $1,069, $(344), and $810</a></td>
<td class="num">(23,032)<span></span>
</td>
<td class="num">(15,800)<span></span>
</td>
<td class="nump">8,862<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax', window );">Unrealized income (loss) on derivative instruments, net of tax (expense) benefit of $(497), $(1,405), and $1,842, respectively</a></td>
<td class="nump">2,047<span></span>
</td>
<td class="nump">5,298<span></span>
</td>
<td class="num">(7,484)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent', window );">Recognition of deferred pension and other post-retirement benefits, net of tax (expense) benefit of $(194), $(356), and $230, respectively</a></td>
<td class="nump">1,707<span></span>
</td>
<td class="nump">1,838<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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Other comprehensive (loss) income, net of tax</a></td>
<td class="num">(19,278)<span></span>
</td>
<td class="num">(8,664)<span></span>
</td>
<td class="nump">512<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_ComprehensiveIncomeNetOfTax', window );">Comprehensive income</a></td>
<td class="nump">$ 82,650<span></span>
</td>
<td class="nump">$ 71,581<span></span>
</td>
<td class="nump">$ 58,316<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_OciBeforeReclassificationsNetOfTaxAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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, before reclassification adjustments, of other comprehensive income (loss), attributable to 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 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 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_OciBeforeReclassificationsNetOfTaxAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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, of gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.</p></div>
<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 11<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e637-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (d)<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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 other comprehensive income (loss) attributable to parent 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 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 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=126929396&amp;loc=SL4569643-111683<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI https://asc.fasb.org/extlink&amp;oid=126929396&amp;loc=SL4569616-111683<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 adjustments of other comprehensive income (loss) attributable to 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 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 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=124507222&amp;loc=d3e1436-108581<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_StatementOfIncomeAndComprehensiveIncomeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementOfIncomeAndComprehensiveIncomeAbstract</td>
</tr>
<tr>
<td style="padding-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>20
<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="idm140629859593616">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Comprehensive Income (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_StatementOfIncomeAndComprehensiveIncomeAbstract', window );"><strong>Statement of Comprehensive Income [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_OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent', window );">Foreign currency translation adjustment, tax expense</a></td>
<td class="nump">$ 1,069<span></span>
</td>
<td class="num">$ (344)<span></span>
</td>
<td class="nump">$ 810<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent', window );">Unrealized gain (loss) on derivative instruments</a></td>
<td class="num">(497)<span></span>
</td>
<td class="num">(1,405)<span></span>
</td>
<td class="nump">1,842<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax', window );">Net gain on pension and other post-retirement benefits</a></td>
<td class="num">$ (194)<span></span>
</td>
<td class="num">$ (356)<span></span>
</td>
<td class="nump">$ 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_OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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), after reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=126929396&amp;loc=SL4569643-111683<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI https://asc.fasb.org/extlink&amp;oid=126929396&amp;loc=SL4569616-111683<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-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_OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 reclassification, of tax expense (benefit) for gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness, attributable to parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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) of reclassification adjustment from accumulated other comprehensive income (loss) for 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 12<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e640-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_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_StatementOfIncomeAndComprehensiveIncomeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementOfIncomeAndComprehensiveIncomeAbstract</td>
</tr>
<tr>
<td style="padding-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>21
<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="idm140629861355024">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Statements of Stockholders' Equity - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th"><div>Total</div></th>
<th class="th"><div>Common Stock</div></th>
<th class="th"><div>Additional Paid-in Capital</div></th>
<th class="th"><div>Treasury Stock</div></th>
<th class="th"><div>Retained Earnings</div></th>
<th class="th"><div>Accumulated Other Comprehensive Income</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_SharesOutstanding', window );">Beginning balance (in shares) at Dec. 31, 2019</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11,670<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning balance at Dec. 31, 2019</a></td>
<td class="nump">$ 577,943<span></span>
</td>
<td class="nump">$ 1,175<span></span>
</td>
<td class="nump">$ 113,666<span></span>
</td>
<td class="num">$ (4,566)<span></span>
</td>
<td class="nump">$ 508,506<span></span>
</td>
<td class="num">$ (40,838)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Other comprehensive income</a></td>
<td class="nump">58,316<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">57,804<span></span>
</td>
<td class="nump">512<span></span>
</td>
</tr>
<tr class="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-based compensation expense</a></td>
<td class="nump">4,119<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,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>
</tr>
<tr class="ro">
<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-based compensation transactions (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">57<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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-based compensation transactions</a></td>
<td class="nump">749<span></span>
</td>
<td class="nump">$ 6<span></span>
</td>
<td class="nump">743<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsCash', window );">Dividends paid</a></td>
<td class="num">(6,124)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(6,124)<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_SharesOutstanding', window );">Ending balance (in shares) at Dec. 31, 2020</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11,727<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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 );">Ending balance at Dec. 31, 2020</a></td>
<td class="nump">635,003<span></span>
</td>
<td class="nump">$ 1,181<span></span>
</td>
<td class="nump">118,528<span></span>
</td>
<td class="num">(4,566)<span></span>
</td>
<td class="nump">560,186<span></span>
</td>
<td class="num">(40,326)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Other comprehensive income</a></td>
<td class="nump">71,581<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">80,245<span></span>
</td>
<td class="num">(8,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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation expense</a></td>
<td class="nump">5,987<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,987<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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-based compensation transactions (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">64<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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-based compensation transactions</a></td>
<td class="num">(281)<span></span>
</td>
<td class="nump">$ 6<span></span>
</td>
<td class="num">(287)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsCash', window );">Dividends paid</a></td>
<td class="num">(6,627)<span></span>
</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,627)<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_SharesOutstanding', window );">Ending balance (in shares) at Dec. 31, 2021</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11,791<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending balance at Dec. 31, 2021</a></td>
<td class="nump">705,663<span></span>
</td>
<td class="nump">$ 1,187<span></span>
</td>
<td class="nump">124,228<span></span>
</td>
<td class="num">(4,566)<span></span>
</td>
<td class="nump">633,804<span></span>
</td>
<td class="num">(48,990)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Other comprehensive income</a></td>
<td class="nump">82,650<span></span>
</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">101,928<span></span>
</td>
<td class="num">(19,278)<span></span>
</td>
</tr>
<tr class="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-based compensation expense</a></td>
<td class="nump">5,561<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,561<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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-based compensation transactions (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">40<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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-based compensation transactions</a></td>
<td class="nump">35<span></span>
</td>
<td class="nump">$ 4<span></span>
</td>
<td class="nump">31<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsCash', window );">Dividends paid</a></td>
<td class="num">(8,549)<span></span>
</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">(8,549)<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_SharesOutstanding', window );">Ending balance (in shares) at Dec. 31, 2022</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11,831<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending balance at Dec. 31, 2022</a></td>
<td class="nump">$ 785,360<span></span>
</td>
<td class="nump">$ 1,191<span></span>
</td>
<td class="nump">$ 129,820<span></span>
</td>
<td class="num">$ (4,566)<span></span>
</td>
<td class="nump">$ 727,183<span></span>
</td>
<td class="num">$ (68,268)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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_DividendsCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of paid and unpaid cash dividends declared for classes of stock, for example, but not limited to, common and preferred.</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 405<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=6957935&amp;loc=d3e64057-112817<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DividendsCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInStockholdersEquityRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_SharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 issued which are neither cancelled nor held in the treasury.</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_SharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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>22
<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="idm140629862491504">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Stockholders' Equity (Parenthetical) - $ / 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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockDividendsPerShareCashPaid', window );">Dividends paid (in dollars per share)</a></td>
<td class="nump">$ 0.72<span></span>
</td>
<td class="nump">$ 0.56<span></span>
</td>
<td class="nump">$ 0.52<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_CommonStockDividendsPerShareCashPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 dividends paid during the period for each share of common stock 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 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockDividendsPerShareCashPaid</td>
</tr>
<tr>
<td style="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_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>23
<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="idm140629859908208">
<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>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_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 101,928<span></span>
</td>
<td class="nump">$ 80,245<span></span>
</td>
<td class="nump">$ 57,804<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net income to 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_ProvisionForDoubtfulAccounts', window );">Provision for doubtful accounts</a></td>
<td class="nump">424<span></span>
</td>
<td class="nump">506<span></span>
</td>
<td class="nump">860<span></span>
</td>
</tr>
<tr class="re">
<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 - PP&amp;E</a></td>
<td class="nump">23,673<span></span>
</td>
<td class="nump">21,229<span></span>
</td>
<td class="nump">19,264<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquipmentExpense', window );">Depreciation - Rental</a></td>
<td class="nump">7,739<span></span>
</td>
<td class="nump">8,613<span></span>
</td>
<td class="nump">9,830<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization of intangibles</a></td>
<td class="nump">15,277<span></span>
</td>
<td class="nump">14,637<span></span>
</td>
<td class="nump">14,746<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AmortizationOfFinancingCosts', window );">Amortization of debt issuance</a></td>
<td class="nump">667<span></span>
</td>
<td class="nump">667<span></span>
</td>
<td class="nump">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_ShareBasedCompensation', window );">Stock-based compensation expense</a></td>
<td class="nump">5,561<span></span>
</td>
<td class="nump">5,987<span></span>
</td>
<td class="nump">4,119<span></span>
</td>
</tr>
<tr class="ro">
<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 tax (benefit) expense</a></td>
<td class="num">(2,337)<span></span>
</td>
<td class="num">(1,182)<span></span>
</td>
<td class="num">(855)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment', window );">Gain on sale of property, plant and equipment</a></td>
<td class="num">(161)<span></span>
</td>
<td class="num">(3,779)<span></span>
</td>
<td class="num">(1,094)<span></span>
</td>
</tr>
<tr class="ro">
<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, net 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="re">
<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 );">&#160;&#160;&#160;&#160;&#160; &#160;Accounts receivable</a></td>
<td class="num">(85,055)<span></span>
</td>
<td class="num">(27,571)<span></span>
</td>
<td class="nump">28,064<span></span>
</td>
</tr>
<tr class="ro">
<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="num">(37,739)<span></span>
</td>
<td class="num">(78,463)<span></span>
</td>
<td class="nump">38,275<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_alg_IncreaseDecreaseInRentalEquipment', window );">Rental equipment</a></td>
<td class="num">(9,196)<span></span>
</td>
<td class="nump">1,138<span></span>
</td>
<td class="nump">4,542<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets', window );">Prepaid expenses and other</a></td>
<td class="num">(6,146)<span></span>
</td>
<td class="num">(6,994)<span></span>
</td>
<td class="nump">6,373<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities', window );">Trade accounts payable and accrued liabilities</a></td>
<td class="num">(2,879)<span></span>
</td>
<td class="nump">32,532<span></span>
</td>
<td class="num">(3,783)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable', window );">Income taxes payable</a></td>
<td class="nump">2,934<span></span>
</td>
<td class="nump">4,648<span></span>
</td>
<td class="nump">6,601<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedTaxesPayable', window );">Long term tax payable</a></td>
<td class="num">(635)<span></span>
</td>
<td class="nump">462<span></span>
</td>
<td class="num">(3,478)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities', window );">Other assets and liabilities, net</a></td>
<td class="nump">475<span></span>
</td>
<td class="num">(3,008)<span></span>
</td>
<td class="nump">2,431<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">14,530<span></span>
</td>
<td class="nump">49,667<span></span>
</td>
<td class="nump">184,333<span></span>
</td>
</tr>
<tr class="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>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" 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">(2,000)<span></span>
</td>
<td class="num">(17,798)<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_PaymentsToAcquirePropertyPlantAndEquipment', window );">Purchase of property, plant and equipment</a></td>
<td class="num">(31,141)<span></span>
</td>
<td class="num">(25,263)<span></span>
</td>
<td class="num">(17,874)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment', window );">Proceeds from sale of property, plant and equipment</a></td>
<td class="nump">1,566<span></span>
</td>
<td class="nump">9,667<span></span>
</td>
<td class="nump">3,703<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireIntangibleAssets', window );">Purchase of patents</a></td>
<td class="num">(163)<span></span>
</td>
<td class="num">(44)<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_NetCashProvidedByUsedInInvestingActivities', window );">Net cash used in investing activities</a></td>
<td class="num">(31,738)<span></span>
</td>
<td class="num">(33,438)<span></span>
</td>
<td class="num">(14,171)<span></span>
</td>
</tr>
<tr class="ro">
<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>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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromLinesOfCredit', window );">Borrowings on bank revolving credit facility</a></td>
<td class="nump">222,000<span></span>
</td>
<td class="nump">188,000<span></span>
</td>
<td class="nump">115,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_RepaymentsOfLinesOfCredit', window );">Repayment on bank revolving credit facility</a></td>
<td class="num">(174,000)<span></span>
</td>
<td class="num">(189,000)<span></span>
</td>
<td class="num">(255,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_ProceedsFromRepaymentsOfOtherLongTermDebt', window );">Principal payments on long-term debt and capital leases</a></td>
<td class="num">(15,031)<span></span>
</td>
<td class="num">(15,093)<span></span>
</td>
<td class="num">(18,867)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsOfDividendsCommonStock', window );">Dividends paid</a></td>
<td class="num">(8,549)<span></span>
</td>
<td class="num">(6,627)<span></span>
</td>
<td class="num">(6,124)<span></span>
</td>
</tr>
<tr class="re">
<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 );">Proceeds from exercise of stock options</a></td>
<td class="nump">803<span></span>
</td>
<td class="nump">1,676<span></span>
</td>
<td class="nump">1,459<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForRepurchaseOfCommonStock', window );">Common stock repurchased</a></td>
<td class="num">(768)<span></span>
</td>
<td class="num">(1,957)<span></span>
</td>
<td class="num">(710)<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 provided (used) in financing activities</a></td>
<td class="nump">24,455<span></span>
</td>
<td class="num">(23,001)<span></span>
</td>
<td class="num">(164,242)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Effect of exchange rate changes on cash</a></td>
<td class="num">(2,346)<span></span>
</td>
<td class="num">(1,308)<span></span>
</td>
<td class="nump">1,964<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 change in cash and cash equivalents</a></td>
<td class="nump">4,901<span></span>
</td>
<td class="num">(8,080)<span></span>
</td>
<td class="nump">7,884<span></span>
</td>
</tr>
<tr class="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 the year</a></td>
<td class="nump">42,115<span></span>
</td>
<td class="nump">50,195<span></span>
</td>
<td class="nump">42,311<span></span>
</td>
</tr>
<tr class="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 the year</a></td>
<td class="nump">47,016<span></span>
</td>
<td class="nump">42,115<span></span>
</td>
<td class="nump">50,195<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SupplementalCashFlowInformationAbstract', window );"><strong>Cash paid during the year for:</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_InterestPaidNet', window );">Interest</a></td>
<td class="nump">14,575<span></span>
</td>
<td class="nump">10,248<span></span>
</td>
<td class="nump">17,049<span></span>
</td>
</tr>
<tr class="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 );">Income taxes</a></td>
<td class="nump">$ 35,102<span></span>
</td>
<td class="nump">$ 32,865<span></span>
</td>
<td class="nump">$ 17,140<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alg_IncreaseDecreaseInRentalEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Increase (Decrease) In Rental 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;">alg_IncreaseDecreaseInRentalEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AmortizationOfFinancingCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 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://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(8))<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 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 4: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfFinancingCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmortizationOfIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_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_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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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; including, but not limited to, 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/2009/role/commonPracticeRef<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_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_EquipmentExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equipment expense including depreciation, repairs, rentals, and service contract costs. This item also includes equipment purchases which do not qualify for capitalization in accordance with the entity's accounting policy. This item may also include furniture expenses.</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_EquipmentExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_GainLossOnSaleOfPropertyPlantEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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_GainLossOnSaleOfPropertyPlantEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxesPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not 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_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncreaseDecreaseInAccruedTaxesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of all taxes owed but not paid, including income, property and other taxes.</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 (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_IncreaseDecreaseInAccruedTaxesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amounts payable to taxing authorities for taxes that are based on the reporting entity's earnings, net of amounts receivable from taxing authorities for refunds of overpayments or recoveries of income taxes.</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 (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_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_IncreaseDecreaseInOtherNoncurrentLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in noncurrent operating liabilities classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 prepaid expenses, and 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_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_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_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_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_PaymentsOfDividendsCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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_PaymentsOfDividendsCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_PaymentsToAcquireIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 acquire asset without physical form usually arising from contractual or other legal rights, excluding 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 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_PaymentsToAcquireIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_ProceedsFromLinesOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow from contractual arrangement with the lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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><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(f))<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_ProceedsFromLinesOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromRepaymentsOfOtherLongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 other long-term debt.</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_ProceedsFromRepaymentsOfOtherLongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from the sale of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (c)<br> -URI 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_ProceedsFromSaleOfPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_us-gaap_RepaymentsOfLinesOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow for payment of an obligation from a lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div 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><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(f))<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_RepaymentsOfLinesOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_SupplementalCashFlowInformationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SupplementalCashFlowInformationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<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="idm140629863123696">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>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 );">SIGNIFICANT ACCOUNTING POLICIES</a></td>
<td class="text">SIGNIFICANT ACCOUNTING POLICIES<div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Description of the Business and Segments</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company manufactures, distributes and services high quality tractor-mounted mowing and other vegetation maintenance equipment, street sweepers, excavators, vacuum trucks, forestry and tree maintenance equipment, snow removal equipment, leaf collection equipment, pothole patchers, zero turn radius mowers, agricultural implements and related aftermarket parts and services.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company manages its business through two principal reporting segments: Vegetation Management and Industrial Equipment, which are discussed in </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_178" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Note 18</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.</span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Basis of Presentation and Principles of Consolidation</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The accompanying consolidated financial statements include the accounts of Alamo Group Inc. and its subsidiaries (the &#8220;Company&#8221; or &#8220;Alamo Group&#8221;), all of which are wholly owned. All intercompany accounts and transactions have been eliminated in consolidation.</span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Use of Estimates</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;The preparation of financial statements in conformity with U.S. Generally Accepted Accounting Principles requires management to make estimates and assumptions that affect the amount of assets, liabilities, revenues, and expenses reported in the financial statements and accompanying notes. Judgments related to asset impairment and certain reserves are particularly subject to change. Actual results could differ from those estimates. Such estimates include, but are not limited to, allowance for doubtful accounts, reserve for sales discounts, estimated realizable value on obsolete and slow-moving inventory, warranty reserve, estimates related to pension accounting, estimates related to fair value for purposes of assessing goodwill, long-lived assets and intangible assets for impairment, estimates related to income taxes, and estimates related to contingencies.</span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Foreign Currency</span></div><div><span><br/></span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company translates the assets and liabilities of foreign-owned subsidiaries at rates in effect at the end of the year. Revenues and expenses are translated at average rates in effect during the reporting period. Translation adjustments are included in Accumulated other comprehensive income (loss).</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Cash Equivalents</span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company considers all highly liquid investments with original maturities of three months or less from the date of purchase to be cash equivalents.  As of December&#160;31, 2022 and December&#160;31, 2021, there was no restricted cash.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Concentrations of Credit Risk</span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Financial instruments which potentially subject the Company to concentrations of credit risk consist principally of accounts receivable. The credit risk is limited because of the large numbers and types of customers and their geographic dispersion.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Inventory Valuation</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Inventories are stated at the lower of cost or net realizable value.</span><span style="color:#ee2724;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%"> </span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:107%">Property, Plant and Equipment</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property, plant, and equipment are stated on the basis of cost. Major renewals and betterments are charged to the property accounts, while replacements, maintenance and repairs, which do not improve or extend the lives of the respective assets, are expensed to the current period. Depreciation is provided at amounts calculated to amortize the cost of the assets over their estimated useful economic lives using the straight-line method.</span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Impairment of Long-Lived Assets</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Long-lived assets, such as property, plant and equipment, rental equipment, and purchased intangibles subject to amortization, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not be recoverable.  If circumstances require a long-lived asset or asset group to be tested for possible impairment, the Company first compares non-discounted cash flows expected to be generated by that asset group to its carrying amount.  If the carrying amount of the long-lived asset or asset group is not recoverable on a non-discounted cash flow basis, an impairment is recognized to the extent that the carrying amount exceeds fair value.  Fair value is determined through various valuation techniques including discounted cash flow models, quoted market values and third-party independent appraisals, as considered necessary. </span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Goodwill</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Goodwill represents the excess of the purchase price over the estimated fair value of the identifiable net assets acquired. Goodwill is not amortized but is instead tested for impairment at least annually, or whenever events or circumstances change between the annual impairment tests that make it likely that an impairment may have occurred, such as a significant adverse change in the business climate or a decision to sell all or a portion of a reporting unit. The Company performs its annual test for goodwill impairment related to its reporting units on October 1 of each fiscal year. Impairment testing for goodwill is done at the reporting unit level.  A reporting unit is an operating segment or one level below an operating segment (also known as a component).  A component of an operating segment is a reporting unit if the component constitutes a business for which discrete financial information is available, and segment management regularly reviews the operating results of that component. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We perform a qualitative assessment for all of our reporting units to determine whether it is more likely than not that an impairment exists.  Factors considered include macroeconomic, industry and competitive conditions, legal and regulatory environment, historical financial performance and significant changes in the reporting unit. If the qualitative assessment indicates that it is more likely than not that an impairment exists, then a quantitative assessment is performed. Alternatively, we may also bypass the qualitative assessment and go ahead and perform step 1 to determine if the carrying amount exceeds the reporting unit&#8217;s fair value. If the fair value of the reporting unit is lower than its carrying amount, goodwill is written down for the amount by which the carrying amount exceeds the fair value. However, the loss recognized cannot exceed the carrying amount of goodwill. We typically use discounted cash flow models to determine the fair value of a reporting unit. The assumptions used in these models are consistent with those we believe a hypothetical marketplace participant would use.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_145" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Note 8</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> to the Consolidated Financial Statements for more information regarding goodwill.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">&#160;Intangible Assets&#160;&#160;&#160;&#160;</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has intangible assets with both definite and indefinite useful lives. The definite-lived assets are trade names and trademarks, customer and dealer relationships, and patents and drawings that are subject to amortization with useful lives ranging from 3 years to 25 years. Impairment of definite-lived assets is discussed as part of the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Impairment of Long-Lived Assets</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> paragraph above.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">  </span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The indefinite-lived assets not subject to amortization consist of trade names.  The Company tests its indefinite-lived intangible assets for impairment on an annual basis at year-end, 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 amount. The impairment test consists of comparing the fair value of the indefinite-lived intangible asset, </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">determined using the relief from royalty method, with its carrying amount. An impairment loss would be recognized for the carrying amount in excess of its fair value.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_148" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Note 9</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> to the Consolidated Financial Statements for more information regarding intangible assets.</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:95%">Leases</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We determine if an arrangement is a lease at inception. Operating leases are included in other non-current assets, accrued liabilities, and other long-term liabilities on our consolidated balance sheets. Finance leases are included in property, plant and equipment, accrued liabilities, and other long-term liabilities on our consolidated balance sheets.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ROU assets represent our right to use an underlying asset for the lease term and lease liabilities represent our obligation to make lease payments arising from the lease. Operating lease ROU assets and liabilities are recognized at commencement date based on the present value of lease payments over the lease term. As most of our leases do not provide an implicit rate, we use our incremental borrowing rate based on the information available at commencement date in determining the present value of lease payments. The operating lease ROU asset also includes any lease payments made and excludes lease incentives. Our lease terms may include options to extend or terminate the lease when it is reasonably certain that we will exercise that option. Lease expense for lease payments is recognized on a straight-line basis over the lease term. </span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have elected to not account for the lease and non-lease components separately for most of our asset classes with the exception of real-estate.  We have also elected to exclude all lease agreements with an initial term of 12 months or less from the lease recognition requirements as allowed by ASC.</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_151" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Note 10</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> to the Consolidated Financial Statements for more information regarding leases.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Pensions</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company records annual amounts relating to its pension and post-retirement plans based on calculations that incorporate various actuarial and other assumptions, including discount rates, mortality, assumed rates of return, compensation increases, turnover rates and health care cost trend rates. The Company reviews its assumptions on an annual basis and makes modifications to the assumptions based on current rates and trends when it is appropriate to do so. The effect of modifications to those assumptions is recorded in Accumulated other comprehensive income (loss) and amortized to net periodic cost over future periods using the corridor method. The Company believes that the assumptions utilized in recording its obligations under its plans are reasonable based on its experience and market conditions. The net periodic costs are recognized as employees render the services necessary to earn the post-retirement benefits.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Revenue Recognition</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The majority of the Company's revenue is recognized from product sales under contracts with customers. The Company presents two reportable operating segments within its financial statements: Vegetation Management and Industrial Equipment.  Contract terms and performance obligations within each contractual agreement are generally consistent for both divisions, with small differences that do not have a significant impact on the revenue recognition considerations under Topic 606.  Revenues are recognized when we satisfy our performance obligation to transfer product to our customers, which typically occurs at a point in time upon shipment or delivery of the product, and for an amount that reflects the transaction price that is allocated to the performance obligation.  Our contracts with customers state the final terms of sale, including the description, quantity and price for goods sold.  In the normal course of business, we generally do not accept product returns.  </span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The transaction price is the consideration that we expect to be entitled to in exchange for our products.  Some of our contracts contain variable consideration in the form of sales incentives to our customers, such as discounts and rebates.  For contracts that include variable consideration, we estimate the factors that determine the variable consideration in order to establish the transaction price. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have elected that any taxes collected from customers and remitted to government authorities (i.e., sales tax, use tax, etc.) are excluded from the measurement of the transaction price and therefore are excluded from net sales in the consolidated statements of operations.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There are instances where we provide shipping services in relation to the goods sold to our customers.  Shipping and handling costs that occur before the customer obtains control of the goods are deemed to be fulfillment activities and are included in cost of goods sold.  We have elected to account for shipping and handling activities that occur after the customer has obtained control of a good as fulfillment activities (i.e., an expense) rather than as a promised service.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Rental Equipment</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company enters into operating lease agreements with customers related to the rental of certain equipment.  In accounting for these leases, the cost of the equipment purchased or manufactured by the Company is recorded as an asset, and is depreciated over its estimated useful life.  Accumulated depreciation relating to the rental equipment was $22.3 million and $20.1 million on December&#160;31, 2022 and December&#160;31, 2021, respectively.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Shipping and Handling Costs</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s policy is to include shipping and handling costs in costs of goods sold.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Advertising</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We charge advertising costs to expense as incurred. Advertising and marketing expense related to operations for fiscal years 2022, 2021, and 2020 was approximately $10.9 million, $10.2 million and $10.1 million, respectively. Advertising and marketing expenses are included in Selling, General and Administrative expenses (&#8220;SG&amp;A&#8221;).</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Research and Development</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Product development and engineering costs charged to SG&amp;A amounted to $14.3 million, $11.7 million, and $12.4 million for the years ended December&#160;31, 2022, 2021, and 2020, respectively.</span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Commitments and Contingencies</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Liabilities for loss contingencies arising from claims, assessments, litigation, fines and penalties and other sources are recorded when it is probable that a liability has been incurred and the amount can be reasonably estimated.  The Company's policy is to accrue for legal costs expected to be incurred in connection with loss contingencies.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Income Taxes</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred tax assets and liabilities are determined based on differences between the financial reporting basis and tax basis of assets and liabilities, and are measured by applying enacted statutory tax rates applicable to the future years in which deferred tax assets or liabilities are expected to be settled or realized. In assessing the realizability of deferred tax assets, management considers whether it is more likely than not that some portion or all of the deferred tax assets will be realized. The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income during the periods in which those temporary differences become deductible. Management considers the scheduled reversals of deferred tax liabilities, projected future taxable income, available tax carrybacks and tax planning strategies in making this assessment other than those which we have reserved. We have elected to treat the global intangible low-taxed income (GILTI) tax as a period expense.</span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Stock-Based Compensation</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company has granted options to purchase its common stock, restricted stock awards, restricted stock units, and performance stock units to certain employees and directors of the Company and its affiliates under various stock option plans at no less than the fair market value of the underlying stock on the date of grant.&#160; These options are granted for a term not exceeding ten years and are forfeited in the event that the employee or director terminates his or her employment or relationship with the Company or one of its affiliates other than by retirement or death.&#160; These options generally vest over five years.&#160; All option plans contain anti-dilutive provisions that permit an adjustment of the number of shares of the Company&#8217;s common stock represented by each option for any change in capitalization. </span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value of each stock option is estimated on the date of grant using the Black-Scholes valuation method with the following assumptions noted:</span></div><div style="text-indent:18pt"><span><br/></span></div><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: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">The risk-free rate is based on the U.S. Treasury rate over the expected life of the option at the time of the grant.</span></div><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: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">The dividend yield is calculated as the ratio of dividends paid per share of common stock to the stock price on the date of the grant.</span></div><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: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">The expected volatility factors are based on the historical movement of the Company&#8217;s common stock price over the expected life of the option.</span></div><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:120%">4.</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">The expected life is the average length of time in which officers, other employees, and non-employee directors are expected to exercise their options, and which are primarily based on historical experience.</span></div><div style="padding-left:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company calculated the fair value for options with the following weighted-average assumptions for 2022, 2021, and 2020:</span><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:54.455%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.577%"/><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:2.139%"/><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:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.184%"/><td style="width:0.1%"/></tr><tr><td colspan="21" style="border-bottom:1pt solid #000;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%">Fair Value Calculation Assumptions for Stock Compensation</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="15" 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:9pt;font-weight:700;line-height:100%">December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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%">2022</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%">2021</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%">2020</span></td></tr><tr style="height:9pt"><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Risk-free interest rate</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">1.93&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">1.25&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">1.22&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">Dividend yield</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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.4&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Volatility factors</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">33.2&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">33.9&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">30.0&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;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%">Weighted-average expected life</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;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%">8.0 years</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;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%">8.0 years</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;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%">8.0 years</span></td></tr></table></div><div style="text-align:center"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Earnings per Common Share (&#8220;EPS&#8221;)</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Basic EPS is computed using the weighted-average number of common shares outstanding during the year. The treasury stock method is used to compute diluted EPS which gives effect to the potential dilution of earnings that could have occurred if additional shares were issued for awards granted under the Company&#8217;s incentive stock option plans. The treasury stock method assumes that proceeds obtained upon exercise of awards granted under the incentive stock option plans are used to purchase outstanding common stock at the average market price during the period.</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>25
<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="idm140629866280160">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounting Pronouncements<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_AccountingChangesAndErrorCorrectionsAbstract', window );"><strong>Accounting Changes and Error Corrections [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_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock', window );">ACCOUNTING PRONOUNCEMENTS</a></td>
<td class="text">ACCOUNTING PRONOUNCEMENTS<div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:107%">Accounting Pronouncements Not Yet Adopted</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">In September 2022, the FASB issues ASU No. 2022-04, &#8220;Liabilities&#8212;Supplier Finance Programs (Subtopic 405-50): Disclosure of Supplier Finance Program Obligations&#8221;.  The amendments in this Update are effective for are effective for fiscal years beginning after December 15, 202 and require that a buyer in a supplier finance program disclose sufficient information about the program to allow a user of financial statements to understand the program&#8217;s nature, activity during the period, changes from period to period, and potential magnitude. To achieve this objective, the Company will disclose qualitative and quantitative information about its supplier finance programs.</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_AccountingChangesAndErrorCorrectionsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccountingChangesAndErrorCorrectionsAbstract</td>
</tr>
<tr>
<td style="padding-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_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle.</p></div>
<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> -URI https://asc.fasb.org/topic&amp;trid=2122394<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 105<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126987489&amp;loc=SL124442142-165695<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126986314&amp;loc=SL124402458-218513<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 (g)(2)(iii)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<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 1<br> -Subparagraph (b)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<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://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><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 (e)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126986314&amp;loc=SL124402458-218513<br><br>Reference 10: 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)(iv)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SAB Topic 11.M.Q2)<br> -URI https://asc.fasb.org/extlink&amp;oid=122038215&amp;loc=d3e31137-122693<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=122640432&amp;loc=SL121648383-210437<br><br>Reference 13: 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 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=122640432&amp;loc=SL121648383-210437<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 848<br> -SubTopic 10<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=125980421&amp;loc=SL122150809-237846<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (e)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126983759&amp;loc=SL121830611-158277<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section S99<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=122038215&amp;loc=SL108384541-122693<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 10<br> -Section 65<br> -Paragraph 5<br> -Subparagraph (f)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128293352&amp;loc=SL126838806-209984<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 65<br> -Paragraph 6<br> -Subparagraph (e)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126983955&amp;loc=SL121967933-165497<br><br>Reference 20: 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 2<br> -Subparagraph (c)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL126732908-238011<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 10<br> -Section 65<br> -Paragraph 5<br> -Subparagraph (f)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=128293352&amp;loc=SL126838806-209984<br><br>Reference 22: 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 2<br> -Subparagraph (c)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL126732908-238011<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126983955&amp;loc=SL121967933-165497<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (e)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126983759&amp;loc=SL121830611-158277<br><br>Reference 25: 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 2<br> -Subparagraph (c)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL126732908-238011<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=120154821&amp;loc=SL120154904-197079<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=120154821&amp;loc=SL120154904-197079<br><br>Reference 28: 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 (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=120154821&amp;loc=SL120154904-197079<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=126983955&amp;loc=SL121967933-165497<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 848<br> -SubTopic 10<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=125980421&amp;loc=SL125981372-237846<br><br>Reference 32: 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 (c)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 33: 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)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (e)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=126983759&amp;loc=SL121830611-158277<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock</td>
</tr>
<tr>
<td style="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>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="idm140629861418304">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Business Combinations<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_BusinessCombinationAndAssetAcquisitionAbstract', window );"><strong>Business Combination and Asset Acquisition [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 );">BUSINESS COMBINATIONS</a></td>
<td class="text">BUSINESS COMBINATIONS<span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On October 26, 2021, the Company acquired 100% of the issued and outstanding equity interests of Timberwolf Limited (&#8220;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Timberwolf</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8221;). </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> Timberwolf</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> manufactures a broad range of commercial wood chippers, primarily serving markets in the U.K. and the European Union.  The primary reason for the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Timberwolf</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> acquisition was to enhance the Company's forestry and tree care platform for growth by increasing both the Company's product portfolio and capabilities in the European market.  The acquisition price was approximately $25.0&#160;million. The Company has included the operating results of </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Timberwolf</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> in its consolidated financial statements since the date of acquisition, these results are considered immaterial.</span><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_BusinessCombinationAndAssetAcquisitionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_BusinessCombinationAndAssetAcquisitionAbstract</td>
</tr>
<tr>
<td style="padding-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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>27
<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="idm140629863132240">
<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="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The following table sets forth the reconciliation from basic to diluted average common shares and the calculations of net income per common share. Net income for basic and diluted calculations does not differ.</span><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:53.900%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.194%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:5.958%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.194%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:5.958%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.196%"/><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-weight:400;line-height:100%">(in thousands, except per share amounts)</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: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:9pt;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:9pt;font-weight:700;line-height:100%">2020</span></td></tr><tr style="height:9pt"><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income</span></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">101,928&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">80,245&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">57,804&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Average common shares:</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Basic (weighted-average outstanding shares)</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,877&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,837&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,782&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Dilutive potential common shares from stock&#160;options</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">57&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">59&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">63&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Diluted (weighted-average outstanding shares)</span></div></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:9pt;font-weight:400;line-height:100%">11,934&#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;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%">11,896&#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;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%">11,845&#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:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Basic earnings per share</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.58&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6.78&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4.91&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Diluted earnings per share</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.54&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6.75&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4.88&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Stock options totaling 25,610 shares in 2022, 15,586 shares in 2021, and 9,864 shares in 2020 were not included in the diluted earnings per share calculation because the effect would have been anti-dilutive.</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_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>28
<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="idm140629866508656">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Valuation and Qualifying Accounts<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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 );">VALUATION AND QUALIFYING ACCOUNTS</a></td>
<td class="text">VALUATION AND QUALIFYING ACCOUNTS<div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Valuation and qualifying accounts included the following:</span><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:30.186%"/><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:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.431%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.133%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.431%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.016%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></div></td><td colspan="3" 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:9pt;font-weight:700;line-height:100%">Balance</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Beginning of</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Year</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" 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:9pt;font-weight:700;line-height:100%">Net</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Charged to</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Costs and</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Expenses</span></div></td><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">&#160;Translations,</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Reclassifications</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">and Acquisitions</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" 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:9pt;font-weight:700;line-height:100%">&#160;Net Write-Offs or</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Discounts Taken</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" 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:9pt;font-weight:700;line-height:100%">Balance</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">End of</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Year</span></div></td></tr><tr><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:9pt;font-weight:700;line-height:100%">2022</span></td><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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#160;</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:#def3c0;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%">Reserve for sales discounts</span></td><td style="background-color:#def3c0;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:#def3c0;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%">12,567&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">137,553&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">(21)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">(130,238)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">19,861&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Reserve for inventory obsolescence</span></td><td colspan="2" style="background-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,908&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">6,998&#160;</span></td><td style="background-color:#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="2" style="background-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%">(277)</span></td><td style="background-color:#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="2" style="background-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%">(6,420)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">13,209&#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:#def3c0;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%">Reserve for warranty</span></td><td colspan="2" style="background-color:#def3c0;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,953&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">11,290&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(244)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(11,659)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,340&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:#def3c0;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%">Reserve for sales discounts</span></td><td style="background-color:#def3c0;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:#def3c0;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%">13,549&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">116,114&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">(688)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">(116,408)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">12,567&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Reserve for inventory obsolescence</span></td><td colspan="2" style="background-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,027&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">6,531&#160;</span></td><td style="background-color:#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="2" style="background-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%">(146)</span></td><td style="background-color:#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="2" style="background-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%">(5,504)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,908&#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:#def3c0;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%">Reserve for warranty</span></td><td colspan="2" style="background-color:#def3c0;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,096&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">10,727&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,738)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,953&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:#def3c0;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%">Reserve for sales discounts</span></td><td style="background-color:#def3c0;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:#def3c0;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%">16,883&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">93,398&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">(96,747)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">13,549&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Reserve for inventory obsolescence</span></td><td colspan="2" style="background-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%">8,233&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">4,609&#160;</span></td><td style="background-color:#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="2" style="background-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,471&#160;</span></td><td style="background-color:#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="2" style="background-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,286)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,027&#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:#def3c0;border-bottom:1pt solid #000;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%">Reserve for warranty</span></td><td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%">10,249&#160;</span></td><td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%">8,466&#160;</span></td><td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%">247&#160;</span></td><td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%">(9,866)</span></td><td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%">9,096&#160;</span></td><td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Sales Discounts</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On December&#160;31, 2022, the Company had $19.9 million in reserves for sales discounts compared to $12.6 million on December&#160;31, 2021 on product shipped to our customers under various promotional programs. The most common programs provide a discount when the customer pays within a specified period of time. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The Company reviews the reserve quarterly based on analysis made on each program outstanding at the time. The cost of these discounts is estimated based on historical experience and known changes in promotional programs and is reported as a reduction to sales when the product sale is recognized. The reserve is adjusted if discounts paid differ from those estimated. Historically, those adjustments have not been material.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Reserve for Inventory Obsolescence </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">We value inventories at the lower of the cost of inventory or net realizable value. As needed, we record an inventory valuation adjustment for excess, slow moving, and obsolete inventory that is equal to the excess of the cost of the inventory over the estimated net realizable value. The inventory valuation adjustment to net realizable value establishes a new cost basis of the inventory that cannot be subsequently reversed. Such inventory valuation adjustments for excess, obsolete, and slow moving inventory are not reduced or removed until the product is sold or disposed of.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company had a reserve of $13.2 million on December&#160;31, 2022 and $12.9 million on December&#160;31, 2021 to cover obsolete and slow moving inventory. The increase in the reserve was primarily attributable to the Company's Industrial Equipment Division. The reserve for inventory obsolescence  is calculated as follows: 1) no inventory usage over a three-year period is deemed obsolete and reserved at 100%; and 2) slow moving inventory with little usage requires a 100% reserve on items that have a quantity greater than a three-year supply. There are exceptions to the obsolete and slow moving classifications if approved by an officer of the Company, based on specific identification of an item or items that are deemed to be either included or excluded from this classification. In cases where there is no historical data, management makes a judgment based on a specific review of the inventory in question to determine what reserves, if any, are appropriate. New products or parts are generally excluded from the reserve until a three-year history has been established.</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%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Warranty</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s warranty policy is generally to provide its customers warranty for up to one year on all wholegood units and 90 days on parts, though some components can have warranty for longer terms.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Warranty reserve, as a percentage of sales, is generally calculated by looking at the current twelve months&#8217; expenses and prorating that amount based on twelve months&#8217; sales with a <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI3OTQ_46274a57-12b5-4685-a7f7-b0ac8eb30cb6">three</span> to six month lag period. The Company&#8217;s historical experience is that an end-user takes approximately <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI4OTc_461d3e84-85a1-4af0-9172-95baabe6f27b">three</span> to six months from the receipt of the unit to file a warranty claim.</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%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The current liability warranty reserve balance was $9.3 million on December&#160;31, 2022 and $10.0 million on December&#160;31, 2021 and is included in </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_157" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Note 11</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.</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>29
<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="idm140629866589712">
<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="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Inventories consisted of the following:</span><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.350%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.139%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.373%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.432%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.206%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Finished goods and parts</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">312,726&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">277,760&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Work in process</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22,273&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,895&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Raw materials</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17,554&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,262&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Inventory, net</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">352,553&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">320,917&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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>30
<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="idm140629866589712">
<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<span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Property, plant and equipment consist of the following:</span><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:46.560%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.139%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.724%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.724%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.501%"/><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-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:9pt;font-weight:700;line-height:100%">December 31,</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%">&#160;</span></td></tr><tr><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:9pt;font-weight:400;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></div></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%">2022</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%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" 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:9pt;font-weight:700;line-height:100%">Useful</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Lives</span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Land</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,792&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,838&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Buildings and improvements</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">145,616&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">145,086&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5-20 yrs.</span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Machinery and equipment</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">140,252&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">129,901&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3-10 yrs.</span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Office furniture and equipment</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,270&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,291&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3-7 yrs.</span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Computer software</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,551&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,384&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3-7 yrs.</span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Transportation equipment</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,597&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,363&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3 yrs.</span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Property, plant and equipment, at cost</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">335,078&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">321,863&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accumulated depreciation</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(180,071)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(169,372)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Property, plant and equipment, net</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">155,007&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">152,491&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>31
<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="idm140629861582912">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill<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_GoodwillDisclosureTextBlock', window );">GOODWILL</a></td>
<td class="text">GOODWILL<div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><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 year ended December&#160;31, 2020, 2021, and 2022 are as follows:</span><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:54.309%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:1.970%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.256%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:1.970%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:1.970%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.256%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:1.970%"/><td style="width:0.1%"/><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:2.262%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.137%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Vegetation Management</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Industrial Equipment</span></td><td colspan="3" style="display:none"/><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:700;line-height:100%">Consolidated</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><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="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:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance at December 31, 2019</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">126,894&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">71,128&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;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="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">198,022&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Translation adjustment</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">132&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,036&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,168&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Goodwill adjustment</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2,045)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2,013)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;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="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(4,058)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance at December 31, 2020</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">124,981&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">70,151&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">195,132&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Translation adjustment</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,510)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(708)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;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="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2,218)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Goodwill acquired</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,492&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><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:middle"/><td colspan="3" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,492&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance at December 31, 2021</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">132,963&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">69,443&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;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="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">202,406&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Translation adjustment</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,882)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,147)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,029)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Goodwill adjustment</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,519)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;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="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,519)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance at December 31, 2022</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">127,562&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">68,296&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;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="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">195,858&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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_GoodwillDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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.</p></div>
<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> -URI https://asc.fasb.org/subtopic&amp;trid=2144439<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> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: 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 (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13854-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_GoodwillDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>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="idm140629864538960">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>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_IntangibleAssetsDisclosureTextBlock', window );">INTANGIBLE ASSETS</a></td>
<td class="text">INTANGIBLE ASSETS<div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a summary of the Company's intangible assets net of the accumulated amortization:</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%"> </span><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.755%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.419%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:1.974%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.002%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.289%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:1.974%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.027%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.560%"/><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-weight:400;line-height:100%">(in thousands)</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:700;line-height:100%">Estimated Useful Lives</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:9pt;font-weight:700;line-height:100%">December 31, 2022</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:9pt;font-weight:700;line-height:100%">December 31, 2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Definite:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Trade names and trademarks</span></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:9pt;font-weight:400;line-height:100%">15-25 years</span></div></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: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%">68,797&#160;</span></td><td style="background-color:#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 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%">68,321&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;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;&#160;&#160;Customer and dealer relationships</span></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">8-15 years</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">129,338&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">126,104&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Patents and developed technologies</span></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:9pt;font-weight:400;line-height:100%">3-12 years</span></div></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:9pt;font-weight:400;line-height:100%">28,437&#160;</span></td><td style="background-color:#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="2" style="background-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%">29,338&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;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;&#160;&#160;Favorable leasehold interests</span></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">7 years</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">4,200&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">4,200&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;&#160;Total at cost</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;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:9pt;font-weight:400;line-height:100%">230,772&#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;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;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:9pt;font-weight:400;line-height:100%">227,963&#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;border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;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;&#160;&#160;Less accumulated amortization</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(64,931)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(49,997)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total net</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%">165,841&#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;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%">177,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;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Indefinite:</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Trade names and trademarks</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">5,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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">5,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"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total Intangible Assets</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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%">171,341&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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%">183,466&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/></tr></table></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's net carrying value at December&#160;31, 2022 of intangible assets with definite useful lives consists of trade names and trademarks at $54.9 million, customer and dealer relationships at $90.2 million, patents and drawings at $18.5 million, and favorable leasehold interests at $2.3 million.  As of December&#160;31, 2022, the related accumulated amortization balance for the definite-lived assets were $13.9 million for trade names and trademarks, $39.2 million for customer and dealer relationships, $9.9 million for patents and drawings, and $1.9 million for favorable leasehold interests.  The Company estimates amortization expense to be $15.3 million for each of the next five years.</span></div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Indefinite-lived trade names and trademarks consisted of the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Gradall </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">trade name with a carrying value of $3.6 million and the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Bush Hog </span>trade name with a carrying value of $1.9 million.<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_IntangibleAssetsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 or part of the information related to intangible 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 350<br> -SubTopic 30<br> -URI https://asc.fasb.org/subtopic&amp;trid=2144471<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>33
<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="idm140629864397344">
<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><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Leases</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company leases office space and equipment under various operating and capital leases, which generally are expected to be renewed or replaced by other leases.  As of December&#160;31, 2022, the components of lease cost were as follows:</span></div><div style="text-indent:18pt"><span><br/></span></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 style="width:61.911%"/><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:15.420%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.262%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.423%"/><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"/></tr><tr><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%">Components of Lease Cost</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="9" 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:9pt;font-weight:700;line-height:100%">Twelve Months Ended December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</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"/></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Finance lease cost:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;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"/></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:9pt;font-weight:400;line-height:100%">Amortization of right-of-use assets</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: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%">30&#160;</span></td><td style="background-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%">67&#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="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Interest on lease liabilities</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">3&#160;</span></td><td style="background-color:#def3c0;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="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:9pt;font-weight:400;line-height:100%">Operating lease cost</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:9pt;font-weight:400;line-height:100%">5,783&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">5,571&#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="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,397&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,033&#160;</span></td><td style="background-color:#def3c0;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="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:9pt;font-weight:400;line-height:100%">Variable lease cost</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:9pt;font-weight:400;line-height:100%">348&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">410&#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="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"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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:9pt;font-weight:400;line-height:100%">Total lease cost</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">7,559&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">7,084&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;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="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span><br/></span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, future minimum lease payments under these non-cancelable leases are:</span><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:70.245%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.110%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.345%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><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%">Future Minimum Lease Payments</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></div></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;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:9pt;font-weight:700;line-height:100%">Operating</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Leases</span></div></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2023</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,177&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,099&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,294&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2026</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,728&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2027</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,780&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Thereafter</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,743&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total minimum lease payments</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,821&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:9pt;font-weight:400;line-height:100%">Less imputed interest</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,287)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Total lease liabilities</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17,534&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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"/></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"/></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"/></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"/></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;</span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Rental expense for operating leases was $7.5 million for 2022, $7.0 million for 2021, and $6.1 million for 2020.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Future Lease Commencements</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, we have additional operating leases that have not yet commenced in the amount of $3.1 million. These operating leases will commence in fiscal year 2023.</span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental balance sheet information related to leases was as follows:</span><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:60.888%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.992%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.420%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.577%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.423%"/><td style="width:0.1%"/></tr><tr><td colspan="15" style="border-bottom: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:100%">Operating Leases</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="9" 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:9pt;font-weight:700;line-height:100%">December 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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-right:-30pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtMC0xLTEtNjM4ODc_519b9153-1678-4ae1-96d9-ece32fbc6c3b"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtMC0xLTEtNjM4ODc_5e442bd9-e082-43f6-86fc-6dbc895fe9ba">Other non-current assets</span></span></span></div></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">17,249&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">16,744&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;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;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:#def3c0;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%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtMC0xLTEtNjM4ODc_54be147c-36db-432e-8216-c265a23c942d"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtMC0xLTEtNjM4ODc_82079088-df46-459e-bc9c-032b93ad004c">Accrued liabilities</span></span></span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">4,685&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">4,655&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtMC0xLTEtNjM4ODc_152d7955-5136-4b3a-93f9-0d42b9c326e3"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtMC0xLTEtNjM4ODc_39316545-72e7-4e77-b63e-2caddc622e2e">Other long-term liabilities</span></span></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:9pt;font-weight:400;line-height:100%">12,849&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,237&#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:#def3c0;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:9pt;font-weight:400;line-height:100%">Total operating lease liabilities</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">17,534&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">16,892&#160;</span></td><td style="background-color:#def3c0;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;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:9pt;font-weight:400;line-height:100%">Weighted average remaining lease term</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%">4.66 years</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%">5.14 years</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Weighted average discount rate</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">3.30&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 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%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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.83&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 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%">%</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"/></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"/></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"/></tr></table></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Supplemental cash flow information related to leases was as follows:</span><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.057%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.554%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.847%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.523%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">Twelve Months Ended December 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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">2021</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"/></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Cash paid for amounts included in the measurement of lease liabilities:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;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"/></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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;Operating cash flows from operating leases </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: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%">5,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 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%">5,013&#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"/></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_LesseeFinanceLeasesTextBlock', window );">LEASES</a></td>
<td class="text">LEASES <div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Leases</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company leases office space and equipment under various operating and capital leases, which generally are expected to be renewed or replaced by other leases.  As of December&#160;31, 2022, the components of lease cost were as follows:</span></div><div style="text-indent:18pt"><span><br/></span></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 style="width:61.911%"/><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:15.420%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.262%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.423%"/><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"/></tr><tr><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%">Components of Lease Cost</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="9" 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:9pt;font-weight:700;line-height:100%">Twelve Months Ended December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</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"/></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Finance lease cost:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;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"/></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:9pt;font-weight:400;line-height:100%">Amortization of right-of-use assets</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: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%">30&#160;</span></td><td style="background-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%">67&#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="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Interest on lease liabilities</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">3&#160;</span></td><td style="background-color:#def3c0;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="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:9pt;font-weight:400;line-height:100%">Operating lease cost</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:9pt;font-weight:400;line-height:100%">5,783&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">5,571&#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="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,397&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,033&#160;</span></td><td style="background-color:#def3c0;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="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:9pt;font-weight:400;line-height:100%">Variable lease cost</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:9pt;font-weight:400;line-height:100%">348&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">410&#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="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"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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:9pt;font-weight:400;line-height:100%">Total lease cost</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">7,559&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">7,084&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;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="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span><br/></span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, future minimum lease payments under these non-cancelable leases are:</span><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:70.245%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.110%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.345%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><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%">Future Minimum Lease Payments</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></div></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;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:9pt;font-weight:700;line-height:100%">Operating</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Leases</span></div></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2023</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,177&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,099&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,294&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2026</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,728&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2027</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,780&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Thereafter</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,743&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total minimum lease payments</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,821&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:9pt;font-weight:400;line-height:100%">Less imputed interest</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,287)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Total lease liabilities</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17,534&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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"/></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"/></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"/></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"/></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;</span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Rental expense for operating leases was $7.5 million for 2022, $7.0 million for 2021, and $6.1 million for 2020.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Future Lease Commencements</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, we have additional operating leases that have not yet commenced in the amount of $3.1 million. These operating leases will commence in fiscal year 2023.</span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental balance sheet information related to leases was as follows:</span><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:60.888%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.992%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.420%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.577%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.423%"/><td style="width:0.1%"/></tr><tr><td colspan="15" style="border-bottom: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:100%">Operating Leases</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="9" 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:9pt;font-weight:700;line-height:100%">December 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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-right:-30pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtMC0xLTEtNjM4ODc_519b9153-1678-4ae1-96d9-ece32fbc6c3b"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtMC0xLTEtNjM4ODc_5e442bd9-e082-43f6-86fc-6dbc895fe9ba">Other non-current assets</span></span></span></div></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">17,249&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">16,744&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;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;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:#def3c0;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%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtMC0xLTEtNjM4ODc_54be147c-36db-432e-8216-c265a23c942d"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtMC0xLTEtNjM4ODc_82079088-df46-459e-bc9c-032b93ad004c">Accrued liabilities</span></span></span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">4,685&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">4,655&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtMC0xLTEtNjM4ODc_152d7955-5136-4b3a-93f9-0d42b9c326e3"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtMC0xLTEtNjM4ODc_39316545-72e7-4e77-b63e-2caddc622e2e">Other long-term liabilities</span></span></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:9pt;font-weight:400;line-height:100%">12,849&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,237&#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:#def3c0;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:9pt;font-weight:400;line-height:100%">Total operating lease liabilities</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">17,534&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">16,892&#160;</span></td><td style="background-color:#def3c0;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;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:9pt;font-weight:400;line-height:100%">Weighted average remaining lease term</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%">4.66 years</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%">5.14 years</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Weighted average discount rate</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">3.30&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 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%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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.83&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 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%">%</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"/></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"/></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"/></tr></table></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Supplemental cash flow information related to leases was as follows:</span><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.057%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.554%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.847%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.523%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">Twelve Months Ended December 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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">2021</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"/></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Cash paid for amounts included in the measurement of lease liabilities:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;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"/></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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;Operating cash flows from operating leases </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: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%">5,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 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%">5,013&#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"/></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_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_LesseeFinanceLeasesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 finance leases of lessee. Includes, but is not limited to, description of lessee's finance lease and maturity analysis of finance 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_LesseeFinanceLeasesTextBlock</td>
</tr>
<tr>
<td style="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_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>34
<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="idm140629864509504">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accrued Liabilities<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_PayablesAndAccrualsAbstract', window );"><strong>Payables and Accruals [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 LIABILITIES</a></td>
<td class="text">ACCRUED LIABILITIES<span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued liabilities consist of the following balances:</span><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.028%"/><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.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.847%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.499%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Salaries, wages and bonuses</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">37,590&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">37,462&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Lease liability</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,685&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,655&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Taxes</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,426&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,902&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Warranty</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,340&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,953&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Retirement provision</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,588&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,967&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Customer deposits</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,197&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,383&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,542&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,201&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued liabilities</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">71,368&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">73,523&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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_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_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>35
<FILENAME>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="idm140629864382944">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value of Financial Instruments<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 OF FINANCIAL INSTRUMENTS</a></td>
<td class="text">FAIR VALUE OF FINANCIAL INSTRUMENTS <div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">U.S. GAAP requires or permits certain assets or liabilities to be measured at fair value on a recurring or non- recurring basis in our balance sheets. U.S. GAAP also requires the disclosure of the fair values of financial instruments when an option to elect fair value accounting has been provided but such election has not been made.  A debt obligation is an example of such a financial instrument.</span></div><div style="text-align:center"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Fair value is defined as the exchange price that would be received for an asset or paid to transfer a liability (an exit price) in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants. There is a three-tier fair value hierarchy based upon the observability of inputs used in valuation techniques. Observable inputs (highest level) reflect market data obtained from independent sources, while </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">unobservable inputs (lowest level) reflect internally developed market assumptions. In fair value, measurements are classified under the following hierarchy:</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Level 1</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> &#8211; Quoted prices for identical assets or liabilities in active markets.</span></div><div style="padding-left:81pt;text-indent:-45pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Level 2</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> &#8211; Quoted prices for similar instruments in active markets; quoted prices for identical or similar instruments in markets that are not active; and model-derived valuations in which all significant inputs or significant value-drivers are observable in active markets.</span></div><div style="padding-left:81pt;text-indent:-45pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Level 3</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> &#8211; Model-derived valuations in which one or more significant inputs or significant value-drivers are unobservable.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="padding-right:16pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">When measuring fair value, the Company maximizes use of observable inputs and minimizes the use of unobservable inputs.</span></div><div style="padding-left:6pt;padding-right:16pt;text-indent:36pt"><span><br/></span></div><div style="margin-top:0.4pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">       Fair value measurements are classified to the lowest level input or value-driver that is significant to the valuation. A measurement may therefore be classified within Level 3 even though there may be significant inputs that are readily observable.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The carrying values of certain financial instruments, including cash and cash equivalents, accounts receivable, accounts payable, and accrued expenses, approximate fair value because of the short-term nature of these items. The carrying value of our debt approximates the fair value as of December&#160;31, 2022 and 2021, as the floating rates on our outstanding balances approximate current market rates. This conclusion was made based on Level 2 inputs.   Fair values determined by Level 2 utilize inputs that are observable for the asset or liability, either directly or indirectly. These include quoted prices for similar assets or liabilities in active markets and quoted prices for identical or similar assets or liabilities in markets that are not active. Other than the investments held by the retirement benefit plans, as described in </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_175" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Note 17</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> to the Consolidated Financial Statements, the Company does not have any other significant financial assets or liabilities measured at fair value on a recurring basis. </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The Company has no recurring or nonrecurring valuations that fall under Level 3 of the fair value hierarchy as of December&#160;31, 2022 and 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_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>36
<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="idm140629861529200">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Long-Term 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_DebtDisclosureAbstract', window );"><strong>Debt 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_DebtDisclosureTextBlock', window );">LONG-TERM DEBT</a></td>
<td class="text">LONG-TERM DEBT<div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of long-term debt are as follows:</span><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: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:1.0%"/><td style="width:4.747%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.330%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Bank revolving credit facility</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">52,000&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,000&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Term debt</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">249,928&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">265,498&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_9b1bfaa9-100d-4705-a145-bc36daae463f"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_c663b58e-5137-4e83-8879-5ba725887654"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_fdd87ed0-80b6-4669-a105-d27b4fbd2dac"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_ffc75352-7531-4c29-bdca-e32d1f2af6f6">Capital lease obligations</span></span></span></span></span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">56&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total debt</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">301,952&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">269,554&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less current maturities</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15,009&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15,032&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total long-term debt</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">286,943&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">254,522&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr></table></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On October 28, 2022, the Company, as Borrower, and each of its domestic subsidiaries as guarantors, entered into a Third Amended and Restated Credit Agreement (the &#8220;2022 Credit Agreement&#8221;) with Bank of America, N.A., as Administrative Agent.  The 2022 Credit Agreement provides Borrower with the ability to request loans and other financial obligations in an aggregate amount of up to $655.0 million. Under the 2022 Credit Agreement, the Company has borrowed $255.0 million pursuant to a Term Facility, while up to $400.0 million is available to the Company pursuant to a Revolver Facility which terminates in 5 years. The Term Facility requires the Company to make equal quarterly principal payments of $3,750,000 over the term of the loan, with the final payment of any outstanding principal amount, plus interest, due at the end of the five year term. Borrowings under the 2022 Credit Agreement bear interest, at the Company&#8217;s option, at a Term Secured Overnight Financing Rate (&#8220;SOFR&#8221;) or a Base Rate (each as defined in the 2022 Credit Agreement), plus, in each case, an applicable margin. The applicable margin ranges from 1.25% to 2.50% for Term SOFR borrowings and from .25% to 1.50% for Base Rate borrowings with the margin percentage based upon the Company's consolidated leverage ratio. The Company must also pay a commitment fee to the lenders ranging between 0.15% to 0.30% on any unused portion of the $400,000,000 Revolver Facility.</span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The 2022 Credit Agreement requires the Company to maintain two financial covenants, namely, a maximum consolidated leverage ratio and a minimum consolidated fixed charge coverage ratio. The Agreement also contains various covenants relating to limitations on indebtedness, limitations on investments and acquisitions, limitations on the sale of properties and limitations on liens and capital expenditures. The Agreement also contains other customary covenants, representations and events of defaults.  The expiration date of the 2022 Credit Agreement, including the Term Facility and the Revolver Facility, is October&#160;28, 2027.  </span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">As of December&#160;31, 2022, $301.9 million was outstanding under the Credit Agreement. Of the total outstanding, $249.9 million was on the Term Facility at a rate of 6.17% and $52.0 million was on the Revolver Facility at a rate of 6.25%. On December&#160;31, 2022, $2.8 million of the revolver capacity was committed to irrevocable standby letters of credit issued in the ordinary course of business as required by vendors' contracts resulting in $295.2 million in available borrowings. The Company is in compliance with the covenants under the Credit Agreement.</span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">&#160;</span></div>The aggregate maturities of long-term debt, as of December&#160;31, 2022, are as follows: $15.0 million in 2023; $15.0 million in 2024; $15.0 million in 2025; $15.0 million in 2026; $241.9 in 2027; and zero thereafter.<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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><br>Reference 2: 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 (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 3: 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 1C<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495334-112611<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 1I<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495371-112611<br><br>Reference 5: 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 1I<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495371-112611<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(c))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 7: 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 (g)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 8: 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 1C<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495334-112611<br><br>Reference 9: 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 1C<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495334-112611<br><br>Reference 10: 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 1E<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<br><br>Reference 11: 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> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 12: 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 1I<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495371-112611<br><br>Reference 13: 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 (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>37
<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="idm140629866239776">
<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><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Income Statement Components</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Earnings before income taxes were as follows:</span><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.648%"/><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:1.992%"/><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:1.846%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.332%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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:top"><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="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:top"><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="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:top"><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="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income before income taxes:</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:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Domestic</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">86,680&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">74,070&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">50,977&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">47,630&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">35,428&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28,780&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">134,310&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">109,498&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">79,757&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of income tax expense (benefit) were as follows:</span><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:53.285%"/><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:1.0%"/><td style="width:2.701%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.701%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.331%"/><td style="width:0.1%"/></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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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:top"><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="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:top"><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="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:top"><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="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Current:</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:left;vertical-align:middle"><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="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><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="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Domestic</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19,197&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16,846&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,823&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,848&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,646&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,759&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">State</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,674&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,943&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,226&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><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="background-color:#ffffff;border-top:1pt solid #000000;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">34,719&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30,435&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22,808&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Deferred:</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Domestic</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2,246)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(679)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,238&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(51)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(274)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1199)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">State</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(40)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(229)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(894)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><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="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2,337)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,182)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(855)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total income taxes</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32,382&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">29,253&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">21,953&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;&#160;</span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A reconciliation of the income tax at the Company&#8217;s U.S. statutory federal income tax rate to the provision for income tax follows: &#160;</span><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:53.285%"/><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:1.0%"/><td style="width:2.701%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.701%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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%">December 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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</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%">2020</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income tax expense at statutory rates</span></div></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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%">28,205&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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%">22,995&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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%">16,749&#160;</span></td><td style="background-color:#def3c0;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 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Increase (reduction) from:</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Jurisdictional rate differences</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,989&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,599&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,034&#160;</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Executive compensation limitation</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:9pt;font-weight:400;line-height:100%">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:9pt;font-weight:400;line-height:100%">1,314&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">170&#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"/><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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock based compensation</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">122&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(322)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(366)</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. state taxes</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:9pt;font-weight:400;line-height:100%">2,632&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">3,724&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,556&#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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign tax expense</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">267&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">704&#160;</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">R&amp;D credit </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:9pt;font-weight:400;line-height:100%">(1,645)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">(670)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">(415)</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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">GILTI</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">500&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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&#160;</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Previously unrecognized tax (benefit)/expense</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:9pt;font-weight:400;line-height:100%">51&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">8&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,219&#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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other, net</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(220)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">605&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(748)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%">Provision for income taxes </span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%">32,382&#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;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%">29,253&#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;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%">21,953&#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:#def3c0;border-top:2pt solid #000000;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%">Effective tax rate </span></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:2pt 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%">24&#160;</span></td><td style="background-color:#def3c0;border-top:2pt solid #000000;padding:2px 1pt 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%">%</span></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:2pt 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%">27&#160;</span></td><td style="background-color:#def3c0;border-top:2pt solid #000000;padding:2px 1pt 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%">%</span></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:2pt 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%">28&#160;</span></td><td style="background-color:#def3c0;border-top:2pt solid #000000;padding:2px 1pt 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%">%</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"/></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"/></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"/></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"/></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"/></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"/></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"/></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"/></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"/></tr></table></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Deferred Income Tax Assets and Liabilities</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The components of the Company&#8217;s deferred income tax assets and liabilities were as follows. Certain prior year deferred tax component amounts have been reclassified to conform to the current year presentation. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:112%"> </span><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:58.110%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.987%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:4.747%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.330%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:700;line-height:100%">Deferred income tax assets:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></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:9pt;font-weight:400;line-height:100%">&#160;&#160;Inventory basis difference</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: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%">3,459&#160;</span></td><td style="background-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%">1,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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;Accounts receivable reserve</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">334&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">270&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;&#160;Rental equipment and Property, plant and equipment </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:9pt;font-weight:400;line-height:100%">347&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">201&#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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;Stock based compensation</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">826&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">754&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;&#160;Pension liability</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:9pt;font-weight:400;line-height:100%">2,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="2" style="background-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%">3,351&#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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;Employee benefit accrual</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,451&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">3,070&#160;</span></td><td style="background-color:#def3c0;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"/></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:9pt;font-weight:400;line-height:100%">&#160;&#160;Product liability and warranty 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:9pt;font-weight:400;line-height:100%">2,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="2" style="background-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,464&#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"/></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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;Foreign net operating loss</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">3,078&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">3,764&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;&#160;Lease liability</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:9pt;font-weight:400;line-height:100%">4,738&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">4,221&#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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;Capitalized R&amp;D costs</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">4,230&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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"/></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:9pt;font-weight:400;line-height:100%">&#160;&#160;Other</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:9pt;font-weight:400;line-height:100%">1,635&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,415&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total deferred income tax assets</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: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%">26,175&#160;</span></td><td style="background-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%">20,646&#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:#def3c0;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;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Less: Valuation allowance</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(3,637)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(4,129)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;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;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Net deferred income tax assets</span></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:2pt 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:#def3c0;border-top:2pt 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%">22,538&#160;</span></td><td style="background-color:#def3c0;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:2pt 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:#def3c0;border-top:2pt 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%">16,517&#160;</span></td><td style="background-color:#def3c0;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Deferred income tax liabilities:</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></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:9pt;font-weight:400;line-height:100%">&#160;&#160;Inventory basis differences</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: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%">(264)</span></td><td style="background-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%">(283)</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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;Rental equipment and Property, plant and equipment </span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,373)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(13,253)</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;&#160;Lease asset</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:9pt;font-weight:400;line-height:100%">(4,637)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">(4,149)</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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;Intangible assets</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(19,301)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(18,041)</span></td><td style="background-color:#def3c0;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"/></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"/></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:9pt;font-weight:400;line-height:100%">&#160;&#160;Expenses not currently deductible for book purposes</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:9pt;font-weight:400;line-height:100%">(1,244)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,139)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/></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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total deferred income tax liabilities</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: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%">(39,819)</span></td><td style="background-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%">(36,865)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;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;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Net deferred income taxes</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000;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:2pt solid #000;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%">(17,281)</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000;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:2pt solid #000;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%">(20,348)</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><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 foreign deferred tax assets consisting of foreign net operating losses and other tax benefits available to reduce future taxable income in a foreign jurisdiction. These foreign jurisdictions&#8217; net operating loss carry-forwards are approximately $10.1 million with an unlimited carry-forward period. The Company also has U.S. state net operating loss carry-forwards in the amount of $0.2 million which will expire between 2036 and 2042.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's valuation allowances as of December&#160;31, 2022 and 2021 related primarily to foreign net operating losses and foreign tax credits.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Unrecognized Tax Benefits</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A reconciliation of the beginning and ending amount of unrecognized tax benefits is as follows. The Company does not expect the unrecognized tax benefits to change significantly over the next 12 months.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span><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: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:1.0%"/><td style="width:4.747%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.330%"/><td style="width:0.1%"/></tr><tr><td colspan="15" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unrecognized Tax Benefits</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance as of beginning of year</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">270&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">262&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Increases for tax positions related to the current year</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">156&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">82&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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"/></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"/></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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Decreases due to lapse of statute of limitations</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(105)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(74)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance as of end of year</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">321&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">270&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr></table></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has adopted the policy to include interest and penalty expense related to income taxes as interest and other expense, respectively. As of December&#160;31, 2022, no interest or penalties have accrued.  With few exceptions, the Company&#8217;s open tax years for its federal and state income tax returns are for the tax years ended 2017 through 2022, and for tax years ended 2016 through 2022 for its foreign income tax returns.  </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company currently intends to permanently reinvest its earnings in certain foreign subsidiaries. No U.S. corporate income taxes or foreign withholding taxes should be imposed on future distributions of the earnings not permanently reinvested.  If the amounts asserted as permanent reinvestment were distributed, the Company would be subject to approximately $4.8 million in withholding taxes.</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>38
<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="idm140629864548784">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Common Stock<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_EquityAbstract', window );"><strong>Equity [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_StockholdersEquityNoteDisclosureTextBlock', window );">COMMON STOCK</a></td>
<td class="text">COMMON STOCKOn January&#160;3, 2023, the Board of Directors of the Company declared a quarterly dividend of $0.22 per share which was paid on February&#160;1, 2023 to holders of record as of January&#160;18, 2023. The Company also has a share repurchase program under which the Company is authorized to repurchase, in the aggregate, up to $30.0 million of its outstanding common stock. During 2022, the Company purchased zero shares.<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_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_EquityAbstract</td>
</tr>
<tr>
<td style="padding-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_StockholdersEquityNoteDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.</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> -URI https://asc.fasb.org/topic&amp;trid=2208762<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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br><br>Reference 3: 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> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br><br>Reference 4: 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 14<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496171-112644<br><br>Reference 5: 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 14<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496171-112644<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<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 7: 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 18<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496189-112644<br><br>Reference 8: 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 (g)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br><br>Reference 9: 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 18<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496189-112644<br><br>Reference 10: 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 (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br><br>Reference 11: 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 14<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496171-112644<br><br>Reference 12: 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 18<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496189-112644<br><br>Reference 13: 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 16<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496180-112644<br><br>Reference 14: 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 (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br><br>Reference 15: 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(e)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126731327&amp;loc=SL126733271-114008<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityNoteDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>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="idm140629864342368">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock Options<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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Share-Based Payment Arrangement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock', window );">STOCK OPTIONS</a></td>
<td class="text">STOCK OPTIONS<div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Incentive Stock Option Plan</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On May 7, 2015, the stockholders of the Company approved the 2015 Incentive Stock Option Plan (&#8220;2015 ISO Plan&#8221;) and the Company reserved 400,000 shares of common stock for options to be issued under the 2015 ISO Plan. Each option becomes vested and exercisable for up to 20% of the total optioned shares one year following the grant of the option and for an additional 20% of the total optioned shares after each succeeding year until the option is fully exercisable at the end of the fifth year.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We also maintain other incentive option plans that have expired, under which previously granted awards remain outstanding. No additional grants may be awarded under these plans.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Following is a summary of activity in the Incentive Stock Option Plans for the periods indicated:</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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:32.379%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.402%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.402%"/><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.402%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.402%"/><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.402%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.410%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" 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%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" 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%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" 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%">2020</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 4pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Shares</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:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160; Exercise</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160; Price*</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 4pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Shares</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:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;Exercise</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160; Price*</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 4pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Shares</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:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;Exercise</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160; Price*</span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Options outstanding at beginning of year</span></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">87,610&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">91.24&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">100,920&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">68.58&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">119,720&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">57.65&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17,625&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">137.93&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,900&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">156.38&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,950&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">114.53&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(14,780)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">50.79&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(30,210)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">53.68&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(31,300)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">45.94&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Canceled</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(5,808)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">114.48&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2,000)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">130.92&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,450)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">96.97&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Options outstanding at end of year</span></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">84,647&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">106.43&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">87,610&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">91.24&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">100,920&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">68.58&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Options exercisable at end of year</span></td><td colspan="2" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">43,412&#160;</span></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">78.50&#160;</span></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">49,360&#160;</span></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">61.21&#160;</span></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">67,700&#160;</span></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">52.60&#160;</span></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Options available for grant at end of year</span></td><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">286,033&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">297,850&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">314,750&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%">*Weighted Averages</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;Options outstanding and exercisable at December&#160;31, 2022 were as follows:</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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.326%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.402%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.402%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.402%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:5.625%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.402%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.286%"/><td style="width:0.1%"/></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:9pt;font-weight:700;line-height:100%">Qualified Stock Options</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Options Outstanding</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Options Exercisable</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:'Times New Roman',sans-serif;font-size:9pt;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:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Shares</span></div></td><td colspan="9" 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%">Remaining Contractual  Life (yrs)*</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:400;line-height:100%">Exercise Price*</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:400;line-height:100%">Shares</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:400;line-height:100%">Exercise&#160;&#160;&#160;&#160; Price*</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Range of Exercise Price</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$42.70 - $83.99</span></div></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,725&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2.32</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">57.89&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,725&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">57.89&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$92.50 - $138.75</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">40,422&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7.57</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:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">119.34&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,387&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">103.89&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$156.38 - $234.57</span></div></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16,500&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.16</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">156.38&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,300&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">156.38&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">84,647&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">43,412&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%">*Weighted Averages</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The weighted-average grant-date fair values of options granted during 2022, 2021, and 2020 were $52.70, $59.01 and $38.33, respectively. Stock option expense was $0.6 million, $0.6 million and $0.5 million for years ending 2022, 2021, and 2020, respectively. As of December&#160;31, 2022, there was $1.3 million of total unrecognized compensation cost related to non-vested share-based compensation arrangements granted under the plans. That cost is expected to be recognized over a period of five years.</span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Equity Incentive Plan</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On May 2, 2019, the stockholders of the Company approved the 2019 Equity Incentive Plan and the Company reserved 500,000 shares of common stock for issuance of equity awards including the issuance of non-qualified options for the purchase of shares of our common stock which may be granted to Company officers and non-employee directors. Options become vested and exercisable for up to 20% of the total optioned shares one year following the grant of the option and for an additional 20% of the total optioned shares after each succeeding year until the option is fully exercisable at the end of the fifth year. </span><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:66.443%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.718%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.718%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.721%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',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:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2022</span></div></td><td colspan="3" style="border-top:1pt solid #000000;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:9pt;font-weight:700;line-height:100%">2021</span></div></td><td colspan="3" style="border-top:1pt solid #000000;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:9pt;font-weight:700;line-height:100%">2020</span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Options available for grant at end of year</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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%">381,531</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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%">423,969</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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%">455,549</span></td></tr></table></div><div style="padding-left:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We also maintain other incentive option plans that have expired, under which previously granted awards remain outstanding. No additional grants may be awarded under these plans.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Non-Qualified Options</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Following is a summary of activity in the Non-Qualified Stock Option Plans for the periods indicated:</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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:32.184%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.430%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.292%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.430%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.826%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.430%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.292%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.430%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.826%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.430%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.292%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.438%"/><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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" 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%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" 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%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" 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%">2020</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:400;line-height:100%">Shares</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:400;line-height:100%">Exercise Price*</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:400;line-height:100%">Shares</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:400;line-height:100%">Exercise Price*</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:400;line-height:100%">Shares</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:400;line-height:100%">Exercise Price*</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Options outstanding at beginning of year</span></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">2,000&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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%">53.51&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">3,000&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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%">53.51&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">5,300&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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%">46.87&#160;</span></td><td style="background-color:#def3c0;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:bottom"><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%">&#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%">&#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%">&#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%">&#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%">&#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%">&#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:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#def3c0;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,000)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">53.51&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,000)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">53.51&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,300)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">38.22&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Canceled</span></td><td colspan="2" style="background-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%">&#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%">&#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%">&#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%">&#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%">&#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:#def3c0;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:9pt;font-weight:400;line-height:100%">Options outstanding at end of year</span></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">1,000&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">53.51&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">2,000&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">53.51&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">3,000&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">53.51&#160;</span></td><td style="background-color:#def3c0;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;border-bottom:2pt solid #000000;border-top:2pt solid #000000;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%">Options exercisable at end of year</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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%">1,000&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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:2pt solid #000000;border-top:2pt 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%">53.51&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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:2pt solid #000000;border-top:2pt 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%">2,000&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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:2pt solid #000000;border-top:2pt 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%">53.51&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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:2pt solid #000000;border-top:2pt 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%">3,000&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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:2pt solid #000000;border-top:2pt 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%">53.51&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%">*Weighted Averages</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Options outstanding and exercisable as of December&#160;31, 2022 were as follows:</span></div><div style="text-indent:18pt"><span><br/></span></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 style="width:35.449%"/><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:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.133%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.987%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:5.917%"/><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:1.846%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.824%"/><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-weight:700;line-height:100%">Non-Qualified Stock Options</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:9pt;font-weight:700;line-height:100%">Options Outstanding</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:9pt;font-weight:700;line-height:100%">Options Exercisable</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:400;line-height:100%">Shares</span></td><td colspan="9" 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%">&#160;&#160; Remaining Contractual Life (yrs)*</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:400;line-height:100%">Exercise Price*</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:400;line-height:100%">Shares</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:400;line-height:100%">Exercise Price*</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Range of Exercise Price</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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"/></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;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;$42.70 - $83.99</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:9pt;font-weight:400;line-height:100%">1,000&#160;</span></td><td style="background-color:#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:9pt;font-weight:400;line-height:100%">1.36</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: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%">53.51&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,000&#160;</span></td><td style="background-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%">53.51&#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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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%">1,000&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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%">1,000&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%">*Weighted Averages</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There were no options granted in 2020</span><span style="color:#000000;font-family:'Times New Roman',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%">2021</span><span style="color:#000000;font-family:'Times New Roman',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%">or</span><span style="color:#000000;font-family:'Times New Roman',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%">2022. Stock option expense was zero for years ending 2022, 2021, and 2020, respectively. As of December&#160;31, 2022, there was zero unrecognized compensation cost related to non-vested share-based compensation arrangements granted under the plans.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During 2022, 2021, and 2020, 1,000, 1,000, and 2,300 non-qualified options were exercised, respectively, $0.1 million, $0.1 million, and $0.1 million of cash receipts were received, respectively. </span></div><div style="text-indent:18pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Restricted Stock Awards/Units</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Following is a summary of activity in the Restricted Stock Awards ("</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">RSA</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">")/Units for the periods indicated:</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;</span><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:31.794%"/><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:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.841%"/><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:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.841%"/><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:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.846%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" 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%">2022</span></td><td colspan="9" 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%">2021</span></td><td colspan="9" 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%">2020</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:400;line-height:100%">Shares</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:400;line-height:100%">Grant-Date Fair Value*</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:400;line-height:100%">Shares</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:400;line-height:100%">Grant-Date Fair Value*</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:400;line-height:100%">Shares</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:400;line-height:100%">Grant-Date Fair Value*</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Awards outstanding at beginning of year</span></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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%">80,616&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">129.53&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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%">91,043&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">104.77&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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%">78,705&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">94.34&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">48,396&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">133.70&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">35,224&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">157.00&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">44,307&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">111.95&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Exercised</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">(29,922)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">122.19&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">(45,651)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">101.36&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">(31,594)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">88.90&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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%">Canceled</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">(1,460)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">143.82&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">(375)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">100.34&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Awards outstanding at end of year</span></td><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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%">97,630&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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%">133.67&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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%">80,616&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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%">129.53&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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%">91,043&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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%">104.77&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%">*Weighted Averages</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Restricted stock awards vest over a three year period. The weighted-average remaining contractual life in years for 2022, 2021 and 2020 was 1.41, 1.61 and 1.95, respectively. Compensation expense was $4.9 million, $5.4 million and $3.7 million for years ending 2022, 2021, and 2020, respectively. As of December&#160;31, 2022, there was $7.0 million of total unrecognized compensation cost related to non-vested share-based compensation arrangements granted under the plans. That cost is expected to be recognized over a period of three years. </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Performance Stock Units</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2020, the Company's Board of Directors approved a change to our long-term incentive compensation plan to implement new performance-based equity grants in the form of a Performance Stock Unit ("PSU") award. PSU award vesting and payout amounts are tied to the Company's achievement of certain targeted financial metrics relating to a three-year performance period with the goal of more closely aligning executive compensation with long-term Company performance.</span></div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The 2020 target long-term incentive compensation mix established for the Company's Section 16 filers consists of RSAs and PSUs each representing fifty percent (50%) of the total long-term incentive compensation target value.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span>PSU awards represent a right to receive a certain number of shares of the Company&#8217;s common stock at the end of the three-year performance period if certain financial or other performance targets/metrics have been met.<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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<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="idm140629864257504">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Retirement Benefit Plans<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_CompensationAndRetirementDisclosureAbstract', window );"><strong>Retirement 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_PensionAndOtherPostretirementBenefitsDisclosureTextBlock', window );">RETIREMENT BENEFIT PLANS</a></td>
<td class="text">RETIREMENT BENEFIT PLANS<div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Defined Benefit Plans</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In connection with the February 3, 2006 purchase of all the net assets of the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Gradall</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> excavator business, the Company assumed sponsorship of two </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Gradall</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> non-contributory defined benefit pension plans, both of which are frozen with respect to both future benefit accruals and future new entrants.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Gradall</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Company Employees&#8217; Retirement Plan covers approximately 245 former employees and 51 current employees who (i) were formerly employed by JLG Industries, Inc., (ii) were not covered by a collective bargaining agreement and (iii) first participated in the plan before December 31, 2004. An amendment ceasing future benefit accruals for certain participants was effective December 31, 2004. A second amendment discontinued all future benefit accruals for all participants effective April 24, 2006.</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Gradall</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Company Hourly Employees&#8217; Pension Plan covered former employees and current employees who (i) were formerly employed by JLG Industries, Inc., (ii) were covered by a collective bargaining agreement and (iii) first participated in the plan before April 6, 1997. An amendment ceasing all future benefit accruals was effective April 6, 1997.</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the change in plan assets, change in projected benefit obligation, rate assumptions and components of net periodic benefit cost as of December 31 with respect to the plan. The measurement dates of the assets and liabilities of the plan were December 31 of the respective years presented.</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%">&#160;</span><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:53.139%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.794%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.859%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.847%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.861%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/></tr><tr><td colspan="15" style="border-bottom: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:100%">Reconciliation of Funded Status</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="9" 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:9pt;font-weight:700;line-height:100%">Year Ended December 31,</span></td><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:9pt;font-weight:400;line-height:100%">(in thousands)&#160;&#160;&#160;</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%">2022</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%">2021</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Change in projected benefit obligation&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"/></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:9pt;font-weight:400;line-height:100%">Benefit obligation at beginning of year</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: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%">22,564&#160;</span></td><td style="background-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%">24,100&#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:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Service cost</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">4&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">5&#160;</span></td><td style="background-color:#def3c0;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 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest cost</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:9pt;font-weight:400;line-height:100%">604&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">553&#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:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Liability actuarial (gain) loss </span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(4,761)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(994)</span></td><td style="background-color:#def3c0;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 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Benefits paid</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:9pt;font-weight:400;line-height:100%">(1,140)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,100)</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="display:none"/><td colspan="3" style="display:none"/><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:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Benefit obligation at end of year</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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%">17,271&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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%">22,564&#160;</span></td><td style="background-color:#def3c0;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;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:9pt;font-weight:400;line-height:100%">Change in fair value of plan assets&#160;&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Fair value of plan assets at beginning of year</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">23,671&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">22,370&#160;</span></td><td style="background-color:#def3c0;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 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Return on plan assets</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:9pt;font-weight:400;line-height:100%">(4,262)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,401&#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:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Employer contributions</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Benefits paid</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:9pt;font-weight:400;line-height:100%">(1,140)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,100)</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="display:none"/><td colspan="3" style="display:none"/><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:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Fair value of plan assets at end of year</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">18,269&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">23,671&#160;</span></td><td style="background-color:#def3c0;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;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Funded status </span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt 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:2pt solid #000000;border-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%">998&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt 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:2pt solid #000000;border-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,107&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #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><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company recognizes the overfunded or underfunded status (i.e., the difference between the fair value of plan assets and the projected benefit obligations) of defined benefit postretirement plans as an asset or liability in its consolidated balance sheet and recognizes changes in the funded status in the year in which the changes occur. The Company measures the funded status of a plan as of the date of the year-end consolidated balance sheet.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160; </span><span style="color:#ee2724;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The accumulated benefit obligation for our pension plan represents the actuarial present value of benefits based on employee service and compensation as of a certain date and does not include an assumption about future compensation levels.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> In determining the projected benefit obligation and the net pension cost, we used the following significant weighted-average assumptions:</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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:41.736%"/><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:15.859%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.636%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.639%"/><td style="width:0.1%"/></tr><tr><td colspan="15" style="border-bottom:1pt solid #000;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%">Rates to Determine Benefit Obligation</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="6" style="border-top:1pt solid #000;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:9pt;font-weight:700;line-height:100%">Year Ended December 31,</span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Discount rate</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5.10%</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2.75%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Composite rate of compensation increase</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">N/A</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">N/A</span></td></tr></table></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></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 style="width:41.736%"/><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:15.274%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.636%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.224%"/><td style="width:0.1%"/></tr><tr><td colspan="15" style="border-bottom:1pt solid #000;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%">Rates to Determine Net Periodic Benefit Cost</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:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="6" 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:9pt;font-weight:700;line-height:100%">Year Ended December 31,</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:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Discount rate</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2.75%</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2.35%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Long-term rate of return on plan 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:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6.00%</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7.25%</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Composite rate of compensation increase</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">N/A</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">N/A</span></td></tr></table></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company employs a building block approach in determining the expected long-term rate of return on plan assets. Historical markets are studied and long-term historical relationships between equities and fixed income are preserved consistent with the widely accepted capital market principle that assets with higher volatility generate a greater return over the long run. Current market factors such as inflation and interest rates are evaluated before long-term market assumptions are determined. The long-term portfolio return is established via a building block approach with proper consideration of diversification and rebalancing. Peer data and historical returns are reviewed to check for reasonability and appropriateness.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the components of net periodic benefit cost (gains are denoted with parentheses and losses are not):</span><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:68.052%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.723%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.864%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:4.894%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.867%"/><td style="width:0.1%"/></tr><tr><td colspan="15" style="border-bottom: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:100%">Components of Net Periodic Benefit Cost</span></td></tr><tr><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:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="9" 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:9pt;font-weight:700;line-height:100%">Year Ended December 31,</span></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:9pt;font-weight:700;line-height:100%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></div></td><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Service cost</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Interest cost</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:9pt;font-weight:400;line-height:100%">604&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">553&#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:#def3c0;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%">Expected return on plan assets</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,384)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,581)</span></td><td style="background-color:#def3c0;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"/></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:9pt;font-weight:400;line-height:100%">Amortization of net loss</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:9pt;font-weight:400;line-height:100%">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:9pt;font-weight:400;line-height:100%">542&#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"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Net periodic benefit cost</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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%">(594)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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%">(481)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;The Company estimates that $1.0 million of unrecognized actuarial expense will be amortized from Accumulated other comprehensive income (loss) into net periodic benefit costs during 2023.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company employs a total return investment approach whereby a mix of equities and fixed income investments are used to maximize the long-term return of plan assets for a prudent level of risk. Risk tolerance is established through careful consideration of plan liabilities, plan funded status, and corporate financial condition. The investment portfolio contains a diversified blend of equity and fixed income investments. Furthermore, equity investments are diversified across U.S. and non-U.S. stocks, as well as growth, value, and small and large </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">capitalization. Other assets such as real estate, private equity, and hedge funds are used judiciously to enhance long-term returns while improving portfolio diversification. Derivatives may be used to gain market exposure in an efficient and timely manner; however, derivatives may not be used to leverage the portfolio beyond the market value of the underlying investments. Investment risk is measured and monitored on an ongoing basis through quarterly investment portfolio reviews, annual liability measurements, and periodic asset/liability studies. Our current asset allocations are consistent with our targeted allocations.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The pension plans' weighted-average asset allocation as a percentage of plan assets at December 31 is as follows:</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%">&#160;</span><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:31.063%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><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:35.157%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.131%"/><td style="width:0.1%"/></tr><tr><td colspan="15" style="border-bottom:1pt solid #000;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%">Asset Allocation as a Percentage of the Plan</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="6" style="border-top:1pt solid #000;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:9pt;font-weight:700;line-height:100%">Year Ended December 31,</span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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%">2022</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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Equity securities</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">36%</span></td><td colspan="3" style="background-color:#def3c0;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%">36%</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:9pt;font-weight:400;line-height:100%">Debt securities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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:9pt;font-weight:400;line-height:100%">62%</span></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:9pt;font-weight:400;line-height:100%">62%</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Short-term investments</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">2%</span></td><td colspan="3" style="background-color:#def3c0;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%">2%</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:9pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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:9pt;font-weight:400;line-height:100%">&#8212;%</span></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:9pt;font-weight:400;line-height:100%">&#8212;%</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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:9pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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%">100%</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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%">100%</span></td></tr></table></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the hierarchy levels for our postretirement benefit plan investments as of December 31 as described in </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_124" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Note 1</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> to the Consolidated Financial Statements:</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%">&#160;</span><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 style="width:1.410%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:47.069%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.027%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.678%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.678%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.588%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.678%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.824%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.441%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.678%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.678%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.766%"/><td style="width:0.1%"/></tr><tr><td colspan="6" style="border-bottom:1pt solid #000000;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;<br/></span><span style="font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><br/></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;<br/>&#160;<br/>(in thousands)</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:9pt;font-weight:700;line-height:100%">December 31, 2022</span></td><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:9pt;font-weight:700;line-height:100%">Quoted</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Prices in Active</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Markets for</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Identical Assets</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 1)</span></div></td><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:9pt;font-weight:700;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Other</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Observable</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Inputs</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 2)</span></div></td><td colspan="6" 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:9pt;font-weight:700;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unobservable</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Inputs</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 3)</span></div></td></tr><tr><td colspan="6" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Mutual Funds:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</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="background-color:#ffffff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">Mid Cap</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: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%">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 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%">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 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="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"/></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:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">International</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">743&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">743&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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;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"/><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"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="6" style="background-color:#def3c0;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%">Common/Collective Trusts:</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/></tr><tr><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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Wells Fargo Liability Driven Solution CIT I</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:9pt;font-weight:400;line-height:100%">7,815&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">7,815&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo Liability Driven Solution CIT II</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">3,550&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">3,550&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo BlackRock International Equity</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:9pt;font-weight:400;line-height:100%">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="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">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="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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"/></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:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo/Causeway International Value</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">464&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">464&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo BlackRock Large Cap Growth Index Fund</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:9pt;font-weight:400;line-height:100%">724&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">724&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo BlackRock Large Cap Value Index Fund</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">744&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">744&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo Multi-Manager Small Cap</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:9pt;font-weight:400;line-height:100%">785&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">785&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo BlackRock Russell 2000 Index Fund</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">261&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">261&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo BlackRock S&amp;P Mid Cap Index Fund</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:9pt;font-weight:400;line-height:100%">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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo/MFS Value CIT F</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">359&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">359&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo/T. Rowe Price Large-Cap Growth Managed CIT</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:9pt;font-weight:400;line-height:100%">359&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">359&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo/T. Rowe Price Equity Income Managed CIT</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">356&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">356&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo Voya Large Cap Growth CIT F</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:9pt;font-weight:400;line-height:100%">357&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">357&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/></tr><tr><td colspan="6" style="background-color:#ffffff;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%">Cash &amp; Short-term Investments</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:9pt;font-weight:400;line-height:100%">432&#160;</span></td><td style="background-color:#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="2" style="background-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%">432&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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%">18,269&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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,687&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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%">16,582&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:46.853%"/><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.157%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><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.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><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.987%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><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.601%"/><td style="width:0.1%"/></tr><tr><td colspan="6" style="border-bottom:1pt solid #000000;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;<br/>&#160;<br/>&#160;<br/>&#160;<br/>(in thousands)</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:9pt;font-weight:700;line-height:100%">December 31, 2021</span></td><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:9pt;font-weight:700;line-height:100%">Quoted</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Prices in Active</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Markets for</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Identical Assets</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 1)</span></div></td><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:9pt;font-weight:700;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Other</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Observable</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Inputs</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 2)</span></div></td><td colspan="6" 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:9pt;font-weight:700;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unobservable</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Inputs</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 3)</span></div></td></tr><tr><td colspan="6" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Mutual Funds:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</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="background-color:#ffffff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">Mid Cap</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: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%">637&#160;</span></td><td style="background-color:#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 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%">637&#160;</span></td><td style="background-color:#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 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="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"/></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:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">International</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">940&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">940&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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;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"/><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"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="6" style="background-color:#def3c0;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%">Common/Collective Trusts:</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/></tr><tr><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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Wells Fargo Liability Driven Solution CIT I</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:9pt;font-weight:400;line-height:100%">7,782&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">7,782&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo Liability Driven Solution CIT II</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">7,026&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">7,026&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td></tr><tr><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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Wells Fargo BlackRock International Equity</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:9pt;font-weight:400;line-height:100%">616&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">616&#160;</span></td><td style="background-color:#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="2" style="background-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"/></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:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo/Causeway International Value</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">586&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">586&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo BlackRock Large Cap Growth Index Fund</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:9pt;font-weight:400;line-height:100%">950&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">950&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo BlackRock Large Cap Value Index Fund</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">968&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">968&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo Multi-Manager Small Cap</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:9pt;font-weight:400;line-height:100%">1,015&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,015&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo BlackRock Russell 2000 Index Fund</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">332&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">332&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo BlackRock S&amp;P Mid Cap Index Fund</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:9pt;font-weight:400;line-height:100%">419&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">419&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo/MFS Value CIT F</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">469&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">469&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo/T. Rowe Price Large-Cap Growth Managed CIT</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:9pt;font-weight:400;line-height:100%">465&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">465&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo/T. Rowe Price Equity Income Managed CIT</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">487&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">487&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo Voya Large Cap Growth CIT F</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:9pt;font-weight:400;line-height:100%">482&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">482&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/></tr><tr><td colspan="6" style="background-color:#ffffff;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%">Cash &amp; Short-term Investments</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:9pt;font-weight:400;line-height:100%">497&#160;</span></td><td style="background-color:#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="2" style="background-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%">497&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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%">23,671&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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,074&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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%">21,597&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our interests in the common collective trust investments are managed by one custodian. Consistent with our investment policy, the custodian has invested the assets across a widely diversified portfolio of U.S. and international equity and fixed income securities. Fair values of each security within the collective trust as of December&#160;31, 2022 were obtained from the custodian and are based on quoted market prices of individual investments; however, since the fund itself does not have a quoted market price, these assets are considered    Level 2.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The common collective funds noted in the above table have estimated fair value using the net asset value per share of investments. Investments can be redeemed immediately at the current net asset value per share based on the fair value of the underlying assets. Redemption frequency is daily. The categories contain investments in equity securities of smaller growing companies, medium-sized U.S. companies, large value-oriented and growth-oriented companies, and foreign companies traded on international markets.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Expected benefit payments are estimated using the same assumptions used in determining our benefit obligation as of December&#160;31, 2022. The following table illustrates the estimated pension benefit payments that are projected to be paid:</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%">&#160;</span><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:83.402%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:0.1%"/><td style="width:2.577%"/><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:2.726%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="12" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Projected Future Benefit Payments</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></div></td><td colspan="3" style="display:none"/><td colspan="9" style="border-top:1pt solid #000;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:9pt;font-weight:700;line-height:100%">Employees&#8217;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Retirement Plan</span></div></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2023</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,275&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;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;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="display:none"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,304&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,315&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;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;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2026</span></td><td colspan="3" style="display:none"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,312&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2027</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,306&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Years 2028 through 2032</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,209&#160;</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="text-align:center"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Supplemental Retirement Plan</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Board of Directors of the Company adopted the Alamo Group Inc. Supplemental Executive Retirement Plan (the &#8220;SERP&#8221;), effective as of January 3, 2011.&#160;The SERP will benefit certain key management or other highly compensated employees of the Company and/or certain subsidiaries who are selected by the Compensation Committee and approved by the Board to participate.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The SERP is intended to provide a benefit from the Company upon retirement, death or disability, or a change in control of the Company.&#160;Accordingly, the SERP obligates the Company to pay to a participant a Retirement Benefit (as defined in the SERP) upon the occurrence of certain payment events to the extent a participant has a vested right thereto.&#160;A participant&#8217;s right to his or her Retirement Benefit becomes vested in the Company&#8217;s contributions upon 10 years of Credited Service (as defined in the SERP) or a change in control of the Company.&#160; The Retirement Benefit is based on 20% of the final three-year average salary of each participant on or after his or her normal retirement age (65 years of age).&#160; In the event of the participant&#8217;s death or a change in control, the participant&#8217;s vested retirement benefit will be paid in a lump sum to the participant or his or her estate, as applicable, within 90 days after the participant&#8217;s death or a change in control, as applicable. In the event that the participant is entitled to a benefit from the SERP due to disability, retirement or other termination of employment, the benefit will be paid in monthly installments over a period of fifteen years.</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%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company records amounts relating to the SERP based on calculations that incorporate various actuarial and other assumptions, including discount rates, rate of compensation increases, retirement dates and life expectancy.&#160;The net periodic costs are recognized as employees render the services necessary to earn the SERP benefits.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In May of 2015, the Board amended the SERP to allow the Board to modify the retirement benefit percentage either higher or lower than 20%. In May of 2016, the Board added additional highly compensated employees to the plan. As of December&#160;31, 2022, the current retirement benefit (as defined in the plan) for the participants ranges from 10% to 20%.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The change in the Projected Benefit Obligation (PBO) as of December&#160;31, 2022 and 2021, is shown below:</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span><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.128%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.724%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.993%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/></tr><tr><td colspan="15" style="border-bottom: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:100%">Reconciliation of Benefit Obligation</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="9" 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:9pt;font-weight:700;line-height:100%">Year Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</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:middle"><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="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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Benefit obligation at January 1,</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,326&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,160&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Service cost</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">284&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">369&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest cost</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">278&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">205&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Liability actuarial loss (gain)</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2,023)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">759&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Benefits paid</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(313)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(167)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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"/></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"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Benefit obligation at December 31,</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,552&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,326&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr></table></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of net periodic pension expense were as follows:</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%">&#160;</span><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:67.274%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.556%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.077%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.267%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.226%"/><td style="width:0.1%"/></tr><tr><td colspan="15" style="border-bottom: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:100%">Components of Net Periodic Benefit Cost</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="9" 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:9pt;font-weight:700;line-height:100%">Year Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</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:middle"><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="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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Service cost</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">284&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">369&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest cost</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">278&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">205&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Amortization of prior service cost</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">420&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">413&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Amortization of net (gain)/loss</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">440&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">318&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net periodic benefit cost</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,422&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,305&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr></table></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company estimates that $0.4 million of unrecognized actuarial expense will be amortized from Accumulated other comprehensive income into net periodic benefit costs during 2023.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In determining the projected benefit obligation and the net pension cost, we used the following significant weighted-average assumptions:</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Assumptions used to determine benefit obligations at December 31:</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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:70.976%"/><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.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.498%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/></tr><tr><td colspan="12" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Rates to Determine Benefit Obligation</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Discount rate</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5.05%</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2.50%</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Composite rate of compensation increase</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3.00%</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3.00%</span></td><td colspan="3" style="display:none"/></tr></table></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Assumptions used to determine net periodic benefit cost for the years ended December 31:</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%">&#160;</span><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:70.894%"/><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:12.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.537%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/></tr><tr><td colspan="12" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Rates to Determine Net Periodic Benefit Cost</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Discount rate</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2.50%</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2.05%</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Composite rate of compensation increase</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3.00%</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3.00%</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Long-term rate of return on plan assets</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">N/A</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">N/A</span></td><td colspan="3" style="display:none"/></tr></table></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Future estimated benefits expected to be paid from the plan over the next ten years as follows:</span></div><div style="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:84.280%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.449%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:1.971%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><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%">Projected Future Benefit Payments</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">SERP</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><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:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2023</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">490&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">546&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">639&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">866&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">868&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><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;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Years 2028 through 2032</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,321&#160;</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Defined Contribution Plans</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company has two defined contribution plans, The </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Gradall</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Salaried Employees&#8217; Savings and Investment Plan (&#8220;Salary Plan&#8221;) and The International Association of Machinist and Aerospace Workers Retirement Plan (&#8220;IAM Plan&#8221;). The Company contributed $0.5 million, $0.5 million, and $0.4 million to the IAM Plan for the plan years ended December&#160;31, 2022, 2021 and 2020, respectively. The Company converted the Salary Plan into its 401(k) retirement and savings plan and put the Hourly Plan into a separate 401(k) retirement and savings plan.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company provides a defined contribution 401(k) retirement and savings plan for eligible U.S. employees. Company matching contributions are based on a percentage of employee contributions. Company contributions to the plan during 2022, 2021 and 2020 were $4.2 million, $3.9 million, and $3.5 million, respectively.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Three of the Company&#8217;s international subsidiaries also participate in a defined contribution and savings plan covering eligible employees. The Company&#8217;s international subsidiaries contribute between 0% and 10% of the participant&#8217;s salary up to a specific limit. Total contributions made to the above plans were $0.9 million, $0.9 million, and $0.9 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively.</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_CompensationAndRetirementDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CompensationAndRetirementDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 retirement benefits.</p></div>
<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 S99<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=21916913&amp;loc=d3e273930-122802<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)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (o)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (p)<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 70<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=49170846&amp;loc=d3e28014-114942<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -URI https://asc.fasb.org/topic&amp;trid=2235017<br><br>Reference 8: 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 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=6414203&amp;loc=d3e39689-114964<br><br>Reference 9: 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)(03)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 10: 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 (q)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 11: 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 (r)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 12: 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)(iii)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 13: 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><br>Reference 14: 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 (r)(2)<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_PensionAndOtherPostretirementBenefitsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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>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="idm140629864257504">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue and Segment Reporting<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_SegmentReportingAbstract', window );"><strong>Segment Reporting [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 );">REVENUE AND SEGMENT REPORTING</a></td>
<td class="text">REVENUE AND SEGMENT REPORTING<div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Disaggregation of revenue is presented in the tables below by product type. Management has determined that this level of disaggregation would be beneficial to users of the financial statements.</span></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 style="width:56.356%"/><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:1.992%"/><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:1.992%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.622%"/><td style="width:0.1%"/></tr><tr><td colspan="18" style="border-bottom: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:100%">Revenue by Product Type</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="15" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</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%">2020</span></td></tr><tr><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:9pt;font-weight:400;line-height:100%">Net Sales</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Wholegoods</span></td><td style="background-color:#def3c0;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:#def3c0;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,185,885&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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,024,158&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">885,254&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Parts</span></td><td colspan="2" style="background-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%">280,261&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">262,432&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">247,126&#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:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other *</span></td><td colspan="2" style="background-color:#def3c0;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%">47,470&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">47,633&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">31,086&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Consolidated</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt 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:2pt solid #000000;border-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,513,616&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt 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:2pt solid #000000;border-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,334,223&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt 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:2pt solid #000000;border-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,163,466&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table><span style="color:#000000;font-family:'Arial',sans-serif;font-size:7pt;font-weight:400;line-height:120%"> &#160;&#160;&#160;&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">*Other includes rental sales, extended warranty sales and service sales as it is considered immaterial.</span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s sales are principally within the United States, United Kingdom, France, Canada and Australia. The Company sells its products primarily through a network of independent dealers and distributors to governmental end-users, related independent contractors, as well as to the agricultural and commercial turf markets. Effective for the fourth quarter of 2021, the Company began reporting its operating results on the basis of the following segments, Vegetation Management Division and Industrial Equipment Division. Prior to the fourth quarter of 2021, the Company had been reporting its operating results on the basis of two segments which were the Industrial Division and Agricultural Division. The Vegetation Management Division includes all of the operations of the former Agricultural Division plus the mowing and forestry/tree care operations that were previously part of the former Industrial Division. The Industrial Equipment Division includes the Company&#8217;s vocational truck business and other industrial operations such as excavators, vacuum trucks, street sweepers, and snow removal equipment. </span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has included a summary of the financial information by reporting segment. The following table presents the revenue and income from operations by reporting segment for the years ended December&#160;31, 2022, 2021, and 2020:</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span><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:52.116%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.554%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.993%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.207%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</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%">2020</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net Revenue</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Vegetation Management</span></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">937,065&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">812,676&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">654,630&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Industrial Equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">576,551&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">521,547&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">508,836&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Consolidated</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,513,616&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,334,223&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,163,466&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Income from Operations</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Vegetation Management</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">108,508&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">78,917&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">46,651&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Industrial Equipment</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">40,084&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">38,021&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">48,134&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Consolidated</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">148,592&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">116,938&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">94,785&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr></table></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the goodwill and total identifiable assets by reporting segment for the years ended December&#160;31, 2022 and 2021:</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span><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:64.689%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.104%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.701%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.106%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="display:none"/></tr><tr><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:9pt;font-weight:700;line-height:100%">December 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:9pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="12" 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:9pt;font-weight:700;line-height:100%">Goodwill</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Vegetation Management</span></td><td style="background-color:#def3c0;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:#def3c0;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%">127,562&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">132,963&#160;</span></td><td style="background-color:#def3c0;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Industrial 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:9pt;font-weight:400;line-height:100%">68,296&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">69,443&#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:#def3c0;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:9pt;font-weight:400;line-height:100%">Consolidated</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">195,858&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">202,406&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="12" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Identifiable Assets </span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Vegetation Management</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: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%">866,974&#160;</span></td><td style="background-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%">789,838&#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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Industrial Equipment</span></td><td colspan="2" style="background-color:#def3c0;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%">441,534&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">415,904&#160;</span></td><td style="background-color:#def3c0;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;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Consolidated</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">1,308,508&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">1,205,742&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;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_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>42
<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="idm140629864342368">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accumulated Other Comprehensive Loss<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_EquityAbstract', window );"><strong>Equity [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 LOSS</a></td>
<td class="text">ACCUMULATED OTHER COMPREHENSIVE LOSS<div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Changes in accumulated other comprehensive loss by component, net of tax, were as follows:</span></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 style="width:20.391%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.864%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.525%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.110%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.402%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.700%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.864%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.525%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.110%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.409%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="27" style="border-bottom: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:100%">Twelve Months Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="12" 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:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="12" 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:100%">2021</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%">(in thousands)</span></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:9pt;font-weight:700;line-height:100%">Foreign Currency Translation Adjustment</span></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:9pt;font-weight:700;line-height:100%">Defined Benefit Plans Items</span></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:9pt;font-weight:700;line-height:100%">Gains (Losses) on Cash Flow Hedges</span></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:9pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">Foreign Currency Translation Adjustment</span></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:9pt;font-weight:700;line-height:100%">Defined Benefit Plans Items</span></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:9pt;font-weight:700;line-height:100%">Gains (Losses) on Cash Flow Hedges</span></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:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Balance as of beginning of period</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(42,397)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(5,017)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(1,576)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(48,990)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(26,597)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(6,855)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(6,874)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(40,326)</span></td><td style="background-color:#def3c0;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;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:9pt;font-weight:400;line-height:100%">Other comprehensive  income (loss) before reclassifications</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:9pt;font-weight:400;line-height:100%">(23,032)</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="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:9pt;font-weight:400;line-height:100%">&#8212;&#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="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:9pt;font-weight:400;line-height:100%">1,512&#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="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:9pt;font-weight:400;line-height:100%">(21,520)</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:9pt;font-weight:400;line-height:100%">(15,800)</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="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:9pt;font-weight:400;line-height:100%">&#8212;&#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="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:9pt;font-weight:400;line-height:100%">7,984&#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="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:9pt;font-weight:400;line-height:100%">(7,816)</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:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Amounts reclassified from accumulated other comprehensive loss</span></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#def3c0;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,707&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#def3c0;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%">535&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#def3c0;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,242&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#def3c0;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,838&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#def3c0;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,686)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#def3c0;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%">(848)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other comprehensive   income (loss)</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:9pt;font-weight:400;line-height:100%">(23,032)</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="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:9pt;font-weight:400;line-height:100%">1,707&#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="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:9pt;font-weight:400;line-height:100%">2,047&#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="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:9pt;font-weight:400;line-height:100%">(19,278)</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:9pt;font-weight:400;line-height:100%">(15,800)</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="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:9pt;font-weight:400;line-height:100%">1,838&#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="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:9pt;font-weight:400;line-height:100%">5,298&#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="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:9pt;font-weight:400;line-height:100%">(8,664)</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:#def3c0;border-bottom:2pt solid #000;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:9pt;font-weight:400;line-height:100%">Balance as of end of period</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">(65,429)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">(3,310)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">471&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">(68,268)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">(42,397)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">(5,017)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">(1,576)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">(48,990)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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"/></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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_EquityAbstract</td>
</tr>
<tr>
<td style="padding-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>43
<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="idm140629864257504">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>International Operations and Geographic 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_SegmentReportingAbstract', window );"><strong>Segment Reporting [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_alg_InternationalOperationsAndGeographicInformationTextBlock', window );">INTERNATIONAL OPERATIONS AND GEOGRAPHIC INFORMATION</a></td>
<td class="text">INTERNATIONAL OPERATIONS AND GEOGRAPHIC INFORMATION<div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Following is selected financial information on the Company&#8217;s international operations, which include the United Kingdom, France, Netherlands, Canada, Brazil, and Australia:</span><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:58.402%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.718%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.554%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.554%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.161%"/><td style="width:0.1%"/></tr><tr><td colspan="18" style="border-bottom: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:100%">International Operations Financial Information</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="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:middle"><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="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:middle"><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="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net sales</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">420,678&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">363,339&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">312,462&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income from operations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">48,893&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">34,561&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">31,166&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income before income taxes</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">51,206&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">37,051&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30,674&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Identifiable assets</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">364,752&#160;</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">352,187&#160;</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">304,536&#160;</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr></table></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;Following is other selected geographic financial information on the Company&#8217;s operations:</span></div><div style="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:52.993%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.554%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.554%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.769%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/></tr><tr><td colspan="18" style="border-bottom:1pt solid #000;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%">Geographic Financial Information</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="15" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="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:middle"><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="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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="6" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Geographic net sales:</span></div></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United States</span></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,080,893&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">953,024&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">862,430&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">France</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">89,629&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">92,052&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">81,259&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Canada</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">95,799&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">83,392&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">65,313&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United Kingdom</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">69,454&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">57,386&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">47,757&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Brazil</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">46,841&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">31,365&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16,592&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Netherlands</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">23,304&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,964&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">23,946&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Germany</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,115&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,977&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,328&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Australia</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,117&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">20,980&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,999&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">72,464&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">59,083&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">45,842&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total net sales</span></td><td style="border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,513,616&#160;</span></td><td style="border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,334,223&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,163,466&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/></tr><tr><td colspan="6" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Geographic location of long-lived assets:</span></div></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United States</span></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">457,075&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">461,341&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">480,940&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Netherlands</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28,428&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32,262&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">39,063&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Canada</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32,165&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32,132&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">33,573&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United Kingdom</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">31,767&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">36,569&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,843&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">France</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,728&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19,781&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">21,033&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Brazil</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,175&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,408&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,123&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Australia</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">670&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">790&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">964&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total long-lived assets</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">581,008&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">593,283&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">605,539&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/></tr></table></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Net sales are attributed to countries based on the location of customers.</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_alg_InternationalOperationsAndGeographicInformationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>International Operations And Geographic Information</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;">alg_InternationalOperationsAndGeographicInformationTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-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>44
<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="idm140629864342368">
<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 CONTINGENCIES<div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is subject to various unresolved legal actions that arise in the ordinary course of its business.  The most significant of such actions relates to product liability, which is generally covered by insurance after various self-insured retention amounts. While amounts claimed might be substantial and the liability with respect to such litigation cannot be determined at this time, the Company believes that the outcome of these matters will not have a material adverse effect on the Company&#8217;s consolidated financial position or results of operations; however, the ultimate resolution cannot be determined at this time. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Also, like other manufacturers, the Company is subject to a broad range of federal, state, local and foreign laws and requirements, including those concerning air emissions, discharges into waterways, and the generation, handling, storage, transportation, treatment and disposal of hazardous substances and waste materials, as well as the remediation of contamination associated with releases of hazardous substances at the Company&#8217;s facilities and off-site disposal locations, workplace safety and equal employment opportunities. These laws and regulations are constantly changing, and it is impossible to predict with accuracy the effect that changes to such laws and regulations may have on the Company in the future. Like other industrial concerns, the Company&#8217;s manufacturing operations entail the risk of noncompliance, and there can be no assurance that the Company will not incur material costs or other liabilities as a result thereof.</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_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>45
<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="idm140629859877712">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Significant Accounting Policies (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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 );">Basis of Presentation and Principles of Consolidation</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Basis of Presentation and Principles of Consolidation</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The accompanying consolidated financial statements include the accounts of Alamo Group Inc. and its subsidiaries (the &#8220;Company&#8221; or &#8220;Alamo Group&#8221;), all of which are wholly owned. 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><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Use of Estimates</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;The preparation of financial statements in conformity with U.S. Generally Accepted Accounting Principles requires management to make estimates and assumptions that affect the amount of assets, liabilities, revenues, and expenses reported in the financial statements and accompanying notes. Judgments related to asset impairment and certain reserves are particularly subject to change. Actual results could differ from those estimates. Such estimates include, but are not limited to, allowance for doubtful accounts, reserve for sales discounts, estimated realizable value on obsolete and slow-moving inventory, warranty reserve, estimates related to pension accounting, estimates related to fair value for purposes of assessing goodwill, long-lived assets and intangible assets for impairment, estimates related to income taxes, and estimates related to contingencies.</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_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock', window );">Foreign Currency</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Foreign Currency</span></div><div><span><br/></span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company translates the assets and liabilities of foreign-owned subsidiaries at rates in effect at the end of the year. Revenues and expenses are translated at average rates in effect during the reporting period. Translation adjustments are included in Accumulated other comprehensive income (loss).</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_CashAndCashEquivalentsPolicyTextBlock', window );">Cash Equivalents</a></td>
<td class="text">Cash EquivalentsThe Company considers all highly liquid investments with original maturities of three months or less from the date of purchase to be cash equivalents.<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskCreditRisk', window );">Concentrations of Credit Risk</a></td>
<td class="text"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Concentrations of Credit Risk</span></div><div style="margin-bottom:10pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Financial instruments which potentially subject the Company to concentrations of credit risk consist principally of accounts receivable. The credit risk is limited because of the large numbers and types of customers and their geographic dispersion.</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_InventoryPolicyTextBlock', window );">Inventory Valuation</a></td>
<td class="text">Inventory ValuationInventories are stated at the lower of cost or net realizable value.<span></span>
</td>
</tr>
<tr class="ro">
<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><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:107%">Property, Plant and Equipment</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property, plant, and equipment are stated on the basis of cost. Major renewals and betterments are charged to the property accounts, while replacements, maintenance and repairs, which do not improve or extend the lives of the respective assets, are expensed to the current period. Depreciation is provided at amounts calculated to amortize the cost of the assets over their estimated useful economic lives using the straight-line method.</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_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock', window );">Impairment of Long-lived assets</a></td>
<td class="text">Impairment of Long-Lived AssetsLong-lived assets, such as property, plant and equipment, rental equipment, and purchased intangibles subject to amortization, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not be recoverable.  If circumstances require a long-lived asset or asset group to be tested for possible impairment, the Company first compares non-discounted cash flows expected to be generated by that asset group to its carrying amount.  If the carrying amount of the long-lived asset or asset group is not recoverable on a non-discounted cash flow basis, an impairment is recognized to the extent that the carrying amount exceeds fair value.  Fair value is determined through various valuation techniques including discounted cash flow models, quoted market values and third-party independent appraisals, as considered necessary.<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy', window );">Goodwill</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Goodwill</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Goodwill represents the excess of the purchase price over the estimated fair value of the identifiable net assets acquired. Goodwill is not amortized but is instead tested for impairment at least annually, or whenever events or circumstances change between the annual impairment tests that make it likely that an impairment may have occurred, such as a significant adverse change in the business climate or a decision to sell all or a portion of a reporting unit. The Company performs its annual test for goodwill impairment related to its reporting units on October 1 of each fiscal year. Impairment testing for goodwill is done at the reporting unit level.  A reporting unit is an operating segment or one level below an operating segment (also known as a component).  A component of an operating segment is a reporting unit if the component constitutes a business for which discrete financial information is available, and segment management regularly reviews the operating results of that component. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We perform a qualitative assessment for all of our reporting units to determine whether it is more likely than not that an impairment exists.  Factors considered include macroeconomic, industry and competitive conditions, legal and regulatory environment, historical financial performance and significant changes in the reporting unit. If the qualitative assessment indicates that it is more likely than not that an impairment exists, then a quantitative assessment is performed. Alternatively, we may also bypass the qualitative assessment and go ahead and perform step 1 to determine if the carrying amount exceeds the reporting unit&#8217;s fair value. If the fair value of the reporting unit is lower than its carrying amount, goodwill is written down for the amount by which the carrying amount exceeds the fair value. However, the loss recognized cannot exceed the carrying amount of goodwill. We typically use discounted cash flow models to determine the fair value of a reporting unit. The assumptions used in these models are consistent with those we believe a hypothetical marketplace participant would use.</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_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy', window );">Intangible Assets</a></td>
<td class="text">Intangible Assets&#160;&#160;&#160;&#160;<div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has intangible assets with both definite and indefinite useful lives. The definite-lived assets are trade names and trademarks, customer and dealer relationships, and patents and drawings that are subject to amortization with useful lives ranging from 3 years to 25 years. Impairment of definite-lived assets is discussed as part of the </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Impairment of Long-Lived Assets</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> paragraph above.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">  </span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The indefinite-lived assets not subject to amortization consist of trade names.  The Company tests its indefinite-lived intangible assets for impairment on an annual basis at year-end, 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 amount. The impairment test consists of comparing the fair value of the indefinite-lived intangible asset, </span></div>determined using the relief from royalty method, with its carrying amount. An impairment loss would be recognized for the carrying amount in excess of its fair value.<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeasesPolicyTextBlock', window );">Leases</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:95%">Leases</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We determine if an arrangement is a lease at inception. Operating leases are included in other non-current assets, accrued liabilities, and other long-term liabilities on our consolidated balance sheets. Finance leases are included in property, plant and equipment, accrued liabilities, and other long-term liabilities on our consolidated balance sheets.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ROU assets represent our right to use an underlying asset for the lease term and lease liabilities represent our obligation to make lease payments arising from the lease. Operating lease ROU assets and liabilities are recognized at commencement date based on the present value of lease payments over the lease term. As most of our leases do not provide an implicit rate, we use our incremental borrowing rate based on the information available at commencement date in determining the present value of lease payments. The operating lease ROU asset also includes any lease payments made and excludes lease incentives. Our lease terms may include options to extend or terminate the lease when it is reasonably certain that we will exercise that option. Lease expense for lease payments is recognized on a straight-line basis over the lease term. </span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have elected to not account for the lease and non-lease components separately for most of our asset classes with the exception of real-estate.  We have also elected to exclude all lease agreements with an initial term of 12 months or less from the lease recognition requirements as allowed by ASC.</span></div>Rental EquipmentThe Company enters into operating lease agreements with customers related to the rental of certain equipment.  In accounting for these leases, the cost of the equipment purchased or manufactured by the Company is recorded as an asset, and is depreciated over its estimated useful life.<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PensionAndOtherPostretirementPlansPensionsPolicy', window );">Pensions</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Pensions</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company records annual amounts relating to its pension and post-retirement plans based on calculations that incorporate various actuarial and other assumptions, including discount rates, mortality, assumed rates of return, compensation increases, turnover rates and health care cost trend rates. The Company reviews its assumptions on an annual basis and makes modifications to the assumptions based on current rates and trends when it is appropriate to do so. The effect of modifications to those assumptions is recorded in Accumulated other comprehensive income (loss) and amortized to net periodic cost over future periods using the corridor method. The Company believes that the assumptions utilized in recording its obligations under its plans are reasonable based on its experience and market conditions. The net periodic costs are recognized as employees render the services necessary to earn the post-retirement benefits.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock', window );">Revenue Recognition</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Revenue Recognition</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The majority of the Company's revenue is recognized from product sales under contracts with customers. The Company presents two reportable operating segments within its financial statements: Vegetation Management and Industrial Equipment.  Contract terms and performance obligations within each contractual agreement are generally consistent for both divisions, with small differences that do not have a significant impact on the revenue recognition considerations under Topic 606.  Revenues are recognized when we satisfy our performance obligation to transfer product to our customers, which typically occurs at a point in time upon shipment or delivery of the product, and for an amount that reflects the transaction price that is allocated to the performance obligation.  Our contracts with customers state the final terms of sale, including the description, quantity and price for goods sold.  In the normal course of business, we generally do not accept product returns.  </span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The transaction price is the consideration that we expect to be entitled to in exchange for our products.  Some of our contracts contain variable consideration in the form of sales incentives to our customers, such as discounts and rebates.  For contracts that include variable consideration, we estimate the factors that determine the variable consideration in order to establish the transaction price. </span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have elected that any taxes collected from customers and remitted to government authorities (i.e., sales tax, use tax, etc.) are excluded from the measurement of the transaction price and therefore are excluded from net sales in the consolidated statements of operations.</span></div>There are instances where we provide shipping services in relation to the goods sold to our customers.  Shipping and handling costs that occur before the customer obtains control of the goods are deemed to be fulfillment activities and are included in cost of goods sold.  We have elected to account for shipping and handling activities that occur after the customer has obtained control of a good as fulfillment activities (i.e., an expense) rather than as a promised service.<span></span>
</td>
</tr>
<tr class="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 );">Rental Equipment</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:95%">Leases</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We determine if an arrangement is a lease at inception. Operating leases are included in other non-current assets, accrued liabilities, and other long-term liabilities on our consolidated balance sheets. Finance leases are included in property, plant and equipment, accrued liabilities, and other long-term liabilities on our consolidated balance sheets.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ROU assets represent our right to use an underlying asset for the lease term and lease liabilities represent our obligation to make lease payments arising from the lease. Operating lease ROU assets and liabilities are recognized at commencement date based on the present value of lease payments over the lease term. As most of our leases do not provide an implicit rate, we use our incremental borrowing rate based on the information available at commencement date in determining the present value of lease payments. The operating lease ROU asset also includes any lease payments made and excludes lease incentives. Our lease terms may include options to extend or terminate the lease when it is reasonably certain that we will exercise that option. Lease expense for lease payments is recognized on a straight-line basis over the lease term. </span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have elected to not account for the lease and non-lease components separately for most of our asset classes with the exception of real-estate.  We have also elected to exclude all lease agreements with an initial term of 12 months or less from the lease recognition requirements as allowed by ASC.</span></div>Rental EquipmentThe Company enters into operating lease agreements with customers related to the rental of certain equipment.  In accounting for these leases, the cost of the equipment purchased or manufactured by the Company is recorded as an asset, and is depreciated over its estimated useful life.<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_alg_RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock', window );">Shipping and Handling Costs</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Shipping and Handling Costs</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s policy is to include shipping and handling costs in costs of goods sold.</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"><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Advertising</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We charge advertising costs to expense as incurred. Advertising and marketing expense related to operations for fiscal years 2022, 2021, and 2020 was approximately $10.9 million, $10.2 million and $10.1 million, respectively. Advertising and marketing expenses are included in Selling, General and Administrative expenses (&#8220;SG&amp;A&#8221;).</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_ResearchAndDevelopmentExpensePolicy', window );">Research and Development</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Research and Development</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Product development and engineering costs charged to SG&amp;A amounted to $14.3 million, $11.7 million, and $12.4 million for the years ended December&#160;31, 2022, 2021, and 2020, respectively.</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_CommitmentsAndContingenciesPolicyTextBlock', window );">Commitments and Contingencies</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Commitments and Contingencies</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Liabilities for loss contingencies arising from claims, assessments, litigation, fines and penalties and other sources are recorded when it is probable that a liability has been incurred and the amount can be reasonably estimated.  The Company's policy is to accrue for legal costs expected to be incurred in connection with loss contingencies.</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_IncomeTaxPolicyTextBlock', window );">Income Taxes</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Income Taxes</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred tax assets and liabilities are determined based on differences between the financial reporting basis and tax basis of assets and liabilities, and are measured by applying enacted statutory tax rates applicable to the future years in which deferred tax assets or liabilities are expected to be settled or realized. In assessing the realizability of deferred tax assets, management considers whether it is more likely than not that some portion or all of the deferred tax assets will be realized. The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income during the periods in which those temporary differences become deductible. Management considers the scheduled reversals of deferred tax liabilities, projected future taxable income, available tax carrybacks and tax planning strategies in making this assessment other than those which we have reserved. We have elected to treat the global intangible low-taxed income (GILTI) tax as a period expense.</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_ShareBasedCompensationOptionAndIncentivePlansPolicy', window );">Stock-Based Compensation</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Stock-Based Compensation</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The Company has granted options to purchase its common stock, restricted stock awards, restricted stock units, and performance stock units to certain employees and directors of the Company and its affiliates under various stock option plans at no less than the fair market value of the underlying stock on the date of grant.&#160; These options are granted for a term not exceeding ten years and are forfeited in the event that the employee or director terminates his or her employment or relationship with the Company or one of its affiliates other than by retirement or death.&#160; These options generally vest over five years.&#160; All option plans contain anti-dilutive provisions that permit an adjustment of the number of shares of the Company&#8217;s common stock represented by each option for any change in capitalization. </span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value of each stock option is estimated on the date of grant using the Black-Scholes valuation method with the following assumptions noted:</span></div><div style="text-indent:18pt"><span><br/></span></div><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: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">The risk-free rate is based on the U.S. Treasury rate over the expected life of the option at the time of the grant.</span></div><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: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">The dividend yield is calculated as the ratio of dividends paid per share of common stock to the stock price on the date of the grant.</span></div><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: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">The expected volatility factors are based on the historical movement of the Company&#8217;s common stock price over the expected life of the option.</span></div><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:120%">4.</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">The expected life is the average length of time in which officers, other employees, and non-employee directors are expected to exercise their options, and which are primarily based on historical experience.</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_EarningsPerSharePolicyTextBlock', window );">Earnings per Common Share ("EPS")</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Earnings per Common Share (&#8220;EPS&#8221;)</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Basic EPS is computed using the weighted-average number of common shares outstanding during the year. The treasury stock method is used to compute diluted EPS which gives effect to the potential dilution of earnings that could have occurred if additional shares were issued for awards granted under the Company&#8217;s incentive stock option plans. The treasury stock method assumes that proceeds obtained upon exercise of awards granted under the incentive stock option plans are used to purchase outstanding common stock at the average market price 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_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">Accounting Pronouncements</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:107%">Accounting Pronouncements Not Yet Adopted</span></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">In September 2022, the FASB issues ASU No. 2022-04, &#8220;Liabilities&#8212;Supplier Finance Programs (Subtopic 405-50): Disclosure of Supplier Finance Program Obligations&#8221;.  The amendments in this Update are effective for are effective for fiscal years beginning after December 15, 202 and require that a buyer in a supplier finance program disclose sufficient information about the program to allow a user of financial statements to understand the program&#8217;s nature, activity during the period, changes from period to period, and potential magnitude. To achieve this objective, the Company will disclose qualitative and quantitative information about its supplier finance programs.</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_InventoryImpairmentPolicy', window );">Reserve for Inventory Obsolescence</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Reserve for Inventory Obsolescence </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">We value inventories at the lower of the cost of inventory or net realizable value. As needed, we record an inventory valuation adjustment for excess, slow moving, and obsolete inventory that is equal to the excess of the cost of the inventory over the estimated net realizable value. The inventory valuation adjustment to net realizable value establishes a new cost basis of the inventory that cannot be subsequently reversed. Such inventory valuation adjustments for excess, obsolete, and slow moving inventory are not reduced or removed until the product is sold or disposed of.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company had a reserve of $13.2 million on December&#160;31, 2022 and $12.9 million on December&#160;31, 2021 to cover obsolete and slow moving inventory. The increase in the reserve was primarily attributable to the Company's Industrial Equipment Division. The reserve for inventory obsolescence  is calculated as follows: 1) no inventory usage over a three-year period is deemed obsolete and reserved at 100%; and 2) slow moving inventory with little usage requires a 100% reserve on items that have a quantity greater than a three-year supply. There are exceptions to the obsolete and slow moving classifications if approved by an officer of the Company, based on specific identification of an item or items that are deemed to be either included or excluded from this classification. In cases where there is no historical data, management makes a judgment based on a specific review of the inventory in question to determine what reserves, if any, are appropriate. New products or parts are generally excluded from the reserve until a three-year history has been established.</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_StandardProductWarrantyPolicy', window );">Warranty</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Warranty</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s warranty policy is generally to provide its customers warranty for up to one year on all wholegood units and 90 days on parts, though some components can have warranty for longer terms.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Warranty reserve, as a percentage of sales, is generally calculated by looking at the current twelve months&#8217; expenses and prorating that amount based on twelve months&#8217; sales with a <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI3OTQ_46274a57-12b5-4685-a7f7-b0ac8eb30cb6">three</span> to six month lag period. The Company&#8217;s historical experience is that an end-user takes approximately <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI4OTc_461d3e84-85a1-4af0-9172-95baabe6f27b">three</span> to six months from the receipt of the unit to file a warranty claim.</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_FairValueOfFinancialInstrumentsPolicy', window );">Fair Value of Financial Instruments</a></td>
<td class="text"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">U.S. GAAP requires or permits certain assets or liabilities to be measured at fair value on a recurring or non- recurring basis in our balance sheets. U.S. GAAP also requires the disclosure of the fair values of financial instruments when an option to elect fair value accounting has been provided but such election has not been made.  A debt obligation is an example of such a financial instrument.</span></div><div style="text-align:center"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Fair value is defined as the exchange price that would be received for an asset or paid to transfer a liability (an exit price) in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants. There is a three-tier fair value hierarchy based upon the observability of inputs used in valuation techniques. Observable inputs (highest level) reflect market data obtained from independent sources, while </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">unobservable inputs (lowest level) reflect internally developed market assumptions. In fair value, measurements are classified under the following hierarchy:</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Level 1</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> &#8211; Quoted prices for identical assets or liabilities in active markets.</span></div><div style="padding-left:81pt;text-indent:-45pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Level 2</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> &#8211; Quoted prices for similar instruments in active markets; quoted prices for identical or similar instruments in markets that are not active; and model-derived valuations in which all significant inputs or significant value-drivers are observable in active markets.</span></div><div style="padding-left:81pt;text-indent:-45pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Level 3</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> &#8211; Model-derived valuations in which one or more significant inputs or significant value-drivers are unobservable.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="padding-right:16pt;text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">When measuring fair value, the Company maximizes use of observable inputs and minimizes the use of unobservable inputs.</span></div><div style="padding-left:6pt;padding-right:16pt;text-indent:36pt"><span><br/></span></div><div style="margin-top:0.4pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">       Fair value measurements are classified to the lowest level input or value-driver that is significant to the valuation. A measurement may therefore be classified within Level 3 even though there may be significant inputs that are readily observable.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The carrying values of certain financial instruments, including cash and cash equivalents, accounts receivable, accounts payable, and accrued expenses, approximate fair value because of the short-term nature of these items. The carrying value of our debt approximates the fair value as of December&#160;31, 2022 and 2021, as the floating rates on our outstanding balances approximate current market rates. This conclusion was made based on Level 2 inputs.   Fair values determined by Level 2 utilize inputs that are observable for the asset or liability, either directly or indirectly. These include quoted prices for similar assets or liabilities in active markets and quoted prices for identical or similar assets or liabilities in markets that are not active. Other than the investments held by the retirement benefit plans, as described in </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_175" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Note 17</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> to the Consolidated Financial Statements, the Company does not have any other significant financial assets or liabilities measured at fair value on a recurring basis. </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The Company has no recurring or nonrecurring valuations that fall under Level 3 of the fair value hierarchy as of December&#160;31, 2022 and 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_alg_RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Revenue From Contract With Customer, Shipping And Handling 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;">alg_RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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_CommitmentsAndContingenciesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 commitments and contingencies, which may include policies for recognizing and measuring loss and gain 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 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126907703&amp;loc=d3e12565-110249<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 450<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6491354&amp;loc=d3e6049-115624<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesPolicyTextBlock</td>
</tr>
<tr>
<td style="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_ConcentrationRiskCreditRisk">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for credit risk.</p></div>
<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 1<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 825<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126941378&amp;loc=d3e61044-112788<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskCreditRisk</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_EarningsPerSharePolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements.</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><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 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_EarningsPerSharePolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueOfFinancialInstrumentsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for determining the fair value of financial instruments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 60<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=7493716&amp;loc=d3e21868-110260<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13279-108611<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueOfFinancialInstrumentsPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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_GoodwillAndIntangibleAssetsGoodwillPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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. This accounting policy also may address how an entity assesses and measures impairment of goodwill, how reporting units are determined, how goodwill is allocated to such units, and how the fair values of the reporting units are determined.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><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://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -URI https://asc.fasb.org/subtopic&amp;trid=2144439<br><br>Reference 3: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 intangible assets. This accounting policy may address both intangible assets subject to amortization and those that are not. The following also may be disclosed: (1) a description of intangible assets (2) the estimated useful lives of those assets (3) the amortization method used (4) how the entity assesses and measures impairment of such assets (5) how future cash flows are estimated (6) how the fair values of such asset are determined.</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> -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_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy</td>
</tr>
<tr>
<td style="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_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 impairment and disposal of long-lived assets including goodwill and other intangible assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="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_InventoryImpairmentPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 inventory losses, including, but not limited to, substantial and unusual losses resulting from the subsequent measurement of inventory due to physical deterioration, obsolescence, or changes in price levels.</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 330<br> -SubTopic 10<br> -Section 35<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126904749&amp;loc=d3e3927-108312<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryImpairmentPolicy</td>
</tr>
<tr>
<td style="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_PensionAndOtherPostretirementPlansPensionsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 pension plans. This accounting policy may address (1) the types of plans sponsored by the entity (2) groups that participate in (or are covered by) each plan (3) how plan assets, liabilities and expenses are measured, including the use of any actuaries and (4) significant assumptions used by the entity to value plan assets and liabilities and how such assumptions are derived.</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 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6412939&amp;loc=d3e15145-114933<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 70<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=49170846&amp;loc=d3e28014-114942<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 80<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=65877416&amp;loc=d3e29149-114947<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PensionAndOtherPostretirementPlansPensionsPolicy</td>
</tr>
<tr>
<td style="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_ResearchAndDevelopmentExpensePolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 costs it has incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 730<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6420194&amp;loc=d3e21568-108373<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ResearchAndDevelopmentExpensePolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_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_StandardProductWarrantyPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 standard warranties including the methodology for measuring the liability.</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 8<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126907703&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyPolicy</td>
</tr>
<tr>
<td style="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>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="idm140629864536816">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>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_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock', window );">Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions</a></td>
<td class="text">The Company calculated the fair value for options with the following weighted-average assumptions for 2022, 2021, and 2020:<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:54.455%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.577%"/><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:2.139%"/><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:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.184%"/><td style="width:0.1%"/></tr><tr><td colspan="21" style="border-bottom:1pt solid #000;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%">Fair Value Calculation Assumptions for Stock Compensation</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="15" 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:9pt;font-weight:700;line-height:100%">December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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%">2022</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%">2021</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%">2020</span></td></tr><tr style="height:9pt"><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Risk-free interest rate</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">1.93&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">1.25&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">1.22&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">Dividend yield</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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.4&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Volatility factors</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">33.2&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">33.9&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">30.0&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;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%">Weighted-average expected life</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;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%">8.0 years</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;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%">8.0 years</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;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%">8.0 years</span></td></tr></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -URI 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_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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>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="idm140629866512848">
<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 Earnings Per Share, Basic and Diluted</a></td>
<td class="text">The following table sets forth the reconciliation from basic to diluted average common shares and the calculations of net income per common share. Net income for basic and diluted calculations does not differ.<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:53.900%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.194%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:5.958%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.194%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:5.958%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.196%"/><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-weight:400;line-height:100%">(in thousands, except per share amounts)</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: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:9pt;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:9pt;font-weight:700;line-height:100%">2020</span></td></tr><tr style="height:9pt"><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income</span></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">101,928&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">80,245&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">57,804&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Average common shares:</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Basic (weighted-average outstanding shares)</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,877&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,837&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,782&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Dilutive potential common shares from stock&#160;options</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">57&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">59&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">63&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Diluted (weighted-average outstanding shares)</span></div></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:9pt;font-weight:400;line-height:100%">11,934&#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;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%">11,896&#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;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%">11,845&#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:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Basic earnings per share</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.58&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6.78&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4.91&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Diluted earnings per share</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.54&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6.75&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4.88&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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>48
<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="idm140629864615232">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Valuation and Qualifying Accounts (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alg_ScheduleOfValuationAndQualifyingAccountsTableTextBlock', window );">Schedule of Valuation and Qualifying Accounts</a></td>
<td class="text"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Valuation and qualifying accounts included the following:</span><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:30.186%"/><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:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.431%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.133%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.431%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.016%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></div></td><td colspan="3" 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:9pt;font-weight:700;line-height:100%">Balance</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Beginning of</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Year</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" 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:9pt;font-weight:700;line-height:100%">Net</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Charged to</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Costs and</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Expenses</span></div></td><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">&#160;Translations,</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Reclassifications</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">and Acquisitions</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" 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:9pt;font-weight:700;line-height:100%">&#160;Net Write-Offs or</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Discounts Taken</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" 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:9pt;font-weight:700;line-height:100%">Balance</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">End of</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Year</span></div></td></tr><tr><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:9pt;font-weight:700;line-height:100%">2022</span></td><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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#160;</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:#def3c0;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%">Reserve for sales discounts</span></td><td style="background-color:#def3c0;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:#def3c0;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%">12,567&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">137,553&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">(21)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">(130,238)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">19,861&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Reserve for inventory obsolescence</span></td><td colspan="2" style="background-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,908&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">6,998&#160;</span></td><td style="background-color:#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="2" style="background-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%">(277)</span></td><td style="background-color:#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="2" style="background-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%">(6,420)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">13,209&#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:#def3c0;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%">Reserve for warranty</span></td><td colspan="2" style="background-color:#def3c0;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,953&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">11,290&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(244)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(11,659)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,340&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:#def3c0;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%">Reserve for sales discounts</span></td><td style="background-color:#def3c0;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:#def3c0;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%">13,549&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">116,114&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">(688)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">(116,408)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">12,567&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Reserve for inventory obsolescence</span></td><td colspan="2" style="background-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,027&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">6,531&#160;</span></td><td style="background-color:#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="2" style="background-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%">(146)</span></td><td style="background-color:#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="2" style="background-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%">(5,504)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,908&#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:#def3c0;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%">Reserve for warranty</span></td><td colspan="2" style="background-color:#def3c0;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,096&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">10,727&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,738)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,953&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:#def3c0;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%">Reserve for sales discounts</span></td><td style="background-color:#def3c0;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:#def3c0;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%">16,883&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">93,398&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">(96,747)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">13,549&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Reserve for inventory obsolescence</span></td><td colspan="2" style="background-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%">8,233&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">4,609&#160;</span></td><td style="background-color:#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="2" style="background-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,471&#160;</span></td><td style="background-color:#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="2" style="background-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,286)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,027&#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:#def3c0;border-bottom:1pt solid #000;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%">Reserve for warranty</span></td><td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%">10,249&#160;</span></td><td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%">8,466&#160;</span></td><td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%">247&#160;</span></td><td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%">(9,866)</span></td><td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%">9,096&#160;</span></td><td style="background-color:#def3c0;border-bottom:1pt solid #000;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_alg_ScheduleOfValuationAndQualifyingAccountsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Valuation And Qualifying Accounts [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;">alg_ScheduleOfValuationAndQualifyingAccountsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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>49
<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="idm140629866513648">
<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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Inventories consisted of the following:</span><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.350%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.139%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.373%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.432%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.206%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Finished goods and parts</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">312,726&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">277,760&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Work in process</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22,273&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,895&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Raw materials</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17,554&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,262&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Inventory, net</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">352,553&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">320,917&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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_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>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="idm140629862289904">
<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 );">Schedule of Property, Plant and Equipment</a></td>
<td class="text"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Property, plant and equipment consist of the following:</span><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:46.560%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.139%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.724%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.724%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.501%"/><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-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:9pt;font-weight:700;line-height:100%">December 31,</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%">&#160;</span></td></tr><tr><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:9pt;font-weight:400;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></div></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%">2022</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%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" 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:9pt;font-weight:700;line-height:100%">Useful</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Lives</span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Land</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,792&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,838&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Buildings and improvements</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">145,616&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">145,086&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5-20 yrs.</span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Machinery and equipment</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">140,252&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">129,901&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3-10 yrs.</span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Office furniture and equipment</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,270&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,291&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3-7 yrs.</span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Computer software</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,551&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,384&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3-7 yrs.</span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Transportation equipment</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,597&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,363&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3 yrs.</span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Property, plant and equipment, at cost</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">335,078&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">321,863&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accumulated depreciation</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(180,071)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(169,372)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Property, plant and equipment, net</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">155,007&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">152,491&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>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="idm140629864574080">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill (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 Goodwill</a></td>
<td class="text"><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 year ended December&#160;31, 2020, 2021, and 2022 are as follows:</span><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:54.309%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:1.970%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.256%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:1.970%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:1.970%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.256%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:1.970%"/><td style="width:0.1%"/><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:2.262%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.137%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Vegetation Management</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Industrial Equipment</span></td><td colspan="3" style="display:none"/><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:700;line-height:100%">Consolidated</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><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="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:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance at December 31, 2019</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">126,894&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">71,128&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;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="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">198,022&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Translation adjustment</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">132&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,036&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,168&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Goodwill adjustment</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2,045)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2,013)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;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="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(4,058)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance at December 31, 2020</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">124,981&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">70,151&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">195,132&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Translation adjustment</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,510)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(708)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;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="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2,218)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Goodwill acquired</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,492&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><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:middle"/><td colspan="3" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,492&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance at December 31, 2021</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">132,963&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">69,443&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;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="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">202,406&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Translation adjustment</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,882)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,147)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,029)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Goodwill adjustment</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,519)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;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="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,519)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance at December 31, 2022</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">127,562&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">68,296&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;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="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">195,858&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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_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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>52
<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="idm140629855297536">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>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_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock', window );">Schedule of Finite Lived Intangible Assets</a></td>
<td class="text"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a summary of the Company's intangible assets net of the accumulated amortization:</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%"> </span><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.755%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.419%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:1.974%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.002%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.289%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:1.974%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.027%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.560%"/><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-weight:400;line-height:100%">(in thousands)</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:700;line-height:100%">Estimated Useful Lives</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:9pt;font-weight:700;line-height:100%">December 31, 2022</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:9pt;font-weight:700;line-height:100%">December 31, 2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Definite:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Trade names and trademarks</span></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:9pt;font-weight:400;line-height:100%">15-25 years</span></div></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: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%">68,797&#160;</span></td><td style="background-color:#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 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%">68,321&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;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;&#160;&#160;Customer and dealer relationships</span></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">8-15 years</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">129,338&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">126,104&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Patents and developed technologies</span></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:9pt;font-weight:400;line-height:100%">3-12 years</span></div></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:9pt;font-weight:400;line-height:100%">28,437&#160;</span></td><td style="background-color:#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="2" style="background-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%">29,338&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;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;&#160;&#160;Favorable leasehold interests</span></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">7 years</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">4,200&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">4,200&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;&#160;Total at cost</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;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:9pt;font-weight:400;line-height:100%">230,772&#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;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;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:9pt;font-weight:400;line-height:100%">227,963&#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;border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;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;&#160;&#160;Less accumulated amortization</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(64,931)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(49,997)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total net</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%">165,841&#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;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%">177,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;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Indefinite:</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Trade names and trademarks</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">5,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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">5,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"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total Intangible Assets</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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%">171,341&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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%">183,466&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/></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_ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock', window );">Schedule of Indefinite-Lived Intangible Assets</a></td>
<td class="text"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a summary of the Company's intangible assets net of the accumulated amortization:</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%"> </span><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.755%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.419%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:1.974%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.002%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.289%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:1.974%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.027%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.560%"/><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-weight:400;line-height:100%">(in thousands)</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:700;line-height:100%">Estimated Useful Lives</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:9pt;font-weight:700;line-height:100%">December 31, 2022</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:9pt;font-weight:700;line-height:100%">December 31, 2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Definite:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Trade names and trademarks</span></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:9pt;font-weight:400;line-height:100%">15-25 years</span></div></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: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%">68,797&#160;</span></td><td style="background-color:#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 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%">68,321&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;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;&#160;&#160;Customer and dealer relationships</span></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">8-15 years</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">129,338&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">126,104&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Patents and developed technologies</span></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:9pt;font-weight:400;line-height:100%">3-12 years</span></div></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:9pt;font-weight:400;line-height:100%">28,437&#160;</span></td><td style="background-color:#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="2" style="background-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%">29,338&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;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;&#160;&#160;Favorable leasehold interests</span></td><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">7 years</span></div></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">4,200&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">4,200&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;&#160;Total at cost</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;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:9pt;font-weight:400;line-height:100%">230,772&#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;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;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:9pt;font-weight:400;line-height:100%">227,963&#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;border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;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;&#160;&#160;Less accumulated amortization</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(64,931)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(49,997)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total net</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%">165,841&#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;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%">177,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;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Indefinite:</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Trade names and trademarks</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">5,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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">5,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"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total Intangible Assets</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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%">171,341&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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%">183,466&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/></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_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.</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><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> -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_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 assets, excluding financial assets and goodwill, lacking physical substance and exist in perpetuity, by either major class or business segment.</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 3<br> -Subparagraph (b),(d)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16373-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 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_ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock</td>
</tr>
<tr>
<td style="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>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="idm140629861594528">
<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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeaseCostTableTextBlock', window );">Components of Lease Expense</a></td>
<td class="text">As of December&#160;31, 2022, the components of lease cost were as follows:<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:61.911%"/><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:15.420%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.262%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.423%"/><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"/></tr><tr><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%">Components of Lease Cost</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="9" 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:9pt;font-weight:700;line-height:100%">Twelve Months Ended December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</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"/></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Finance lease cost:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;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"/></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:9pt;font-weight:400;line-height:100%">Amortization of right-of-use assets</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: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%">30&#160;</span></td><td style="background-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%">67&#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="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Interest on lease liabilities</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">3&#160;</span></td><td style="background-color:#def3c0;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="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:9pt;font-weight:400;line-height:100%">Operating lease cost</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:9pt;font-weight:400;line-height:100%">5,783&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">5,571&#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="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,397&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,033&#160;</span></td><td style="background-color:#def3c0;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="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:9pt;font-weight:400;line-height:100%">Variable lease cost</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:9pt;font-weight:400;line-height:100%">348&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">410&#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="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"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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:9pt;font-weight:400;line-height:100%">Total lease cost</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">7,559&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">7,084&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;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="display:none"/><td colspan="3" style="display:none"/></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_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">Operating Lease Maturity</a></td>
<td class="text"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, future minimum lease payments under these non-cancelable leases are:</span><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:70.245%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.110%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.345%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><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%">Future Minimum Lease Payments</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></div></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;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:9pt;font-weight:700;line-height:100%">Operating</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Leases</span></div></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2023</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,177&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,099&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,294&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2026</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,728&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2027</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,780&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Thereafter</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,743&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total minimum lease payments</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,821&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:9pt;font-weight:400;line-height:100%">Less imputed interest</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,287)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Total lease liabilities</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17,534&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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"/></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"/></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"/></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"/></tr></table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alg_AssetsAndLiabilitiesLesseeTableTextBlock', window );">Supplemental Balance Sheet Information Related to Leases</a></td>
<td class="text"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental balance sheet information related to leases was as follows:</span><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:60.888%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.992%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.420%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.577%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.423%"/><td style="width:0.1%"/></tr><tr><td colspan="15" style="border-bottom: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:100%">Operating Leases</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="9" 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:9pt;font-weight:700;line-height:100%">December 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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-right:-30pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtMC0xLTEtNjM4ODc_519b9153-1678-4ae1-96d9-ece32fbc6c3b"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtMC0xLTEtNjM4ODc_5e442bd9-e082-43f6-86fc-6dbc895fe9ba">Other non-current assets</span></span></span></div></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">17,249&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">16,744&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;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;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:#def3c0;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%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtMC0xLTEtNjM4ODc_54be147c-36db-432e-8216-c265a23c942d"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtMC0xLTEtNjM4ODc_82079088-df46-459e-bc9c-032b93ad004c">Accrued liabilities</span></span></span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">4,685&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">4,655&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtMC0xLTEtNjM4ODc_152d7955-5136-4b3a-93f9-0d42b9c326e3"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtMC0xLTEtNjM4ODc_39316545-72e7-4e77-b63e-2caddc622e2e">Other long-term liabilities</span></span></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:9pt;font-weight:400;line-height:100%">12,849&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,237&#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:#def3c0;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:9pt;font-weight:400;line-height:100%">Total operating lease liabilities</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">17,534&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">16,892&#160;</span></td><td style="background-color:#def3c0;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;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:9pt;font-weight:400;line-height:100%">Weighted average remaining lease term</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%">4.66 years</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%">5.14 years</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Weighted average discount rate</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">3.30&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 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%">%</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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.83&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 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%">%</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"/></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"/></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"/></tr></table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alg_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock', window );">Supplemental Cash Flow Information Related to Leases</a></td>
<td class="text"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Supplemental cash flow information related to leases was as follows:</span><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.057%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.554%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.847%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.523%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">Twelve Months Ended December 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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">2021</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"/></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Cash paid for amounts included in the measurement of lease liabilities:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;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"/></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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;Operating cash flows from operating leases </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: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%">5,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 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%">5,013&#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"/></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_alg_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</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;">alg_AssetsAndLiabilitiesLesseeTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_alg_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Supplemental Cash Flow Information Related to Leases</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;">alg_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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>54
<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="idm140629866512848">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accrued Liabilities (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_PayablesAndAccrualsAbstract', window );"><strong>Payables and Accruals [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 );">Schedule of Accrued Liabilities</a></td>
<td class="text"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued liabilities consist of the following balances:</span><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.028%"/><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.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.847%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.499%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Salaries, wages and bonuses</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">37,590&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">37,462&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Lease liability</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,685&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,655&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Taxes</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,426&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,902&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Warranty</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,340&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,953&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Retirement provision</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,588&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,967&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Customer deposits</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,197&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,383&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,542&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,201&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued liabilities</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">71,368&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">73,523&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="padding-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>55
<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="idm140629866514976">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Long-Term 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_DebtDisclosureAbstract', window );"><strong>Debt 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_ScheduleOfDebtInstrumentsTextBlock', window );">Schedule of Components of Long-Term Debt</a></td>
<td class="text"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of long-term debt are as follows:</span><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: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:1.0%"/><td style="width:4.747%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.330%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Bank revolving credit facility</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">52,000&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,000&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Term debt</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">249,928&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">265,498&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_9b1bfaa9-100d-4705-a145-bc36daae463f"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_c663b58e-5137-4e83-8879-5ba725887654"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_fdd87ed0-80b6-4669-a105-d27b4fbd2dac"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_ffc75352-7531-4c29-bdca-e32d1f2af6f6">Capital lease obligations</span></span></span></span></span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">56&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total debt</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">301,952&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">269,554&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less current maturities</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15,009&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15,032&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total long-term debt</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">286,943&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">254,522&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfDebtInstrumentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the entity, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-122690<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 45<br> -Paragraph 1A<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28541-108399<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21506-112644<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 69B<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<br><br>Reference 6: 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 7: 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 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21521-112644<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21538-112644<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 470<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=123599511&amp;loc=d3e64711-112823<br><br>Reference 11: 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 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21475-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_ScheduleOfDebtInstrumentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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>56
<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="idm140629862404240">
<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 );">Schedule of Income before Income Tax, Domestic and Foreign</a></td>
<td class="text"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Earnings before income taxes were as follows:</span><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.648%"/><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:1.992%"/><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:1.846%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.332%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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:top"><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="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:top"><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="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:top"><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="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income before income taxes:</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:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Domestic</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">86,680&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">74,070&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">50,977&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">47,630&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">35,428&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28,780&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">134,310&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">109,498&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">79,757&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock', window );">Schedule of Components of Income Tax Expense (Benefit)</a></td>
<td class="text"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of income tax expense (benefit) were as follows:</span><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:53.285%"/><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:1.0%"/><td style="width:2.701%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.701%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.331%"/><td style="width:0.1%"/></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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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:top"><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="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:top"><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="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:top"><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="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Current:</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:left;vertical-align:middle"><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="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><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="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Domestic</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19,197&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16,846&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,823&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,848&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,646&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,759&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">State</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,674&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,943&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,226&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><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="background-color:#ffffff;border-top:1pt solid #000000;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">34,719&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30,435&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22,808&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Deferred:</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Domestic</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2,246)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(679)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,238&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(51)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(274)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1199)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">State</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(40)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(229)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(894)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><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="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2,337)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,182)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(855)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total income taxes</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32,382&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">29,253&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">21,953&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr></table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock', window );">Schedule of Effective Income Tax Rate Reconciliation</a></td>
<td class="text"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A reconciliation of the income tax at the Company&#8217;s U.S. statutory federal income tax rate to the provision for income tax follows: &#160;</span><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:53.285%"/><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:1.0%"/><td style="width:2.701%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.701%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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%">December 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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</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%">2020</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income tax expense at statutory rates</span></div></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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%">28,205&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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%">22,995&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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%">16,749&#160;</span></td><td style="background-color:#def3c0;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 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Increase (reduction) from:</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Jurisdictional rate differences</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,989&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,599&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,034&#160;</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Executive compensation limitation</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:9pt;font-weight:400;line-height:100%">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:9pt;font-weight:400;line-height:100%">1,314&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">170&#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"/><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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock based compensation</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">122&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(322)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(366)</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. state taxes</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:9pt;font-weight:400;line-height:100%">2,632&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">3,724&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,556&#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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign tax expense</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">267&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">704&#160;</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">R&amp;D credit </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:9pt;font-weight:400;line-height:100%">(1,645)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">(670)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">(415)</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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">GILTI</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">500&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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&#160;</span></td><td style="background-color:#def3c0;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Previously unrecognized tax (benefit)/expense</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:9pt;font-weight:400;line-height:100%">51&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">8&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,219&#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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other, net</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(220)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">605&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(748)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%">Provision for income taxes </span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%">32,382&#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;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%">29,253&#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;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%">21,953&#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:#def3c0;border-top:2pt solid #000000;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%">Effective tax rate </span></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:2pt 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%">24&#160;</span></td><td style="background-color:#def3c0;border-top:2pt solid #000000;padding:2px 1pt 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%">%</span></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:2pt 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%">27&#160;</span></td><td style="background-color:#def3c0;border-top:2pt solid #000000;padding:2px 1pt 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%">%</span></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:2pt 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%">28&#160;</span></td><td style="background-color:#def3c0;border-top:2pt solid #000000;padding:2px 1pt 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%">%</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"/></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"/></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"/></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"/></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"/></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"/></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"/></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"/></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"/></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_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock', window );">Schedule of Deferred Tax Assets and Liabilities</a></td>
<td class="text"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The components of the Company&#8217;s deferred income tax assets and liabilities were as follows. Certain prior year deferred tax component amounts have been reclassified to conform to the current year presentation. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:112%"> </span><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:58.110%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.987%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:4.747%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.330%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:700;line-height:100%">Deferred income tax assets:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></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:9pt;font-weight:400;line-height:100%">&#160;&#160;Inventory basis difference</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: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%">3,459&#160;</span></td><td style="background-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%">1,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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;Accounts receivable reserve</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">334&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">270&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;&#160;Rental equipment and Property, plant and equipment </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:9pt;font-weight:400;line-height:100%">347&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">201&#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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;Stock based compensation</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">826&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">754&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;&#160;Pension liability</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:9pt;font-weight:400;line-height:100%">2,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="2" style="background-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%">3,351&#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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;Employee benefit accrual</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,451&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">3,070&#160;</span></td><td style="background-color:#def3c0;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"/></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:9pt;font-weight:400;line-height:100%">&#160;&#160;Product liability and warranty 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:9pt;font-weight:400;line-height:100%">2,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="2" style="background-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,464&#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"/></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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;Foreign net operating loss</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">3,078&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">3,764&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;&#160;Lease liability</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:9pt;font-weight:400;line-height:100%">4,738&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">4,221&#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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;Capitalized R&amp;D costs</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">4,230&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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"/></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:9pt;font-weight:400;line-height:100%">&#160;&#160;Other</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:9pt;font-weight:400;line-height:100%">1,635&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,415&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total deferred income tax assets</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: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%">26,175&#160;</span></td><td style="background-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%">20,646&#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:#def3c0;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;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Less: Valuation allowance</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(3,637)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(4,129)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;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;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Net deferred income tax assets</span></td><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:2pt 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:#def3c0;border-top:2pt 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%">22,538&#160;</span></td><td style="background-color:#def3c0;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:2pt 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:#def3c0;border-top:2pt 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%">16,517&#160;</span></td><td style="background-color:#def3c0;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Deferred income tax liabilities:</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></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:9pt;font-weight:400;line-height:100%">&#160;&#160;Inventory basis differences</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: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%">(264)</span></td><td style="background-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%">(283)</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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;Rental equipment and Property, plant and equipment </span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,373)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(13,253)</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;&#160;Lease asset</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:9pt;font-weight:400;line-height:100%">(4,637)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">(4,149)</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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;Intangible assets</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(19,301)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(18,041)</span></td><td style="background-color:#def3c0;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"/></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"/></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:9pt;font-weight:400;line-height:100%">&#160;&#160;Expenses not currently deductible for book purposes</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:9pt;font-weight:400;line-height:100%">(1,244)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,139)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/></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:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total deferred income tax liabilities</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: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%">(39,819)</span></td><td style="background-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%">(36,865)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;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;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Net deferred income taxes</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000;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:2pt solid #000;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%">(17,281)</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000;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:2pt solid #000;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%">(20,348)</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock', window );">Schedule of Unrecognized Tax Benefits Roll Forward</a></td>
<td class="text">The Company does not expect the unrecognized tax benefits to change significantly over the next 12 months.<span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span><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: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:1.0%"/><td style="width:4.747%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.330%"/><td style="width:0.1%"/></tr><tr><td colspan="15" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unrecognized Tax Benefits</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance as of beginning of year</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">270&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">262&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Increases for tax positions related to the current year</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">156&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">82&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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"/></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"/></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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Decreases due to lapse of statute of limitations</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(105)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(74)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance as of end of year</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">321&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">270&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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_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_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 change in unrecognized tax benefits.</p></div>
<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 740<br> -SubTopic 10<br> -Section 55<br> -Paragraph 217<br> -URI https://asc.fasb.org/extlink&amp;oid=126976462&amp;loc=d3e36027-109320<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 15A<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-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_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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>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="idm140629860359264">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock Options (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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Schedule of Share-based Compensation, Stock Options, Activity</a></td>
<td class="text"><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:66.443%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.718%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.718%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.721%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',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:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2022</span></div></td><td colspan="3" style="border-top:1pt solid #000000;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:9pt;font-weight:700;line-height:100%">2021</span></div></td><td colspan="3" style="border-top:1pt solid #000000;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:9pt;font-weight:700;line-height:100%">2020</span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Options available for grant at end of year</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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%">381,531</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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%">423,969</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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%">455,549</span></td></tr></table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock', window );">Schedule of Share-based Compensation, Restricted Stock and Restricted Stock Units Activity</a></td>
<td class="text"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Following is a summary of activity in the Restricted Stock Awards ("</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">RSA</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">")/Units for the periods indicated:</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;</span><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:31.794%"/><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:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.841%"/><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:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.841%"/><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:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.846%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" 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%">2022</span></td><td colspan="9" 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%">2021</span></td><td colspan="9" 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%">2020</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:400;line-height:100%">Shares</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:400;line-height:100%">Grant-Date Fair Value*</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:400;line-height:100%">Shares</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:400;line-height:100%">Grant-Date Fair Value*</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:400;line-height:100%">Shares</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:400;line-height:100%">Grant-Date Fair Value*</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Awards outstanding at beginning of year</span></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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%">80,616&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">129.53&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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%">91,043&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">104.77&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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%">78,705&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">94.34&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">48,396&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">133.70&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">35,224&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">157.00&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">44,307&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">111.95&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Exercised</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">(29,922)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">122.19&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">(45,651)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">101.36&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">(31,594)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 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%">88.90&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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%">Canceled</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">(1,460)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">143.82&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">(375)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">100.34&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Awards outstanding at end of year</span></td><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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%">97,630&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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%">133.67&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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%">80,616&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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%">129.53&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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%">91,043&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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%">104.77&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%">*Weighted Averages</span></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_AwardTypeAxis=alg_QualifiedStockOptionsMember', window );">Qualified Stock Options</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Schedule of Share-based Compensation, Stock Options, Activity</a></td>
<td class="text"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Following is a summary of activity in the Incentive Stock Option Plans for the periods indicated:</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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:32.379%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.402%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.402%"/><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.402%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.402%"/><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.402%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.410%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" 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%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" 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%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" 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%">2020</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 4pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Shares</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:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160; Exercise</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160; Price*</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 4pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Shares</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:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;Exercise</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160; Price*</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 4pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Shares</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:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;Exercise</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160; Price*</span></div></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Options outstanding at beginning of year</span></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">87,610&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">91.24&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">100,920&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">68.58&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">119,720&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">57.65&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17,625&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">137.93&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,900&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">156.38&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,950&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">114.53&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(14,780)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">50.79&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(30,210)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">53.68&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(31,300)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">45.94&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Canceled</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(5,808)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">114.48&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2,000)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">130.92&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,450)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">96.97&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Options outstanding at end of year</span></td><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">84,647&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">106.43&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">87,610&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">91.24&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">100,920&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">68.58&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Options exercisable at end of year</span></td><td colspan="2" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">43,412&#160;</span></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">78.50&#160;</span></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">49,360&#160;</span></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">61.21&#160;</span></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">67,700&#160;</span></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">52.60&#160;</span></td><td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Options available for grant at end of year</span></td><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">286,033&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">297,850&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">314,750&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%">*Weighted Averages</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_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock', window );">Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range</a></td>
<td class="text">Options outstanding and exercisable at December&#160;31, 2022 were as follows:<div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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.326%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.402%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.402%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.402%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:5.625%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.402%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.286%"/><td style="width:0.1%"/></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:9pt;font-weight:700;line-height:100%">Qualified Stock Options</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Options Outstanding</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Options Exercisable</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:'Times New Roman',sans-serif;font-size:9pt;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:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Shares</span></div></td><td colspan="9" 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%">Remaining Contractual  Life (yrs)*</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:400;line-height:100%">Exercise Price*</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:400;line-height:100%">Shares</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:400;line-height:100%">Exercise&#160;&#160;&#160;&#160; Price*</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Range of Exercise Price</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$42.70 - $83.99</span></div></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,725&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2.32</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">57.89&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,725&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">57.89&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$92.50 - $138.75</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">40,422&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7.57</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:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">119.34&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,387&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">103.89&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$156.38 - $234.57</span></div></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16,500&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.16</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">156.38&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,300&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">156.38&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">84,647&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">43,412&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%">*Weighted Averages</span></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_AwardTypeAxis=alg_NonQualifiedOptionsMember', window );">Non Qualified Options</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Schedule of Share-based Compensation, Stock Options, Activity</a></td>
<td class="text"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Following is a summary of activity in the Non-Qualified Stock Option Plans for the periods indicated:</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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:32.184%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.430%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.292%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.430%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.826%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.430%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.292%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.430%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.826%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.430%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.292%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.438%"/><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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" 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%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" 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%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" 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%">2020</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:400;line-height:100%">Shares</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:400;line-height:100%">Exercise Price*</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:400;line-height:100%">Shares</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:400;line-height:100%">Exercise Price*</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:400;line-height:100%">Shares</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:400;line-height:100%">Exercise Price*</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Options outstanding at beginning of year</span></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">2,000&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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%">53.51&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">3,000&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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%">53.51&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">5,300&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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%">46.87&#160;</span></td><td style="background-color:#def3c0;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:bottom"><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%">&#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%">&#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%">&#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%">&#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%">&#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%">&#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:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="2" style="background-color:#def3c0;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,000)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">53.51&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,000)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">53.51&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,300)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">38.22&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Canceled</span></td><td colspan="2" style="background-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%">&#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%">&#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%">&#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%">&#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%">&#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:#def3c0;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:9pt;font-weight:400;line-height:100%">Options outstanding at end of year</span></td><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">1,000&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">53.51&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">2,000&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">53.51&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">3,000&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">53.51&#160;</span></td><td style="background-color:#def3c0;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;border-bottom:2pt solid #000000;border-top:2pt solid #000000;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%">Options exercisable at end of year</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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%">1,000&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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:2pt solid #000000;border-top:2pt 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%">53.51&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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:2pt solid #000000;border-top:2pt 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%">2,000&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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:2pt solid #000000;border-top:2pt 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%">53.51&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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:2pt solid #000000;border-top:2pt 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%">3,000&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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:2pt solid #000000;border-top:2pt 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%">53.51&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%">*Weighted Averages</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_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock', window );">Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range</a></td>
<td class="text">Options outstanding and exercisable as of December&#160;31, 2022 were as follows:<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 style="width:35.449%"/><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:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.133%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.987%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:5.917%"/><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:1.846%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.824%"/><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-weight:700;line-height:100%">Non-Qualified Stock Options</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:9pt;font-weight:700;line-height:100%">Options Outstanding</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:9pt;font-weight:700;line-height:100%">Options Exercisable</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:400;line-height:100%">Shares</span></td><td colspan="9" 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%">&#160;&#160; Remaining Contractual Life (yrs)*</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:400;line-height:100%">Exercise Price*</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:400;line-height:100%">Shares</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:400;line-height:100%">Exercise Price*</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Range of Exercise Price</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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"/></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;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;$42.70 - $83.99</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:9pt;font-weight:400;line-height:100%">1,000&#160;</span></td><td style="background-color:#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:9pt;font-weight:400;line-height:100%">1.36</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: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%">53.51&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,000&#160;</span></td><td style="background-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%">53.51&#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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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%">1,000&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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%">1,000&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%">*Weighted Averages</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_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 option exercise prices, by grouped ranges, including the upper and lower limits of the price range, the number of shares under option, weighted average exercise price and remaining contractual option terms.</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_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock</td>
</tr>
<tr>
<td style="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_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=alg_QualifiedStockOptionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_QualifiedStockOptionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=alg_NonQualifiedOptionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_NonQualifiedOptionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>58
<FILENAME>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="idm140629862236112">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Retirement Benefit Plans (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_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure [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_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock', window );">Schedule of Defined Benefit Plans Disclosures</a></td>
<td class="text">The following table sets forth the change in plan assets, change in projected benefit obligation, rate assumptions and components of net periodic benefit cost as of December 31 with respect to the plan. The measurement dates of the assets and liabilities of the plan were December 31 of the respective years presented.<span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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:53.139%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.794%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.859%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.847%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.861%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/></tr><tr><td colspan="15" style="border-bottom: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:100%">Reconciliation of Funded Status</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="9" 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:9pt;font-weight:700;line-height:100%">Year Ended December 31,</span></td><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:9pt;font-weight:400;line-height:100%">(in thousands)&#160;&#160;&#160;</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%">2022</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%">2021</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Change in projected benefit obligation&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"/></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:9pt;font-weight:400;line-height:100%">Benefit obligation at beginning of year</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: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%">22,564&#160;</span></td><td style="background-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%">24,100&#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:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Service cost</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">4&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">5&#160;</span></td><td style="background-color:#def3c0;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 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest cost</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:9pt;font-weight:400;line-height:100%">604&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">553&#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:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Liability actuarial (gain) loss </span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(4,761)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">(994)</span></td><td style="background-color:#def3c0;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 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Benefits paid</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:9pt;font-weight:400;line-height:100%">(1,140)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,100)</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="display:none"/><td colspan="3" style="display:none"/><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:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Benefit obligation at end of year</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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%">17,271&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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%">22,564&#160;</span></td><td style="background-color:#def3c0;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;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:9pt;font-weight:400;line-height:100%">Change in fair value of plan assets&#160;&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Fair value of plan assets at beginning of year</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">23,671&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">22,370&#160;</span></td><td style="background-color:#def3c0;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 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Return on plan assets</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:9pt;font-weight:400;line-height:100%">(4,262)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,401&#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:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Employer contributions</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Benefits paid</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:9pt;font-weight:400;line-height:100%">(1,140)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,100)</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="display:none"/><td colspan="3" style="display:none"/><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:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Fair value of plan assets at end of year</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">18,269&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;border-top:1pt 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%">23,671&#160;</span></td><td style="background-color:#def3c0;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;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Funded status </span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt 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:2pt solid #000000;border-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%">998&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt 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:2pt solid #000000;border-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,107&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #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><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock', window );">Schedule of Allocation of Plan Assets</a></td>
<td class="text">The pension plans' weighted-average asset allocation as a percentage of plan assets at December 31 is as follows:<span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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:31.063%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><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:35.157%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.131%"/><td style="width:0.1%"/></tr><tr><td colspan="15" style="border-bottom:1pt solid #000;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%">Asset Allocation as a Percentage of the Plan</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="6" style="border-top:1pt solid #000;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:9pt;font-weight:700;line-height:100%">Year Ended December 31,</span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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%">2022</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%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Equity securities</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">36%</span></td><td colspan="3" style="background-color:#def3c0;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%">36%</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:9pt;font-weight:400;line-height:100%">Debt securities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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:9pt;font-weight:400;line-height:100%">62%</span></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:9pt;font-weight:400;line-height:100%">62%</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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%">Short-term investments</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">2%</span></td><td colspan="3" style="background-color:#def3c0;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%">2%</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:9pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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:9pt;font-weight:400;line-height:100%">&#8212;%</span></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:9pt;font-weight:400;line-height:100%">&#8212;%</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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:9pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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%">100%</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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%">100%</span></td></tr></table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock', window );">Fair Value, Assets Measured on Recurring Basis</a></td>
<td class="text"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the hierarchy levels for our postretirement benefit plan investments as of December 31 as described in </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_124" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Note 1</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> to the Consolidated Financial Statements:</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%">&#160;</span><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 style="width:1.410%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:47.069%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.027%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.678%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.678%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.588%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.678%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.824%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.441%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.678%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.678%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.766%"/><td style="width:0.1%"/></tr><tr><td colspan="6" style="border-bottom:1pt solid #000000;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;<br/></span><span style="font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><br/></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;<br/>&#160;<br/>(in thousands)</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:9pt;font-weight:700;line-height:100%">December 31, 2022</span></td><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:9pt;font-weight:700;line-height:100%">Quoted</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Prices in Active</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Markets for</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Identical Assets</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 1)</span></div></td><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:9pt;font-weight:700;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Other</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Observable</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Inputs</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 2)</span></div></td><td colspan="6" 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:9pt;font-weight:700;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unobservable</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Inputs</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 3)</span></div></td></tr><tr><td colspan="6" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Mutual Funds:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</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="background-color:#ffffff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">Mid Cap</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: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%">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 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%">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 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="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"/></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:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">International</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">743&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">743&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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;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"/><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"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="6" style="background-color:#def3c0;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%">Common/Collective Trusts:</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/></tr><tr><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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Wells Fargo Liability Driven Solution CIT I</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:9pt;font-weight:400;line-height:100%">7,815&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">7,815&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo Liability Driven Solution CIT II</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">3,550&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">3,550&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo BlackRock International Equity</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:9pt;font-weight:400;line-height:100%">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="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">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="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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"/></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:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo/Causeway International Value</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">464&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">464&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo BlackRock Large Cap Growth Index Fund</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:9pt;font-weight:400;line-height:100%">724&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">724&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo BlackRock Large Cap Value Index Fund</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">744&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">744&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo Multi-Manager Small Cap</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:9pt;font-weight:400;line-height:100%">785&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">785&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo BlackRock Russell 2000 Index Fund</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">261&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">261&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo BlackRock S&amp;P Mid Cap Index Fund</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:9pt;font-weight:400;line-height:100%">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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo/MFS Value CIT F</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">359&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">359&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo/T. Rowe Price Large-Cap Growth Managed CIT</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:9pt;font-weight:400;line-height:100%">359&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">359&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo/T. Rowe Price Equity Income Managed CIT</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">356&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">356&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo Voya Large Cap Growth CIT F</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:9pt;font-weight:400;line-height:100%">357&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">357&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/></tr><tr><td colspan="6" style="background-color:#ffffff;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%">Cash &amp; Short-term Investments</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:9pt;font-weight:400;line-height:100%">432&#160;</span></td><td style="background-color:#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="2" style="background-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%">432&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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%">18,269&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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,687&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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%">16,582&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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:#def3c0;border-bottom:2pt solid #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%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:46.853%"/><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.157%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><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.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><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.987%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><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.601%"/><td style="width:0.1%"/></tr><tr><td colspan="6" style="border-bottom:1pt solid #000000;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;<br/>&#160;<br/>&#160;<br/>&#160;<br/>(in thousands)</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:9pt;font-weight:700;line-height:100%">December 31, 2021</span></td><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:9pt;font-weight:700;line-height:100%">Quoted</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Prices in Active</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Markets for</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Identical Assets</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 1)</span></div></td><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:9pt;font-weight:700;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Other</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Observable</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Inputs</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 2)</span></div></td><td colspan="6" 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:9pt;font-weight:700;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unobservable</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Inputs</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 3)</span></div></td></tr><tr><td colspan="6" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Mutual Funds:</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">&#160;</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="background-color:#ffffff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">Mid Cap</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: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%">637&#160;</span></td><td style="background-color:#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 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%">637&#160;</span></td><td style="background-color:#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 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="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"/></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:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">International</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">940&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">940&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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;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"/><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"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="6" style="background-color:#def3c0;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%">Common/Collective Trusts:</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/></tr><tr><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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Wells Fargo Liability Driven Solution CIT I</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:9pt;font-weight:400;line-height:100%">7,782&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">7,782&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo Liability Driven Solution CIT II</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">7,026&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">7,026&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"></td></tr><tr><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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Wells Fargo BlackRock International Equity</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:9pt;font-weight:400;line-height:100%">616&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">616&#160;</span></td><td style="background-color:#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="2" style="background-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"/></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:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo/Causeway International Value</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">586&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">586&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo BlackRock Large Cap Growth Index Fund</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:9pt;font-weight:400;line-height:100%">950&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">950&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo BlackRock Large Cap Value Index Fund</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">968&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">968&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo Multi-Manager Small Cap</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:9pt;font-weight:400;line-height:100%">1,015&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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,015&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo BlackRock Russell 2000 Index Fund</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">332&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">332&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo BlackRock S&amp;P Mid Cap Index Fund</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:9pt;font-weight:400;line-height:100%">419&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">419&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo/MFS Value CIT F</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">469&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">469&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo/T. Rowe Price Large-Cap Growth Managed CIT</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:9pt;font-weight:400;line-height:100%">465&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">465&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;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%">Wells Fargo/T. Rowe Price Equity Income Managed CIT</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">487&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">487&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;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: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%">Wells Fargo Voya Large Cap Growth CIT F</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:9pt;font-weight:400;line-height:100%">482&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">482&#160;</span></td><td style="background-color:#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="2" style="background-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"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/></tr><tr><td colspan="6" style="background-color:#ffffff;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%">Cash &amp; Short-term Investments</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:9pt;font-weight:400;line-height:100%">497&#160;</span></td><td style="background-color:#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="2" style="background-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%">497&#160;</span></td><td style="background-color:#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="2" style="background-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="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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%">23,671&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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,074&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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%">21,597&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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:#def3c0;border-bottom:2pt solid #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_ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock', window );">Schedule of Changes in Projected Benefit Obligations</a></td>
<td class="text"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The change in the Projected Benefit Obligation (PBO) as of December&#160;31, 2022 and 2021, is shown below:</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span><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.128%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.724%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.993%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/></tr><tr><td colspan="15" style="border-bottom: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:100%">Reconciliation of Benefit Obligation</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="9" 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:9pt;font-weight:700;line-height:100%">Year Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</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:middle"><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="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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Benefit obligation at January 1,</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,326&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,160&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Service cost</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">284&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">369&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest cost</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">278&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">205&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Liability actuarial loss (gain)</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2,023)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">759&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Benefits paid</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(313)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(167)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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"/></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"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Benefit obligation at December 31,</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,552&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,326&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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_PensionPlansDefinedBenefitMember', window );">Pension Plan</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_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure [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_ScheduleOfAssumptionsUsedTableTextBlock', window );">Schedule of Assumptions Used</a></td>
<td class="text">In determining the projected benefit obligation and the net pension cost, we used the following significant weighted-average assumptions:<div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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:41.736%"/><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:15.859%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.636%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.639%"/><td style="width:0.1%"/></tr><tr><td colspan="15" style="border-bottom:1pt solid #000;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%">Rates to Determine Benefit Obligation</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="6" style="border-top:1pt solid #000;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:9pt;font-weight:700;line-height:100%">Year Ended December 31,</span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Discount rate</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5.10%</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2.75%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Composite rate of compensation increase</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">N/A</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">N/A</span></td></tr></table></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></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 style="width:41.736%"/><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:15.274%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.636%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.224%"/><td style="width:0.1%"/></tr><tr><td colspan="15" style="border-bottom:1pt solid #000;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%">Rates to Determine Net Periodic Benefit Cost</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:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="6" 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:9pt;font-weight:700;line-height:100%">Year Ended December 31,</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:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Discount rate</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2.75%</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2.35%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Long-term rate of return on plan 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:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6.00%</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7.25%</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Composite rate of compensation increase</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">N/A</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">N/A</span></td></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfNetBenefitCostsTableTextBlock', window );">Schedule of Net Periodic Benefit Cost</a></td>
<td class="text"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the components of net periodic benefit cost (gains are denoted with parentheses and losses are not):</span><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:68.052%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.723%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.864%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:4.894%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.867%"/><td style="width:0.1%"/></tr><tr><td colspan="15" style="border-bottom: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:100%">Components of Net Periodic Benefit Cost</span></td></tr><tr><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:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="9" 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:9pt;font-weight:700;line-height:100%">Year Ended December 31,</span></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:9pt;font-weight:700;line-height:100%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></div></td><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Service cost</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt 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:#def3c0;border-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&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Interest cost</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:9pt;font-weight:400;line-height:100%">604&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">553&#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:#def3c0;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%">Expected return on plan assets</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,384)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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,581)</span></td><td style="background-color:#def3c0;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"/></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:9pt;font-weight:400;line-height:100%">Amortization of net loss</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:9pt;font-weight:400;line-height:100%">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:9pt;font-weight:400;line-height:100%">542&#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"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Net periodic benefit cost</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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%">(594)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt 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:#def3c0;border-bottom:2pt solid #000000;border-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%">(481)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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="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 );">Schedule of Expected Benefit Payments</a></td>
<td class="text">The following table illustrates the estimated pension benefit payments that are projected to be paid:<span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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:83.402%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:0.1%"/><td style="width:2.577%"/><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:2.726%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="12" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Projected Future Benefit Payments</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></div></td><td colspan="3" style="display:none"/><td colspan="9" style="border-top:1pt solid #000;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:9pt;font-weight:700;line-height:100%">Employees&#8217;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Retirement Plan</span></div></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2023</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,275&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;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;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="display:none"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,304&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,315&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;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;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2026</span></td><td colspan="3" style="display:none"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,312&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2027</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,306&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Years 2028 through 2032</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,209&#160;</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table><span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetirementPlanTypeAxis=us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember', window );">Supplemental Employee Retirement Plan</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_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure [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_ScheduleOfAssumptionsUsedTableTextBlock', window );">Schedule of Assumptions Used</a></td>
<td class="text"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In determining the projected benefit obligation and the net pension cost, we used the following significant weighted-average assumptions:</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Assumptions used to determine benefit obligations at December 31:</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><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:70.976%"/><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.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.498%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/></tr><tr><td colspan="12" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Rates to Determine Benefit Obligation</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Discount rate</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5.05%</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2.50%</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Composite rate of compensation increase</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3.00%</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3.00%</span></td><td colspan="3" style="display:none"/></tr></table></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Assumptions used to determine net periodic benefit cost for the years ended December 31:</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%">&#160;</span><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:70.894%"/><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:12.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.537%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/></tr><tr><td colspan="12" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Rates to Determine Net Periodic Benefit Cost</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Discount rate</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2.50%</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2.05%</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Composite rate of compensation increase</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3.00%</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3.00%</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Long-term rate of return on plan assets</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">N/A</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">N/A</span></td><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_ScheduleOfNetBenefitCostsTableTextBlock', window );">Schedule of Net Periodic Benefit Cost</a></td>
<td class="text"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of net periodic pension expense were as follows:</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%">&#160;</span><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:67.274%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.556%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.077%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.267%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.226%"/><td style="width:0.1%"/></tr><tr><td colspan="15" style="border-bottom: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:100%">Components of Net Periodic Benefit Cost</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="9" 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:9pt;font-weight:700;line-height:100%">Year Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</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:middle"><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="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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Service cost</span></td><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">284&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">369&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest cost</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">278&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">205&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Amortization of prior service cost</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">420&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">413&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Amortization of net (gain)/loss</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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">440&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">318&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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"/></tr><tr><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net periodic benefit cost</span></td><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,422&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,305&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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_ScheduleOfExpectedBenefitPaymentsTableTextBlock', window );">Schedule of Expected Benefit Payments</a></td>
<td class="text"><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Future estimated benefits expected to be paid from the plan over the next ten years as follows:</span></div><div style="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:84.280%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.449%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:1.971%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><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%">Projected Future Benefit Payments</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">SERP</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><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:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2023</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">490&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">546&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">639&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">866&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">868&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><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;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Years 2028 through 2032</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,321&#160;</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><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_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_FairValueAssetsMeasuredOnRecurringBasisTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 assets, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, by class that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date 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 (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3).</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 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<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_FairValueAssetsMeasuredOnRecurringBasisTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfAllocationOfPlanAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 major categories of plan assets of pension plans and/or other employee benefit plans. This information may include, but is not limited to, the target allocation of plan assets, the fair value of each major category of plan assets, and the level within the fair value hierarchy in which the fair value measurements fall.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(5)<br> -URI 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_ScheduleOfAllocationOfPlanAssetsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_ScheduleOfAssumptionsUsedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 assumption used to determine benefit obligation and net periodic benefit cost of defined benefit plan. Includes, but is not limited to, discount rate, rate of compensation increase, expected long-term rate of return on plan assets and interest crediting rate.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><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)<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_ScheduleOfAssumptionsUsedTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 change in the benefit obligation of pension plans and/or other employee benefit plans from the beginning to the end of the period, showing separately, if applicable, the effects of the following: service cost, interest cost, contributions by plan participants, actuarial gains and losses, foreign currency exchange rate changes, benefits paid, plan amendments, business combinations, divestitures, curtailments, settlements, and special and contractual termination benefits.</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 (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_ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 one or more of the entity's defined benefit pension plans or one or more other defined benefit postretirement plans, separately for pension plans and other postretirement benefit plans including the entity's schedule of fair value of plan assets for defined benefit or other postretirement plans.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4179-114921<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e2439-114920<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e2410-114920<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e2417-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_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_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_SupplementalEmployeeRetirementPlanDefinedBenefitMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SupplementalEmployeeRetirementPlanDefinedBenefitMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>59
<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="idm140629864596480">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue and Segment Reporting (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_SegmentReportingAbstract', window );"><strong>Segment Reporting [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueTableTextBlock', window );">Disaggregation of Revenue</a></td>
<td class="text">Management has determined that this level of disaggregation would be beneficial to users of the financial statements.<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.356%"/><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:1.992%"/><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:1.992%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.622%"/><td style="width:0.1%"/></tr><tr><td colspan="18" style="border-bottom: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:100%">Revenue by Product Type</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="15" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 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:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</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%">2020</span></td></tr><tr><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:9pt;font-weight:400;line-height:100%">Net Sales</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Wholegoods</span></td><td style="background-color:#def3c0;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:#def3c0;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,185,885&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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,024,158&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">885,254&#160;</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Parts</span></td><td colspan="2" style="background-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%">280,261&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">262,432&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">247,126&#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:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other *</span></td><td colspan="2" style="background-color:#def3c0;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%">47,470&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">47,633&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">31,086&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Consolidated</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt 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:2pt solid #000000;border-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,513,616&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt 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:2pt solid #000000;border-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,334,223&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt 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:2pt solid #000000;border-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,163,466&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table><span style="color:#000000;font-family:'Arial',sans-serif;font-size:7pt;font-weight:400;line-height:120%"> &#160;&#160;&#160;&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">*Other includes rental sales, extended warranty sales and service sales as it is considered immaterial.</span><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock', window );">Schedule of Segment Reporting Information, by Segment</a></td>
<td class="text">The following table presents the revenue and income from operations by reporting segment for the years ended December&#160;31, 2022, 2021, and 2020:<div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span><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:52.116%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.554%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.993%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.207%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</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%">2022</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%">2021</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%">2020</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net Revenue</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Vegetation Management</span></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">937,065&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">812,676&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">654,630&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Industrial Equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">576,551&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">521,547&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">508,836&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Consolidated</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,513,616&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,334,223&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,163,466&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Income from Operations</span></td><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Vegetation Management</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">108,508&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">78,917&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">46,651&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Industrial Equipment</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">40,084&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">38,021&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">48,134&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Consolidated</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">148,592&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">116,938&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">94,785&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr></table></div><div><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the goodwill and total identifiable assets by reporting segment for the years ended December&#160;31, 2022 and 2021:</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span><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:64.689%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.104%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.701%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.106%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="display:none"/></tr><tr><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:9pt;font-weight:700;line-height:100%">December 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:9pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="12" 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:9pt;font-weight:700;line-height:100%">Goodwill</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Vegetation Management</span></td><td style="background-color:#def3c0;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:#def3c0;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%">127,562&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:#def3c0;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%">132,963&#160;</span></td><td style="background-color:#def3c0;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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Industrial 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:9pt;font-weight:400;line-height:100%">68,296&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-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%">69,443&#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:#def3c0;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:9pt;font-weight:400;line-height:100%">Consolidated</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">195,858&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">202,406&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="12" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Identifiable Assets </span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Vegetation Management</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: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%">866,974&#160;</span></td><td style="background-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%">789,838&#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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Industrial Equipment</span></td><td colspan="2" style="background-color:#def3c0;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%">441,534&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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%">415,904&#160;</span></td><td style="background-color:#def3c0;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;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%">Consolidated</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">1,308,508&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">1,205,742&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;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_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_ScheduleOfSegmentReportingInformationBySegmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI 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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 25<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8813-108599<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<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_ScheduleOfSegmentReportingInformationBySegmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-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>60
<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="idm140629864559536">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accumulated Other Comprehensive Loss (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_EquityAbstract', window );"><strong>Equity [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 Accumulated Other Comprehensive Loss</a></td>
<td class="text"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Changes in accumulated other comprehensive loss by component, net of tax, were as follows:</span></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 style="width:20.391%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.864%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.525%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.110%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.402%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.700%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.864%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.525%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.110%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.409%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="27" style="border-bottom: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:100%">Twelve Months Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="12" 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:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="12" 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:100%">2021</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%">(in thousands)</span></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:9pt;font-weight:700;line-height:100%">Foreign Currency Translation Adjustment</span></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:9pt;font-weight:700;line-height:100%">Defined Benefit Plans Items</span></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:9pt;font-weight:700;line-height:100%">Gains (Losses) on Cash Flow Hedges</span></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:9pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">Foreign Currency Translation Adjustment</span></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:9pt;font-weight:700;line-height:100%">Defined Benefit Plans Items</span></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:9pt;font-weight:700;line-height:100%">Gains (Losses) on Cash Flow Hedges</span></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:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">Balance as of beginning of period</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(42,397)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(5,017)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(1,576)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(48,990)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(26,597)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(6,855)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(6,874)</span></td><td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%">(40,326)</span></td><td style="background-color:#def3c0;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;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:9pt;font-weight:400;line-height:100%">Other comprehensive  income (loss) before reclassifications</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:9pt;font-weight:400;line-height:100%">(23,032)</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="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:9pt;font-weight:400;line-height:100%">&#8212;&#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="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:9pt;font-weight:400;line-height:100%">1,512&#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="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:9pt;font-weight:400;line-height:100%">(21,520)</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:9pt;font-weight:400;line-height:100%">(15,800)</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="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:9pt;font-weight:400;line-height:100%">&#8212;&#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="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:9pt;font-weight:400;line-height:100%">7,984&#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="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:9pt;font-weight:400;line-height:100%">(7,816)</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:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Amounts reclassified from accumulated other comprehensive loss</span></td><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#def3c0;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,707&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#def3c0;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%">535&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#def3c0;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,242&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#def3c0;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,838&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#def3c0;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,686)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#def3c0;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%">(848)</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other comprehensive   income (loss)</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:9pt;font-weight:400;line-height:100%">(23,032)</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="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:9pt;font-weight:400;line-height:100%">1,707&#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="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:9pt;font-weight:400;line-height:100%">2,047&#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="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:9pt;font-weight:400;line-height:100%">(19,278)</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:9pt;font-weight:400;line-height:100%">(15,800)</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="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:9pt;font-weight:400;line-height:100%">1,838&#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="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:9pt;font-weight:400;line-height:100%">5,298&#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="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:9pt;font-weight:400;line-height:100%">(8,664)</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:#def3c0;border-bottom:2pt solid #000;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:9pt;font-weight:400;line-height:100%">Balance as of end of period</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">(65,429)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">(3,310)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">471&#160;</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">(68,268)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">(42,397)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">(5,017)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">(1,576)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%">(48,990)</span></td><td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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"/></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_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_EquityAbstract</td>
</tr>
<tr>
<td style="padding-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>61
<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="idm140629861535136">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>International Operations and Geographic 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_SegmentReportingAbstract', window );"><strong>Segment Reporting [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_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock', window );">Schedule of International Operations</a></td>
<td class="text"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Following is selected financial information on the Company&#8217;s international operations, which include the United Kingdom, France, Netherlands, Canada, Brazil, and Australia:</span><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:58.402%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.718%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.554%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.554%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.161%"/><td style="width:0.1%"/></tr><tr><td colspan="18" style="border-bottom: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:100%">International Operations Financial Information</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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="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:middle"><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="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:middle"><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="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net sales</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">420,678&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">363,339&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">312,462&#160;</span></td><td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income from operations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">48,893&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">34,561&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">31,166&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income before income taxes</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">51,206&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">37,051&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30,674&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Identifiable assets</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">364,752&#160;</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">352,187&#160;</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">304,536&#160;</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></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_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock', window );">Schedule of Selected Geographic Financial Information</a></td>
<td class="text">Following is other selected geographic financial information on the Company&#8217;s operations:<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:52.993%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.554%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.554%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.769%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/></tr><tr><td colspan="18" style="border-bottom:1pt solid #000;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%">Geographic Financial Information</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="15" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><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="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:middle"><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="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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="6" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Geographic net sales:</span></div></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United States</span></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,080,893&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">953,024&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">862,430&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">France</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">89,629&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">92,052&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">81,259&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Canada</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">95,799&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">83,392&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">65,313&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United Kingdom</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">69,454&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">57,386&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">47,757&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Brazil</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">46,841&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">31,365&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16,592&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Netherlands</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">23,304&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,964&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">23,946&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Germany</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,115&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,977&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,328&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Australia</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,117&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">20,980&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,999&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">72,464&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">59,083&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">45,842&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total net sales</span></td><td style="border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,513,616&#160;</span></td><td style="border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,334,223&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,163,466&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/></tr><tr><td colspan="6" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Geographic location of long-lived assets:</span></div></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United States</span></td><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">457,075&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">461,341&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">480,940&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Netherlands</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28,428&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32,262&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">39,063&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Canada</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32,165&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32,132&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">33,573&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United Kingdom</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">31,767&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">36,569&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,843&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">France</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,728&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19,781&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">21,033&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Brazil</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,175&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,408&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,123&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Australia</span></td><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">670&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">790&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#def3c0;padding:0 1pt"/><td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">964&#160;</span></td><td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total long-lived assets</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">581,008&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">593,283&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">605,539&#160;</span></td><td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/></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_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of profit (loss) from reportable segments to the consolidated income (loss) before income tax expense (benefit) and discontinued operations. Includes, but is not limited to, reconciliation after income tax if income tax is allocated to the reportable segment.</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 (b)<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_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock</td>
</tr>
<tr>
<td style="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_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-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>62
<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="idm140629859912400">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Significant Accounting Policies - Additional Information (Details)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($) </div>
<div>segment</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>
<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_alg_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [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 principal reporting segments | segment</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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestrictedCash', window );">Restricted cash</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>
</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_EmployeeStockOptionMember', window );">Options</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alg_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Award vesting period (years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember', window );">Rental 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_alg_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [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_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated depreciation relating to rental equipment</a></td>
<td class="nump">$ 22,300,000<span></span>
</td>
<td class="nump">$ 22,300,000<span></span>
</td>
<td class="nump">20,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_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember', window );">Selling, General and Administrative expenses</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alg_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [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_AdvertisingExpense', window );">Advertising expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10,900,000<span></span>
</td>
<td class="nump">10,200,000<span></span>
</td>
<td class="nump">$ 10,100,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_ResearchAndDevelopmentExpense', window );">Product development and engineering costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 14,300,000<span></span>
</td>
<td class="nump">$ 11,700,000<span></span>
</td>
<td class="nump">$ 12,400,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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alg_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [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_FiniteLivedIntangibleAssetUsefulLife', 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</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alg_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [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_FiniteLivedIntangibleAssetUsefulLife', window );">Estimated useful lives</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">25 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod', window );">Option term (years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alg_AccountingPoliciesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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] for Accounting Policies [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;">alg_AccountingPoliciesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_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_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_FiniteLivedIntangibleAssetUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="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_FiniteLivedIntangibleAssetUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_ResearchAndDevelopmentExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.</p></div>
<a href="javascript:void(0);" onclick="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 912<br> -SubTopic 730<br> -Section 25<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6472174&amp;loc=d3e58812-109433<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128462-111756<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 730<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6420194&amp;loc=d3e21568-108373<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ResearchAndDevelopmentExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestrictedCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 restricted as to withdrawal or usage. 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.</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(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=SL98516268-108586<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<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(1)(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<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)(2))<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_RestrictedCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="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)(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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_EquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>
<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>63
<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="idm140629862226240">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Significant Accounting Policies - Schedule of Fair Value Assumptions and Methodology (Details)<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_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate', window );">Risk-free interest rate</a></td>
<td class="nump">1.93%<span></span>
</td>
<td class="nump">1.25%<span></span>
</td>
<td class="nump">1.22%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate', window );">Dividend yield</a></td>
<td class="nump">0.50%<span></span>
</td>
<td class="nump">0.40%<span></span>
</td>
<td class="nump">0.50%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate', window );">Volatility factors</a></td>
<td class="nump">33.20%<span></span>
</td>
<td class="nump">33.90%<span></span>
</td>
<td class="nump">30.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_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1', window );">Weighted-average expected life</a></td>
<td class="text">8 years<span></span>
</td>
<td class="text">8 years<span></span>
</td>
<td class="text">8 years<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term.</p></div>
<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)(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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 risk-free interest rate assumption that is used in valuing an option on its own 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 (f)(2)(iv)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Expected term of award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><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)(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_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>64
<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="idm140629860657120">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Business Combinations (Details) - Dutch Power<br> $ in Millions</strong></div></th>
<th class="th">
<div>Oct. 26, 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_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_BusinessAcquisitionPercentageOfVotingInterestsAcquired', window );">Percentage of outstanding capital shares acquired</a></td>
<td class="nump">100.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_BusinessCombinationConsiderationTransferred1', window );">Acquisition price</a></td>
<td class="nump">$ 25.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_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_BusinessAcquisitionPercentageOfVotingInterestsAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 voting equity interests acquired at the acquisition date in the business combination.</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 2<br> -Subparagraph (c)<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_BusinessAcquisitionPercentageOfVotingInterestsAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_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_BusinessAcquisitionAxis=alg_DutchPowerCompanyBVMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_DutchPowerCompanyBVMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="idm140629861153568">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings Per Share (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="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_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 101,928<span></span>
</td>
<td class="nump">$ 80,245<span></span>
</td>
<td class="nump">$ 57,804<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract', window );"><strong>Average common 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_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic (weighted-average outstanding shares) (in shares)</a></td>
<td class="nump">11,877,000<span></span>
</td>
<td class="nump">11,837,000<span></span>
</td>
<td class="nump">11,782,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_WeightedAverageNumberDilutedSharesOutstandingAdjustment', window );">Dilutive potential common shares from stock options (in shares)</a></td>
<td class="nump">57,000<span></span>
</td>
<td class="nump">59,000<span></span>
</td>
<td class="nump">63,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_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted (weighted-average outstanding shares) (in shares)</a></td>
<td class="nump">11,934,000<span></span>
</td>
<td class="nump">11,896,000<span></span>
</td>
<td class="nump">11,845,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_EarningsPerShareBasic', window );">Basic earnings per share (in dollars per share)</a></td>
<td class="nump">$ 8.58<span></span>
</td>
<td class="nump">$ 6.78<span></span>
</td>
<td class="nump">$ 4.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_EarningsPerShareDiluted', window );">Diluted earnings per share (in dollars per share)</a></td>
<td class="nump">$ 8.54<span></span>
</td>
<td class="nump">$ 6.75<span></span>
</td>
<td class="nump">$ 4.88<span></span>
</td>
</tr>
<tr class="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 );">Stock options excluded from diluted earnings per share calculation (in shares)</a></td>
<td class="nump">25,610<span></span>
</td>
<td class="nump">15,586<span></span>
</td>
<td class="nump">9,864<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_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_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_WeightedAverageNumberDilutedSharesOutstandingAdjustment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation.</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_WeightedAverageNumberDilutedSharesOutstandingAdjustment</td>
</tr>
<tr>
<td style="padding-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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract</td>
</tr>
<tr>
<td style="padding-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>66
<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="idm140629862458448">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Valuation and Qualifying Accounts - Schedule of Valuation and Qualifying Accounts (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 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_ValuationAllowancesAndReservesTypeAxis=alg_SECSchedule1209SalesDiscountsMember', window );">Reserve for sales discounts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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="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 Beginning of Year</a></td>
<td class="nump">$ 12,567<span></span>
</td>
<td class="nump">$ 13,549<span></span>
</td>
<td class="nump">$ 16,883<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense', window );">Net Charged to Costs and Expenses</a></td>
<td class="nump">137,553<span></span>
</td>
<td class="nump">116,114<span></span>
</td>
<td class="nump">93,398<span></span>
</td>
</tr>
<tr class="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 );">&#160;Translations, Reclassifications and Acquisitions</a></td>
<td class="num">(21)<span></span>
</td>
<td class="num">(688)<span></span>
</td>
<td class="nump">15<span></span>
</td>
</tr>
<tr class="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 );">&#160;Net Write-Offs or Discounts Taken</a></td>
<td class="num">(130,238)<span></span>
</td>
<td class="num">(116,408)<span></span>
</td>
<td class="num">(96,747)<span></span>
</td>
</tr>
<tr class="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 End of Year</a></td>
<td class="nump">19,861<span></span>
</td>
<td class="nump">12,567<span></span>
</td>
<td class="nump">13,549<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_ValuationAllowancesAndReservesTypeAxis=us-gaap_InventoryValuationReserveMember', window );">Reserve for inventory obsolescence</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 Beginning of Year</a></td>
<td class="nump">12,908<span></span>
</td>
<td class="nump">12,027<span></span>
</td>
<td class="nump">8,233<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense', window );">Net Charged to Costs and Expenses</a></td>
<td class="nump">6,998<span></span>
</td>
<td class="nump">6,531<span></span>
</td>
<td class="nump">4,609<span></span>
</td>
</tr>
<tr class="ro">
<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 );">&#160;Translations, Reclassifications and Acquisitions</a></td>
<td class="num">(277)<span></span>
</td>
<td class="num">(146)<span></span>
</td>
<td class="nump">1,471<span></span>
</td>
</tr>
<tr class="re">
<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 );">&#160;Net Write-Offs or Discounts Taken</a></td>
<td class="num">(6,420)<span></span>
</td>
<td class="num">(5,504)<span></span>
</td>
<td class="num">(2,286)<span></span>
</td>
</tr>
<tr class="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 End of Year</a></td>
<td class="nump">13,209<span></span>
</td>
<td class="nump">12,908<span></span>
</td>
<td class="nump">12,027<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_ValuationAllowancesAndReservesTypeAxis=us-gaap_WarrantyReservesMember', window );">Reserve for warranty</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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="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 Beginning of Year</a></td>
<td class="nump">9,953<span></span>
</td>
<td class="nump">9,096<span></span>
</td>
<td class="nump">10,249<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense', window );">Net Charged to Costs and Expenses</a></td>
<td class="nump">11,290<span></span>
</td>
<td class="nump">10,727<span></span>
</td>
<td class="nump">8,466<span></span>
</td>
</tr>
<tr class="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 );">&#160;Translations, Reclassifications and Acquisitions</a></td>
<td class="num">(244)<span></span>
</td>
<td class="num">(132)<span></span>
</td>
<td class="nump">247<span></span>
</td>
</tr>
<tr class="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 );">&#160;Net Write-Offs or Discounts Taken</a></td>
<td class="num">(11,659)<span></span>
</td>
<td class="num">(9,738)<span></span>
</td>
<td class="num">(9,866)<span></span>
</td>
</tr>
<tr class="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 End of Year</a></td>
<td class="nump">$ 9,340<span></span>
</td>
<td class="nump">$ 9,953<span></span>
</td>
<td class="nump">$ 9,096<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_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=alg_SECSchedule1209SalesDiscountsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_SECSchedule1209SalesDiscountsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ValuationAllowancesAndReservesTypeAxis=us-gaap_InventoryValuationReserveMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_InventoryValuationReserveMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ValuationAllowancesAndReservesTypeAxis=us-gaap_WarrantyReservesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_WarrantyReservesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>67
<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="idm140629859947296">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Valuation and Qualifying Accounts - Additional Information (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">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>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_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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Inventory obsolescence reserves</a></td>
<td class="nump">$ 13,200<span></span>
</td>
<td class="nump">$ 12,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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alg_InventoryUsagePeriod', window );">Inventory usage period</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_alg_InventoryReservePercentage', window );">Inventory reserve percentage</a></td>
<td class="nump">100.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="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alg_ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation', window );">Product warranty accrual period of expenses used in calculation</a></td>
<td class="text">12 months<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_alg_ProductWarrantyAccrualPeriodForSalesUsedInCalculation', window );">Product warranty accrual period for sales used in calculation</a></td>
<td class="text">12 months<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Warranty</a></td>
<td class="nump">$ 9,340<span></span>
</td>
<td class="nump">9,953<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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_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>
<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_alg_ProductWarrantyAccrualLagPeriod', window );">Product warranty accrual lag period</a></td>
<td class="text">3 months<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_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>
<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_alg_ProductWarrantyAccrualLagPeriod', window );">Product warranty accrual lag period</a></td>
<td class="text">6 months<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_ProductOrServiceAxis=alg_WholegoodUnitsMember', window );">Wholegoods | 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_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>
<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_alg_ProductWarrantyPeriod', window );">Product warranty period</a></td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=alg_PartsMember', window );">Parts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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>
<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_alg_ProductWarrantyPeriod', window );">Product warranty period</a></td>
<td class="text">90 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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesTypeAxis=alg_SECSchedule1209SalesDiscountsMember', window );">Reserve for sales discounts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Reserves for sales discounts on products shipped under promotional programs</a></td>
<td class="nump">$ 19,861<span></span>
</td>
<td class="nump">$ 12,567<span></span>
</td>
<td class="nump">$ 13,549<span></span>
</td>
<td class="nump">$ 16,883<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alg_InventoryReservePercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Reserve Percentage</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;">alg_InventoryReservePercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_alg_InventoryUsagePeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Usage 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;">alg_InventoryUsagePeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_alg_ProductWarrantyAccrualLagPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Product Warranty Accrual Lag 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;">alg_ProductWarrantyAccrualLagPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_alg_ProductWarrantyAccrualPeriodForSalesUsedInCalculation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Product Warranty Accrual Period For Sales Used In Calculation</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;">alg_ProductWarrantyAccrualPeriodForSalesUsedInCalculation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_alg_ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Product Warranty Accrual Period Of Expenses Used In Calculation</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;">alg_ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_alg_ProductWarrantyPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Product Warranty 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;">alg_ProductWarrantyPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_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_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>
<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>
<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_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_srt_ProductOrServiceAxis=alg_WholegoodUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ProductOrServiceAxis=alg_WholegoodUnitsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=alg_PartsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ProductOrServiceAxis=alg_PartsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ValuationAllowancesAndReservesTypeAxis=alg_SECSchedule1209SalesDiscountsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_SECSchedule1209SalesDiscountsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="idm140629863068464">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Inventories - Schedule of Inventory, Current (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_InventoryFinishedGoodsNetOfReserves', window );">Finished goods and parts</a></td>
<td class="nump">$ 312,726<span></span>
</td>
<td class="nump">$ 277,760<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryWorkInProcessNetOfReserves', window );">Work in process</a></td>
<td class="nump">22,273<span></span>
</td>
<td class="nump">24,895<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryRawMaterialsNetOfReserves', window );">Raw materials</a></td>
<td class="nump">17,554<span></span>
</td>
<td class="nump">18,262<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 );">Inventory, net</a></td>
<td class="nump">$ 352,553<span></span>
</td>
<td class="nump">$ 320,917<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_InventoryFinishedGoodsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -URI https://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<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 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_InventoryFinishedGoodsNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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_InventoryRawMaterialsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -URI https://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<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 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_InventoryRawMaterialsNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryWorkInProcessNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -URI https://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<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 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_InventoryWorkInProcessNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>69
<FILENAME>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="idm140629860770128">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property, Plant and Equipment (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization', window );">Property, plant and equipment</a></td>
<td class="nump">$ 335,078<span></span>
</td>
<td class="nump">$ 321,863<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization', window );">Less:&#160; Accumulated depreciation</a></td>
<td class="num">(180,071)<span></span>
</td>
<td class="num">(169,372)<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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization', window );">Total property, plant and equipment, net</a></td>
<td class="nump">155,007<span></span>
</td>
<td class="nump">152,491<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandMember', window );">Land</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization', window );">Property, plant and equipment</a></td>
<td class="nump">12,792<span></span>
</td>
<td class="nump">12,838<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember', window );">Buildings and improvements</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization', window );">Property, plant and equipment</a></td>
<td class="nump">$ 145,616<span></span>
</td>
<td class="nump">145,086<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember', window );">Buildings and improvements | Minimum</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentUsefulLife', window );">Useful Lives</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember', window );">Buildings and improvements | Maximum</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentUsefulLife', window );">Useful Lives</a></td>
<td class="text">20 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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember', window );">Machinery and equipment</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization', window );">Property, plant and equipment</a></td>
<td class="nump">$ 140,252<span></span>
</td>
<td class="nump">129,901<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember', window );">Machinery and equipment | Minimum</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentUsefulLife', window );">Useful Lives</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember', window );">Machinery and equipment | Maximum</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentUsefulLife', window );">Useful Lives</a></td>
<td class="text">10 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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Office furniture and equipment</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization', window );">Property, plant and equipment</a></td>
<td class="nump">$ 13,270<span></span>
</td>
<td class="nump">13,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_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Office furniture and equipment | Minimum</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentUsefulLife', window );">Useful Lives</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Office furniture and equipment | Maximum</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentUsefulLife', window );">Useful Lives</a></td>
<td class="text">7 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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_SoftwareAndSoftwareDevelopmentCostsMember', window );">Computer software</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization', window );">Property, plant and equipment</a></td>
<td class="nump">$ 13,551<span></span>
</td>
<td class="nump">12,384<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_SoftwareAndSoftwareDevelopmentCostsMember', window );">Computer software | Minimum</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentUsefulLife', window );">Useful Lives</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_SoftwareAndSoftwareDevelopmentCostsMember', window );">Computer software | Maximum</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentUsefulLife', window );">Useful Lives</a></td>
<td class="text">7 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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_TransportationEquipmentMember', window );">Transportation equipment</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization', window );">Property, plant and equipment</a></td>
<td class="nump">$ 9,597<span></span>
</td>
<td class="nump">$ 8,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_PropertyPlantAndEquipmentUsefulLife', window );">Useful Lives</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 and amortization from plant, property, and equipment and right-of-use asset from finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918638-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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 and amortization, of property, plant, and equipment and finance lease right-of-use asset.</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 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://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> -Subparagraph (a)<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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 amortization, of property, plant, and equipment and finance lease right-of-use asset.</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 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><br>Reference 2: 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(18))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PropertyPlantAndEquipmentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_PropertyPlantAndEquipmentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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_LandMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LandMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_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_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_SoftwareAndSoftwareDevelopmentCostsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SoftwareAndSoftwareDevelopmentCostsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_TransportationEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TransportationEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>70
<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="idm140629856844928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill (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_GoodwillRollForward', window );"><strong>Goodwill [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_Goodwill', window );">Goodwill, balance at the beginning of the period</a></td>
<td class="nump">$ 202,406<span></span>
</td>
<td class="nump">$ 195,132<span></span>
</td>
<td class="nump">$ 198,022<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillForeignCurrencyTranslationGainLoss', window );">Translation adjustment</a></td>
<td class="num">(3,029)<span></span>
</td>
<td class="num">(2,218)<span></span>
</td>
<td class="nump">1,168<span></span>
</td>
</tr>
<tr class="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 );">Goodwill acquired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,492<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Goodwill adjustment</a></td>
<td class="num">(3,519)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(4,058)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill, balance at the end of the period</a></td>
<td class="nump">195,858<span></span>
</td>
<td class="nump">202,406<span></span>
</td>
<td class="nump">195,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=alg_VegetationManagementMember', window );">Vegetation 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="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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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, balance at the beginning of the period</a></td>
<td class="nump">132,963<span></span>
</td>
<td class="nump">124,981<span></span>
</td>
<td class="nump">126,894<span></span>
</td>
</tr>
<tr class="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 );">Translation adjustment</a></td>
<td class="num">(1,882)<span></span>
</td>
<td class="num">(1,510)<span></span>
</td>
<td class="nump">132<span></span>
</td>
</tr>
<tr class="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 );">Goodwill acquired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,492<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Goodwill adjustment</a></td>
<td class="num">(3,519)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,045)<span></span>
</td>
</tr>
<tr class="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, balance at the end of the period</a></td>
<td class="nump">127,562<span></span>
</td>
<td class="nump">132,963<span></span>
</td>
<td class="nump">124,981<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=alg_IndustrialManagementMember', window );">Industrial Equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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, balance at the beginning of the period</a></td>
<td class="nump">69,443<span></span>
</td>
<td class="nump">70,151<span></span>
</td>
<td class="nump">71,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_GoodwillForeignCurrencyTranslationGainLoss', window );">Translation adjustment</a></td>
<td class="num">(1,147)<span></span>
</td>
<td class="num">(708)<span></span>
</td>
<td class="nump">1,036<span></span>
</td>
</tr>
<tr class="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 );">Goodwill acquired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Goodwill adjustment</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,013)<span></span>
</td>
</tr>
<tr class="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, balance at the end of the period</a></td>
<td class="nump">$ 68,296<span></span>
</td>
<td class="nump">$ 69,443<span></span>
</td>
<td class="nump">$ 70,151<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=alg_VegetationManagementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_VegetationManagementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=alg_IndustrialManagementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_IndustrialManagementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>71
<FILENAME>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="idm140629855361856">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Intangible Assets - Schedule of Definite and Indefinite Lived Intangible Assets (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems', window );"><strong>Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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 );">Definite</a></td>
<td class="nump">$ 230,772<span></span>
</td>
<td class="nump">$ 227,963<span></span>
</td>
</tr>
<tr class="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 );">Less accumulated amortization</a></td>
<td class="num">(64,931)<span></span>
</td>
<td class="num">(49,997)<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_FiniteLivedIntangibleAssetsNet', window );">Total net</a></td>
<td class="nump">165,841<span></span>
</td>
<td class="nump">177,966<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_IntangibleAssetsNetExcludingGoodwill', window );">Total Intangible Assets</a></td>
<td class="nump">171,341<span></span>
</td>
<td class="nump">183,466<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_TrademarksAndTradeNamesMember', window );">Trade names and 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems', window );"><strong>Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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 );">Indefinite</a></td>
<td class="nump">5,500<span></span>
</td>
<td class="nump">5,500<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_TrademarksAndTradeNamesMember', window );">Trade names and trademarks</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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems', window );"><strong>Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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_FiniteLivedIntangibleAssetsGross', window );">Definite</a></td>
<td class="nump">68,797<span></span>
</td>
<td class="nump">68,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_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Less accumulated amortization</a></td>
<td class="num">(13,900)<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_FiniteLivedIntangibleAssetsNet', window );">Total net</a></td>
<td class="nump">54,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember', window );">Customer and dealer 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems', window );"><strong>Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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 );">Definite</a></td>
<td class="nump">129,338<span></span>
</td>
<td class="nump">126,104<span></span>
</td>
</tr>
<tr class="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 );">Less accumulated amortization</a></td>
<td class="num">(39,200)<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_FiniteLivedIntangibleAssetsNet', window );">Total net</a></td>
<td class="nump">90,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_IntellectualPropertyMember', window );">Patents and developed technologies</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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems', window );"><strong>Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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_FiniteLivedIntangibleAssetsGross', window );">Definite</a></td>
<td class="nump">28,437<span></span>
</td>
<td class="nump">29,338<span></span>
</td>
</tr>
<tr class="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 );">Less accumulated amortization</a></td>
<td class="num">(9,900)<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_FiniteLivedIntangibleAssetsNet', window );">Total net</a></td>
<td class="nump">$ 18,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OffMarketFavorableLeaseMember', window );">Favorable leasehold interests</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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems', window );"><strong>Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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_FiniteLivedIntangibleAssetUsefulLife', window );">Estimated Useful Lives</a></td>
<td class="text">7 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Definite</a></td>
<td class="nump">$ 4,200<span></span>
</td>
<td class="nump">$ 4,200<span></span>
</td>
</tr>
<tr class="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 );">Less accumulated amortization</a></td>
<td class="num">(1,900)<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_FiniteLivedIntangibleAssetsNet', window );">Total net</a></td>
<td class="nump">$ 2,300<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</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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems', window );"><strong>Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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_FiniteLivedIntangibleAssetUsefulLife', window );">Estimated Useful Lives</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_srt_RangeAxis=srt_MinimumMember', window );">Minimum | Trade names and trademarks</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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems', window );"><strong>Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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_FiniteLivedIntangibleAssetUsefulLife', window );">Estimated Useful Lives</a></td>
<td class="text">15 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_srt_RangeAxis=srt_MinimumMember', window );">Minimum | Customer and dealer 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems', window );"><strong>Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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_FiniteLivedIntangibleAssetUsefulLife', window );">Estimated Useful Lives</a></td>
<td class="text">8 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_srt_RangeAxis=srt_MinimumMember', window );">Minimum | Patents and developed technologies</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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems', window );"><strong>Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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_FiniteLivedIntangibleAssetUsefulLife', window );">Estimated Useful Lives</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_srt_RangeAxis=srt_MaximumMember', window );">Maximum</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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems', window );"><strong>Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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_FiniteLivedIntangibleAssetUsefulLife', window );">Estimated Useful Lives</a></td>
<td class="text">25 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_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Trade names and trademarks</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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems', window );"><strong>Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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_FiniteLivedIntangibleAssetUsefulLife', window );">Estimated Useful Lives</a></td>
<td class="text">25 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_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Customer and dealer 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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems', window );"><strong>Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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_FiniteLivedIntangibleAssetUsefulLife', window );">Estimated Useful Lives</a></td>
<td class="text">15 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_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Patents and developed technologies</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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems', window );"><strong>Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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_FiniteLivedIntangibleAssetUsefulLife', window );">Estimated Useful Lives</a></td>
<td class="text">12 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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] for Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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;">alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_FiniteLivedIntangibleAssetUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="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_FiniteLivedIntangibleAssetUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 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 926<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=120154696&amp;loc=d3e54445-107959<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_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksAndTradeNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TrademarksAndTradeNamesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_TrademarksAndTradeNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TrademarksAndTradeNamesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_IntellectualPropertyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_IntellectualPropertyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OffMarketFavorableLeaseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OffMarketFavorableLeaseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>72
<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="idm140629856760752">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Intangible Assets - Additional Information (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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems', window );"><strong>Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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_FiniteLivedIntangibleAssetsNet', window );">Net carrying value of intangibles with definite useful lives</a></td>
<td class="nump">$ 165,841<span></span>
</td>
<td class="nump">$ 177,966<span></span>
</td>
</tr>
<tr class="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</a></td>
<td class="nump">64,931<span></span>
</td>
<td class="nump">$ 49,997<span></span>
</td>
</tr>
<tr class="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 );">2022</a></td>
<td class="nump">15,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">2023</a></td>
<td class="nump">15,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">2024</a></td>
<td class="nump">15,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', window );">2025</a></td>
<td class="nump">15,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">2026</a></td>
<td class="nump">15,300<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_TradeNamesMember', window );">Trade Names | Gradall</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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems', window );"><strong>Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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_IndefiniteLivedIntangibleAssetsExcludingGoodwill', window );">Carrying values of indefinite lived trade names</a></td>
<td class="nump">3,600<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_TradeNamesMember', window );">Trade Names | Bush Hog</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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems', window );"><strong>Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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 );">Carrying values of indefinite lived trade names</a></td>
<td class="nump">1,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksAndTradeNamesMember', window );">Trade names and trademarks</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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems', window );"><strong>Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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_FiniteLivedIntangibleAssetsNet', window );">Net carrying value of intangibles with definite useful lives</a></td>
<td class="nump">54,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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</a></td>
<td class="nump">13,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember', window );">Customer and dealer relationships</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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems', window );"><strong>Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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_FiniteLivedIntangibleAssetsNet', window );">Net carrying value of intangibles with definite useful lives</a></td>
<td class="nump">90,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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</a></td>
<td class="nump">39,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_IntellectualPropertyMember', window );">Patents and developed technologies</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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems', window );"><strong>Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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_FiniteLivedIntangibleAssetsNet', window );">Net carrying value of intangibles with definite useful lives</a></td>
<td class="nump">18,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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</a></td>
<td class="nump">9,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OffMarketFavorableLeaseMember', window );">Favorable leasehold interests</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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems', window );"><strong>Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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_FiniteLivedIntangibleAssetsNet', window );">Net carrying value of intangibles with definite useful lives</a></td>
<td class="nump">2,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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</a></td>
<td class="nump">$ 1,900<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_alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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] for Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [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;">alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_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_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_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 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 926<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=120154696&amp;loc=d3e54445-107959<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_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TradeNamesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=alg_GradallMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">dei_LegalEntityAxis=alg_GradallMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_dei_LegalEntityAxis=alg_BushHogMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">dei_LegalEntityAxis=alg_BushHogMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_TrademarksAndTradeNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TrademarksAndTradeNamesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_IntellectualPropertyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_IntellectualPropertyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OffMarketFavorableLeaseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OffMarketFavorableLeaseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>73
<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="idm140629865462576">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases - Lease Cost (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_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_FinanceLeaseRightOfUseAssetAmortization', window );">Amortization of right-of-use assets</a></td>
<td class="nump">$ 30<span></span>
</td>
<td class="nump">$ 67<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseInterestExpense', window );">Interest on lease liabilities</a></td>
<td class="nump">1<span></span>
</td>
<td class="nump">3<span></span>
</td>
</tr>
<tr class="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">5,783<span></span>
</td>
<td class="nump">5,571<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShortTermLeaseCost', window );">Short-Term Lease, Cost</a></td>
<td class="nump">1,397<span></span>
</td>
<td class="nump">1,033<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_VariableLeaseCost', window );">Variable lease cost</a></td>
<td class="nump">348<span></span>
</td>
<td class="nump">410<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_LeaseCost', window );">Total lease cost</a></td>
<td class="nump">$ 7,559<span></span>
</td>
<td class="nump">$ 7,084<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseInterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 on finance 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 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918638-209977<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI 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_FinanceLeaseInterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseRightOfUseAssetAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 right-of-use asset from finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918638-209977<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI 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_FinanceLeaseRightOfUseAssetAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 variable lease cost, excluded from lease liability, recognized when obligation for payment is incurred for finance and operating leases.</p></div>
<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 (d)<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_VariableLeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>74
<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="idm140629860211120">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Maturity Schedule (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_OperatingLeaseLiabilitiesPaymentsDueAbstract', window );"><strong>Operating Leases</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">$ 5,177<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">4,099<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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,294<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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,728<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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,780<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Thereafter</a></td>
<td class="nump">1,743<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 minimum lease payments</a></td>
<td class="nump">18,821<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 imputed interest</a></td>
<td class="num">(1,287)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Total lease liabilities</a></td>
<td class="nump">$ 17,534<span></span>
</td>
<td class="nump">$ 16,892<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_OperatingLeaseLiabilitiesPaymentsDueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OperatingLeaseLiabilitiesPaymentsDueAbstract</td>
</tr>
<tr>
<td style="padding-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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>75
<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="idm140629860710368">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases - Additional Information (Details) - USD ($)<br> $ in Millions</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_OperatingLeaseExpense', window );">Operating lease expense</a></td>
<td class="nump">$ 7.5<span></span>
</td>
<td class="nump">$ 7.0<span></span>
</td>
<td class="nump">$ 6.1<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_alg_LesseeOperatingLeaseLeaseNotYetCommencedAmount', window );">Additional operating lease not yet commenced</a></td>
<td class="nump">$ 3.1<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_alg_LesseeOperatingLeaseLeaseNotYetCommencedAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Lessee, Operating Lease, Lease Not Yet Commenced, 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;">alg_LesseeOperatingLeaseLeaseNotYetCommencedAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_OperatingLeaseExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 lease expense. Excludes 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 45<br> -Paragraph 4<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918638-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_OperatingLeaseExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>76
<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="idm140629856800640">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Supplemental Balance Sheet Information (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_LesseeOperatingLeaseDescriptionAbstract', window );"><strong>Operating Leases</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 );">Other non-current assets</a></td>
<td class="nump">$ 17,249<span></span>
</td>
<td class="nump">$ 16,744<span></span>
</td>
</tr>
<tr class="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 );">Accrued liabilities</a></td>
<td class="nump">4,685<span></span>
</td>
<td class="nump">4,655<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Other long-term liabilities</a></td>
<td class="nump">12,849<span></span>
</td>
<td class="nump">12,237<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 liabilities</a></td>
<td class="nump">$ 17,534<span></span>
</td>
<td class="nump">$ 16,892<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList', window );">Operating Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration]</a></td>
<td class="text">Other non-current assets<span></span>
</td>
<td class="text">Other non-current assets<span></span>
</td>
</tr>
<tr class="re">
<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 Enumeration]</a></td>
<td class="text">Accrued liabilities<span></span>
</td>
<td class="text">Accrued liabilities<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList', window );">Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible Enumeration]</a></td>
<td class="text">Other long-term liabilities<span></span>
</td>
<td class="text">Other long-term liabilities<span></span>
</td>
</tr>
<tr class="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 );">Operating leases, weighted average remaining lease term</a></td>
<td class="text">4 years 7 months 28 days<span></span>
</td>
<td class="text">5 years 1 month 20 days<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent', window );">Operating leases, weighted average remaining discount rate</a></td>
<td class="nump">3.30%<span></span>
</td>
<td class="nump">2.83%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseDescriptionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LesseeOperatingLeaseDescriptionAbstract</td>
</tr>
<tr>
<td style="padding-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_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_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_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 noncurrent 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_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList</td>
</tr>
<tr>
<td style="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_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_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 operating lease right-of-use asset.</p></div>
<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_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList</td>
</tr>
<tr>
<td style="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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>77
<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="idm140629865556928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases - Supplemental Cash Flow Information (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_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_OperatingLeasePayments', window );">Operating cash flows from operating leases</a></td>
<td class="nump">$ 5,246<span></span>
</td>
<td class="nump">$ 5,013<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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>78
<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="idm140629861350592">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Accrued 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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PayablesAndAccrualsAbstract', window );"><strong>Payables and Accruals [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_AccruedEmployeeBenefitsCurrent', window );">Salaries, wages and bonuses</a></td>
<td class="nump">$ 37,590<span></span>
</td>
<td class="nump">$ 37,462<span></span>
</td>
</tr>
<tr class="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 );">Lease liability</a></td>
<td class="nump">4,685<span></span>
</td>
<td class="nump">4,655<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxesPayableCurrent', window );">Taxes</a></td>
<td class="nump">2,426<span></span>
</td>
<td class="nump">1,902<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrualClassifiedCurrent', window );">Warranty</a></td>
<td class="nump">9,340<span></span>
</td>
<td class="nump">9,953<span></span>
</td>
</tr>
<tr class="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 );">Retirement provision</a></td>
<td class="nump">2,588<span></span>
</td>
<td class="nump">2,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_ContractWithCustomerLiabilityCurrent', window );">Customer deposits</a></td>
<td class="nump">5,197<span></span>
</td>
<td class="nump">6,383<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesCurrent', window );">Other</a></td>
<td class="nump">9,542<span></span>
</td>
<td class="nump">10,201<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_AccruedLiabilitiesCurrent', window );">Accrued liabilities</a></td>
<td class="nump">$ 71,368<span></span>
</td>
<td class="nump">$ 73,523<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_AccruedEmployeeBenefitsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, excluding pension and other postretirement benefits, incurred through that date and payable for perquisites provided to employees pertaining to services received from them. 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_AccruedEmployeeBenefitsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_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_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_OtherLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 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://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.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_OtherLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="padding-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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TaxesPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19,20)<br> -URI 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_TaxesPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>79
<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="idm140629859891904">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Long-Term 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_FinanceLeaseLiability', window );">Capital lease obligations</a></td>
<td class="nump">$ 24<span></span>
</td>
<td class="nump">$ 56<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_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities', window );">Total debt</a></td>
<td class="nump">301,952<span></span>
</td>
<td class="nump">269,554<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent', window );">Less current maturities</a></td>
<td class="nump">15,009<span></span>
</td>
<td class="nump">15,032<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtAndCapitalLeaseObligations', window );">Total long-term debt</a></td>
<td class="nump">$ 286,943<span></span>
</td>
<td class="nump">$ 254,522<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList', window );">Finance Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration]</a></td>
<td class="text">Less current maturities<span></span>
</td>
<td class="text">Less current maturities<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList', window );">Finance Lease, Liability, Noncurrent, Statement of Financial Position [Extensible Enumeration]</a></td>
<td class="text">Total long-term debt<span></span>
</td>
<td class="text">Total long-term debt<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 debt</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_LongTermDebt', window );">Long-term debt</a></td>
<td class="nump">$ 249,928<span></span>
</td>
<td class="nump">$ 265,498<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_LineOfCreditMember', window );">Line of Credit | Bank revolving credit facility</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_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="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 );">Long-term debt</a></td>
<td class="nump">$ 52,000<span></span>
</td>
<td class="nump">$ 4,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_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_FinanceLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI 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_FinanceLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 finance 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_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList</td>
</tr>
<tr>
<td style="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_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 noncurrent finance 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_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList</td>
</tr>
<tr>
<td style="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_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_LongTermDebtAndCapitalLeaseObligations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 long-term debt and lease obligation, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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_LongTermDebtAndCapitalLeaseObligations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 long-term debt and lease obligation, 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 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_LongTermDebtAndCapitalLeaseObligationsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 long-term debt and lease obligation, including portion classified as 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;">us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=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_CreditFacilityAxis=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_LongtermDebtTypeAxis=us-gaap_UnsecuredDebtMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_UnsecuredDebtMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="idm140629856584816">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Long-Term Debt - Additional Information (Details)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Oct. 28, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Oct. 24, 2019 </div>
<div>covenant</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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths', window );">2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 15,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_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo', window );">2024</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">15,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_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree', window );">2025</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">15,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_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour', window );">2026</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">15,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_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive', window );">2027</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">241,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive', window );">Thereafter</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember', window );">the Credit Agreement | Bank 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>
</tr>
<tr class="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>
</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_alg_DebtInstrumentNumberOfCovenants', window );">Number of covenants | covenant</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">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_us-gaap_DebtInstrumentAxis=alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember', window );">the Credit Agreement | Bank revolving credit facility | Line 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>
</tr>
<tr class="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>
</tr>
<tr class="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 );">Aggregate commitments</a></td>
<td class="nump">$ 655,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_DebtInstrumentUnusedBorrowingCapacityAmount', window );">Debt instrument, unused borrowing capacity, amount</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_LineOfCreditFacilityFairValueOfAmountOutstanding', window );">Fair value of amount outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">301,900<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=alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember', window );">the Credit Agreement | Bank revolving credit facility | Line of Credit | Low</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="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 );">Commitment fee (percent)</a></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_DebtInstrumentAxis=alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember', window );">the Credit Agreement | Bank revolving credit facility | Line of Credit | High</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="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 );">Commitment fee (percent)</a></td>
<td class="nump">0.30%<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=alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember', window );">the Credit Agreement | Bank revolving credit facility | Line of Credit | Secured Overnight Financing Rate (SOFR) | Low</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="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 );">Debt instrument, interest rate, stated percentage</a></td>
<td class="nump">1.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_DebtInstrumentAxis=alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember', window );">the Credit Agreement | Bank revolving credit facility | Line of Credit | Secured Overnight Financing Rate (SOFR) | High</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="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 );">Debt instrument, interest rate, stated percentage</a></td>
<td class="nump">2.50%<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=alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember', window );">the Credit Agreement | Bank revolving credit facility | Line of Credit | Base Rate | Low</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="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 );">Debt instrument, interest rate, stated 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>
</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=alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember', window );">the Credit Agreement | Bank revolving credit facility | Line of Credit | Base Rate | High</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="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 );">Debt instrument, interest rate, stated percentage</a></td>
<td class="nump">1.50%<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=alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember', window );">the Credit Agreement | Bank revolving credit facility | Term Facility</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="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 );">Aggregate commitments</a></td>
<td class="nump">$ 255,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_DebtInstrumentPeriodicPayment', window );">Debt instrument, periodic payment</a></td>
<td class="nump">3,750<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding', window );">Fair value of amount outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 249,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtWeightedAverageInterestRate', window );">Long-Term debt outstanding, rate (percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6.17%<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=alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember', window );">the Credit Agreement | Bank revolving credit facility | 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>
</tr>
<tr class="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>
</tr>
<tr class="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 );">Aggregate commitments</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_LineOfCreditFacilityExpirationPeriod', window );">Expiration period</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding', window );">Fair value of amount outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 52,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_LongtermDebtWeightedAverageInterestRate', window );">Long-Term debt outstanding, rate (percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6.25%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityCapacityAvailableForTradePurchases', window );">Amount of capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,800<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">Available borrowings</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 295,200<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_alg_DebtInstrumentNumberOfCovenants">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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;">alg_DebtInstrumentNumberOfCovenants</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_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_DebtInstrumentPeriodicPayment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 required periodic payments including both interest and principal payments.</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.22)<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 942<br> -SubTopic 470<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123599511&amp;loc=d3e64711-112823<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentPeriodicPayment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DebtInstrumentUnusedBorrowingCapacityAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 unused borrowing capacity under the long-term financing arrangement that is available to the entity 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(b))<br> -URI 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_DebtInstrumentUnusedBorrowingCapacityAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LineOfCreditFacilityCapacityAvailableForTradePurchases">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amount of borrowing capacity under a line of credit that is available as of the balance sheet date for financing purchases of goods acquired for inventory or imminent delivery to a customer.</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_LineOfCreditFacilityCapacityAvailableForTradePurchases</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LineOfCreditFacilityExpirationPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 remaining on line of credit facility before it terminates, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityExpirationPeriod</td>
</tr>
<tr>
<td style="padding-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_LineOfCreditFacilityFairValueOfAmountOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the amount outstanding under the credit facility.</p></div>
<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 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13433-108611<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<br><br>Reference 2: 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 1E<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<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 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-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_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<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 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-122690<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<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 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-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_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<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 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-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_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<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 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-122690<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<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 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-122690<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongtermDebtWeightedAverageInterestRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 interest rate of long-term debt outstanding calculated at point in time.</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_LongtermDebtWeightedAverageInterestRate</td>
</tr>
<tr>
<td style="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_DebtInstrumentAxis=alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_UnsecuredDebtMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_UnsecuredDebtMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_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_CreditFacilityAxis=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_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_VariableRateAxis=us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_CreditFacilityAxis=alg_TermFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_TermFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>81
<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="idm140629855232928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Schedule of Income (Loss) before 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_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">$ 86,680<span></span>
</td>
<td class="nump">$ 74,070<span></span>
</td>
<td class="nump">$ 50,977<span></span>
</td>
</tr>
<tr class="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="nump">47,630<span></span>
</td>
<td class="nump">35,428<span></span>
</td>
<td class="nump">28,780<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income taxes</a></td>
<td class="nump">$ 134,310<span></span>
</td>
<td class="nump">$ 109,498<span></span>
</td>
<td class="nump">$ 79,757<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>82
<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="idm140629860687408">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Schedule of Components of Income Tax Expense (Benefit) (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="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 );">Domestic</a></td>
<td class="nump">$ 19,197<span></span>
</td>
<td class="nump">$ 16,846<span></span>
</td>
<td class="nump">$ 10,823<span></span>
</td>
</tr>
<tr class="re">
<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">11,848<span></span>
</td>
<td class="nump">8,646<span></span>
</td>
<td class="nump">8,759<span></span>
</td>
</tr>
<tr class="ro">
<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">3,674<span></span>
</td>
<td class="nump">4,943<span></span>
</td>
<td class="nump">3,226<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 );">Provision for current income tax expense (benefit)</a></td>
<td class="nump">34,719<span></span>
</td>
<td class="nump">30,435<span></span>
</td>
<td class="nump">22,808<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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 );">Domestic</a></td>
<td class="num">(2,246)<span></span>
</td>
<td class="num">(679)<span></span>
</td>
<td class="nump">1,238<span></span>
</td>
</tr>
<tr class="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="num">(51)<span></span>
</td>
<td class="num">(274)<span></span>
</td>
<td class="num">(1,199)<span></span>
</td>
</tr>
<tr class="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="num">(40)<span></span>
</td>
<td class="num">(229)<span></span>
</td>
<td class="num">(894)<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 );">Provision for deferred income tax expense (benefit)</a></td>
<td class="num">(2,337)<span></span>
</td>
<td class="num">(1,182)<span></span>
</td>
<td class="num">(855)<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 tax</a></td>
<td class="nump">$ 32,382<span></span>
</td>
<td class="nump">$ 29,253<span></span>
</td>
<td class="nump">$ 21,953<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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>83
<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="idm140629856519040">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Income Tax Reconciliation (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_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate', window );">Income tax expense at statutory rates</a></td>
<td class="nump">$ 28,205<span></span>
</td>
<td class="nump">$ 22,995<span></span>
</td>
<td class="nump">$ 16,749<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract', window );"><strong>Increase (reduction) from:</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_IncomeTaxReconciliationForeignIncomeTaxRateDifferential', window );">Jurisdictional rate differences</a></td>
<td class="nump">1,989<span></span>
</td>
<td class="nump">1,599<span></span>
</td>
<td class="nump">1,034<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_alg_EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount', window );">Executive compensation limitation</a></td>
<td class="nump">481<span></span>
</td>
<td class="nump">1,314<span></span>
</td>
<td class="nump">170<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost', window );">Stock based compensation</a></td>
<td class="nump">122<span></span>
</td>
<td class="num">(322)<span></span>
</td>
<td class="num">(366)<span></span>
</td>
</tr>
<tr class="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 );">U.S. state taxes</a></td>
<td class="nump">2,632<span></span>
</td>
<td class="nump">3,724<span></span>
</td>
<td class="nump">2,556<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_alg_IncomeTaxRateReconciliationForeignTaxExpense', window );">Foreign tax expense</a></td>
<td class="nump">267<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">704<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationTaxCreditsResearch', window );">R&amp;D credit</a></td>
<td class="num">(1,645)<span></span>
</td>
<td class="num">(670)<span></span>
</td>
<td class="num">(415)<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_alg_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount', window );">GILTI</a></td>
<td class="nump">500<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">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_alg_EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount', window );">Previously unrecognized tax (benefit)/expense</a></td>
<td class="nump">51<span></span>
</td>
<td class="nump">8<span></span>
</td>
<td class="nump">2,219<span></span>
</td>
</tr>
<tr class="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, net</a></td>
<td class="num">(220)<span></span>
</td>
<td class="nump">605<span></span>
</td>
<td class="num">(748)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017', window );">Provision for income taxes</a></td>
<td class="nump">$ 32,382<span></span>
</td>
<td class="nump">$ 29,253<span></span>
</td>
<td class="nump">$ 21,953<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_alg_EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent', window );">Effective tax rate</a></td>
<td class="nump">24.00%<span></span>
</td>
<td class="nump">27.00%<span></span>
</td>
<td class="nump">28.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alg_EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, Before Tax Cuts And Jobs Act Of 2017, 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;">alg_EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_alg_EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Limitation, 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;">alg_EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alg_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, Global Intangible Low-Taxed Income, 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;">alg_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alg_EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, Previously Unrecognized Tax Benefit, 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;">alg_EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Expense (Benefit), Before Tax Cuts And Jobs Act Of 2017</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;">alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alg_IncomeTaxRateReconciliationForeignTaxExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Rate Reconciliation, Foreign Tax 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;">alg_IncomeTaxRateReconciliationForeignTaxExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_IncomeTaxReconciliationForeignIncomeTaxRateDifferential">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 foreign 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_IncomeTaxReconciliationForeignIncomeTaxRateDifferential</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 reported income tax expense (benefit) in excess of (less than) expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to nondeductible expense for award under share-based payment arrangement. Includes, but is not limited to, 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxReconciliationOtherReconcilingItemsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeTaxReconciliationOtherReconcilingItemsAbstract</td>
</tr>
<tr>
<td style="padding-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_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_IncomeTaxReconciliationTaxCreditsResearch">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 research tax 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/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_IncomeTaxReconciliationTaxCreditsResearch</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>84
<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="idm140629856868496">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Income Taxes - Schedule of Deferred Tax 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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsGrossAbstract', window );"><strong>Deferred income tax 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_DeferredTaxAssetsInventory', window );">Inventory basis difference</a></td>
<td class="nump">$ 3,459<span></span>
</td>
<td class="nump">$ 1,136<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts', window );">Accounts receivable reserve</a></td>
<td class="nump">334<span></span>
</td>
<td class="nump">270<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment', window );">Rental equipment and Property, plant and equipment</a></td>
<td class="nump">347<span></span>
</td>
<td class="nump">201<span></span>
</td>
</tr>
<tr class="re">
<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 );">Stock based compensation</a></td>
<td class="nump">826<span></span>
</td>
<td class="nump">754<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions', window );">Pension liability</a></td>
<td class="nump">2,900<span></span>
</td>
<td class="nump">3,351<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits', window );">Employee benefit accrual</a></td>
<td class="nump">2,451<span></span>
</td>
<td class="nump">3,070<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves', window );">Product liability and warranty reserves</a></td>
<td class="nump">2,177<span></span>
</td>
<td class="nump">2,464<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign', window );">Foreign net operating loss</a></td>
<td class="nump">3,078<span></span>
</td>
<td class="nump">3,764<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_alg_DeferredTaxAssetsLeaseLiability', window );">Lease liability</a></td>
<td class="nump">4,738<span></span>
</td>
<td class="nump">4,221<span></span>
</td>
</tr>
<tr class="re">
<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 R&amp;D costs</a></td>
<td class="nump">4,230<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_DeferredTaxAssetsOther', window );">Other</a></td>
<td class="nump">1,635<span></span>
</td>
<td class="nump">1,415<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_DeferredTaxAssetsGross', window );">Total deferred income tax assets</a></td>
<td class="nump">26,175<span></span>
</td>
<td class="nump">20,646<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Less: Valuation allowance</a></td>
<td class="num">(3,637)<span></span>
</td>
<td class="num">(4,129)<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_DeferredTaxAssetsNet', window );">Net deferred income tax assets</a></td>
<td class="nump">22,538<span></span>
</td>
<td class="nump">16,517<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesAbstract', window );"><strong>Deferred income tax liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts', window );">Inventory basis differences</a></td>
<td class="num">(264)<span></span>
</td>
<td class="num">(283)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment', window );">Rental equipment and Property, plant and equipment</a></td>
<td class="num">(14,373)<span></span>
</td>
<td class="num">(13,253)<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_alg_DeferredTaxLiabilitiesLeaseAsset', window );">Lease asset</a></td>
<td class="num">(4,637)<span></span>
</td>
<td class="num">(4,149)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets', window );">Intangible assets</a></td>
<td class="num">(19,301)<span></span>
</td>
<td class="num">(18,041)<span></span>
</td>
</tr>
<tr class="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 );">Expenses not currently deductible for book purposes</a></td>
<td class="num">(1,244)<span></span>
</td>
<td class="num">(1,139)<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 );">Total deferred income tax liabilities</a></td>
<td class="num">(39,819)<span></span>
</td>
<td class="num">(36,865)<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 income taxes</a></td>
<td class="num">$ (17,281)<span></span>
</td>
<td class="num">$ (20,348)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alg_DeferredTaxAssetsLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, Lease Liability</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;">alg_DeferredTaxAssetsLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alg_DeferredTaxLiabilitiesLeaseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Liabilities, Lease 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;">alg_DeferredTaxLiabilitiesLeaseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_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_DeferredTaxAssetsGrossAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DeferredTaxAssetsGrossAbstract</td>
</tr>
<tr>
<td style="padding-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_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_DeferredTaxAssetsInventory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 inventory.</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_DeferredTaxAssetsInventory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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_DeferredTaxAssetsOperatingLossCarryforwardsForeign">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 foreign operating loss 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 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_DeferredTaxAssetsOperatingLossCarryforwardsForeign</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 property, plant, and 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_DeferredTaxAssetsPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 from employee benefits, 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_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 pension benefits.</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_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 difference from allowance for credit loss on accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 warranty reserves.</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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxLiabilitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DeferredTaxLiabilitiesAbstract</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 consequences attributable to taxable temporary differences derived from inventory.</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_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>85
<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="idm140629861177408">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Income Taxes - Additional Information (Details)<br></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_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [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_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued', window );">Income tax penalties and interest cacrued</a></td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alg_TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary', window );">Withholding taxes</a></td>
<td class="nump">4,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_IncomeTaxAuthorityAxis=us-gaap_ForeignCountryMember', window );">Foreign</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_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [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_DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration', window );">Net operating loss carryforwards with unlimited carryforward period</a></td>
<td class="nump">10,100,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_IncomeTaxAuthorityAxis=us-gaap_StateAndLocalJurisdictionMember', window );">State</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_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [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_OperatingLossCarryforwards', window );">Net operating loss carryforwards</a></td>
<td class="nump">$ 200,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alg_TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tax Cuts And Jobs Act, Incomplete Accounting, Provisional Undistributed Accumulated Earnings Of Foreign Subsidiary</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;">alg_TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 that are not subject to expiration dates.</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_DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount accrued 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_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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>
<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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>86
<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="idm140629859556160">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Schedule of Unrecognized Tax Benefits (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 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_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward', window );"><strong>Reconciliation of Unrecognized Tax Benefits, Excluding Amounts Pertaining to Examined Tax Returns [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_UnrecognizedTaxBenefits', window );">Balance as of beginning of year</a></td>
<td class="nump">$ 270<span></span>
</td>
<td class="nump">$ 262<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions', window );">Increases for tax positions related to the current year</a></td>
<td class="nump">156<span></span>
</td>
<td class="nump">82<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations', window );">Decreases due to lapse of statute of limitations</a></td>
<td class="num">(105)<span></span>
</td>
<td class="num">(74)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefits', window );">Balance as of end of year</a></td>
<td class="nump">$ 321<span></span>
</td>
<td class="nump">$ 270<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_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward</td>
</tr>
<tr>
<td style="padding-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_UnrecognizedTaxBenefits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 unrecognized tax benefits.</p></div>
<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 10B<br> -URI https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=SL37586934-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 15A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-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_UnrecognizedTaxBenefits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 unrecognized tax benefits resulting from tax positions that have been or will be taken in current period tax return.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><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 15A<br> -Subparagraph (a)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-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_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 unrecognized tax benefits resulting from lapses of applicable statutes of limitations.</p></div>
<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 15A<br> -Subparagraph (a)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-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_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>87
<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="idm140629861164736">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Common Stock (Details) - USD ($)<br></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. 01, 2023</div></th>
<th class="th"><div>Jan. 03, 2023</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_ClassOfStockLineItems', window );"><strong>Class of Stock [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_CommonStockDividendsPerShareCashPaid', window );">Dividends paid (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.72<span></span>
</td>
<td class="nump">$ 0.56<span></span>
</td>
<td class="nump">$ 0.52<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchaseProgramAuthorizedAmount1', window );">Stock repurchase program, authorized amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 30,000,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_TreasuryStockSharesAcquired', window );">Common stock repurchased (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ClassOfStockLineItems', window );"><strong>Class of Stock [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_CommonStockDividendsPerShareDeclared', window );">Dividends per share (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.22<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockDividendsPerShareCashPaid', window );">Dividends paid (in dollars per share)</a></td>
<td class="nump">$ 0.22<span></span>
</td>
<td class="text">&#160;<span></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_ClassOfStockLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_ClassOfStockLineItems</td>
</tr>
<tr>
<td style="padding-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_CommonStockDividendsPerShareCashPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 dividends paid during the period for each share of common stock 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 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockDividendsPerShareCashPaid</td>
</tr>
<tr>
<td style="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_CommonStockDividendsPerShareDeclared">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 dividends declared during the period for each share of common stock 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 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockDividendsPerShareDeclared</td>
</tr>
<tr>
<td style="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_StockRepurchaseProgramAuthorizedAmount1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of stock repurchase plan authorized.</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_StockRepurchaseProgramAuthorizedAmount1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockSharesAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 are being held in treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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))<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_TreasuryStockSharesAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="idm140629854717616">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock Options - Additional Information (Details) - USD ($)<br> $ / shares in Units, $ in Millions</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>May 02, 2019</div></th>
<th class="th"><div>May 07, 2015</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="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>
</tr>
<tr class="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod', window );">Option term (years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_AwardTypeAxis=alg_QualifiedStockOptionsMember', window );">Qualified Stock Options</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted average grant date fair value of options granted (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 52.7<span></span>
</td>
<td class="nump">$ 59.01<span></span>
</td>
<td class="nump">$ 38.33<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock option expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.6<span></span>
</td>
<td class="nump">$ 0.6<span></span>
</td>
<td class="nump">$ 0.5<span></span>
</td>
</tr>
<tr class="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 );">Total unrecognized compensation cost related to non-vested share-based compensation arrangements</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1.3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Period cost is expected to be recognized (years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">17,625<span></span>
</td>
<td class="nump">18,900<span></span>
</td>
<td class="nump">13,950<span></span>
</td>
</tr>
<tr class="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 );">Exercise of stock options (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">14,780<span></span>
</td>
<td class="nump">30,210<span></span>
</td>
<td class="nump">31,300<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=alg_NonQualifiedOptionsMember', window );">Non Qualified Options</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock option expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.0<span></span>
</td>
<td class="nump">$ 0.0<span></span>
</td>
<td class="nump">$ 0.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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Total unrecognized compensation cost related to non-vested share-based compensation arrangements</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Granted (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="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_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercise of stock options (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,000<span></span>
</td>
<td class="nump">1,000<span></span>
</td>
<td class="nump">2,300<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromStockOptionsExercised', window );">Proceeds from stock options exercised</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.1<span></span>
</td>
<td class="nump">$ 0.1<span></span>
</td>
<td class="nump">$ 0.1<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted Stock Units (RSUs)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock option expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4.9<span></span>
</td>
<td class="nump">$ 5.4<span></span>
</td>
<td class="nump">$ 3.7<span></span>
</td>
</tr>
<tr class="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 );">Total unrecognized compensation cost related to non-vested share-based compensation arrangements</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 7.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms', window );">Weighted average remaining contractual life (years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year 4 months 28 days<span></span>
</td>
<td class="text">1 year 7 months 9 days<span></span>
</td>
<td class="text">1 year 11 months 12 days<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 (RSUs) | Granted after 2020</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="ro">
<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 );">Award vesting period (years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted Stock Units (RSUs) | Year One after Grant Date</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="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 );">Award vesting period (years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember', window );">Restricted Stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Annual vesting percentage of award</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">50.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 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>
</tr>
<tr class="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Annual vesting percentage of award</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">50.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1', window );">Performance period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod', window );">Option term (years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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=alg_IncentiveStockOption2015PlanMember', window );">2015 ISO Plan | Qualified Stock Options</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="ro">
<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 );">Shares of common stock reserved for options to be issued (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">400,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_PlanNameAxis=alg_IncentiveStockOption2015PlanMember', window );">2015 ISO Plan | Qualified Stock Options | Year One after Grant Date</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="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 );">Award vesting period (years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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=alg_IncentiveStockOption2015PlanMember', window );">2015 ISO Plan | Qualified Stock Options | Year One after Grant Date | 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>
</tr>
<tr class="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Annual vesting percentage of award</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20.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_PlanNameAxis=alg_IncentiveStockOption2015PlanMember', window );">2015 ISO Plan | Qualified Stock Options | Year Two after Grant Date</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Annual vesting percentage of award</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20.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_PlanNameAxis=alg_IncentiveStockOption2015PlanMember', window );">2015 ISO Plan | Qualified Stock Options | Year Three after Grant Date</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Annual vesting percentage of award</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20.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_PlanNameAxis=alg_IncentiveStockOption2015PlanMember', window );">2015 ISO Plan | Qualified Stock Options | Year Four after Grant Date</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Annual vesting percentage of award</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20.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_PlanNameAxis=alg_IncentiveStockOption2015PlanMember', window );">2015 ISO Plan | Qualified Stock Options | Year Five after Grant Date</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Annual vesting percentage of award</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20.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_PlanNameAxis=alg_TwoZeroZeroNineEquityIncentivePlanMember', window );">2009 Equity Incentive Plan | Non Qualified Options</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="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 );">Shares of common stock reserved for options to be issued (in shares)</a></td>
<td class="nump">500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=alg_TwoZeroZeroNineEquityIncentivePlanMember', window );">2009 Equity Incentive Plan | Non Qualified Options | Year One after Grant Date</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="ro">
<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 );">Award vesting period (years)</a></td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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=alg_TwoZeroZeroNineEquityIncentivePlanMember', window );">2009 Equity Incentive Plan | Non Qualified Options | Year One after Grant Date | 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>
</tr>
<tr class="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Annual vesting percentage of award</a></td>
<td class="nump">20.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=alg_TwoZeroZeroNineEquityIncentivePlanMember', window );">2009 Equity Incentive Plan | Non Qualified Options | Year Two after Grant Date</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Annual vesting percentage of award</a></td>
<td class="nump">20.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=alg_TwoZeroZeroNineEquityIncentivePlanMember', window );">2009 Equity Incentive Plan | Non Qualified Options | Year Three after Grant Date</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Annual vesting percentage of award</a></td>
<td class="nump">20.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=alg_TwoZeroZeroNineEquityIncentivePlanMember', window );">2009 Equity Incentive Plan | Non Qualified Options | Year Four after Grant Date</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Annual vesting percentage of award</a></td>
<td class="nump">20.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=alg_TwoZeroZeroNineEquityIncentivePlanMember', window );">2009 Equity Incentive Plan | Non Qualified Options | Year Five after Grant Date</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Annual vesting percentage of award</a></td>
<td class="nump">20.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllocatedShareBasedCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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_AllocatedShareBasedCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cost not yet recognized for nonvested award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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_ProceedsFromStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow from exercise of option 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 10<br> -Section 50<br> -Paragraph 2A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=SL79508275-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI 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_ProceedsFromStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Estimated period over which an employee is required to provide service in exchange for the equity-based payment award, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equity-based awards excluding options, 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms</td>
</tr>
<tr>
<td style="padding-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_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_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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><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)(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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 vesting 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/2009/role/commonPracticeRef<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_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage</td>
</tr>
<tr>
<td style="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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="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)(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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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=alg_QualifiedStockOptionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_QualifiedStockOptionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=alg_NonQualifiedOptionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_NonQualifiedOptionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_AwardDateAxis=alg_AwardDateTwoMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_AwardDateTwoMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheOneMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheOneMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_PlanNameAxis=alg_IncentiveStockOption2015PlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_IncentiveStockOption2015PlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheTwoMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheTwoMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheThreeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheThreeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_VestingAxis=alg_SharebasedCompensationAwardTrancheFourMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_VestingAxis=alg_SharebasedCompensationAwardTrancheFourMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_VestingAxis=alg_SharebasedCompensationAwardTrancheFiveMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_VestingAxis=alg_SharebasedCompensationAwardTrancheFiveMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=alg_TwoZeroZeroNineEquityIncentivePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_TwoZeroZeroNineEquityIncentivePlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="idm140629856525280">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock Options - Schedule of Qualified Stock Option Activity (Details) - Qualified Stock Options - $ / 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="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>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 );">Options outstanding at beginning of year (in shares)</a></td>
<td class="nump">87,610<span></span>
</td>
<td class="nump">100,920<span></span>
</td>
<td class="nump">119,720<span></span>
</td>
</tr>
<tr class="re">
<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">17,625<span></span>
</td>
<td class="nump">18,900<span></span>
</td>
<td class="nump">13,950<span></span>
</td>
</tr>
<tr class="ro">
<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="num">(14,780)<span></span>
</td>
<td class="num">(30,210)<span></span>
</td>
<td class="num">(31,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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod', window );">Canceled (in shares)</a></td>
<td class="num">(5,808)<span></span>
</td>
<td class="num">(2,000)<span></span>
</td>
<td class="num">(1,450)<span></span>
</td>
</tr>
<tr class="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 at end of year (in shares)</a></td>
<td class="nump">84,647<span></span>
</td>
<td class="nump">87,610<span></span>
</td>
<td class="nump">100,920<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward', window );"><strong>Exercise Price</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding at beginning of year, exercise price (in dollars per share)</a></td>
<td class="nump">$ 91.24<span></span>
</td>
<td class="nump">$ 68.58<span></span>
</td>
<td class="nump">$ 57.65<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Granted, exercise price (in dollars per share)</a></td>
<td class="nump">137.93<span></span>
</td>
<td class="nump">156.38<span></span>
</td>
<td class="nump">114.53<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Exercised, exercise price (in dollars per share)</a></td>
<td class="nump">50.79<span></span>
</td>
<td class="nump">53.68<span></span>
</td>
<td class="nump">45.94<span></span>
</td>
</tr>
<tr class="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 );">Canceled, exercise price (in dollars per share)</a></td>
<td class="nump">114.48<span></span>
</td>
<td class="nump">130.92<span></span>
</td>
<td class="nump">96.97<span></span>
</td>
</tr>
<tr class="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 );">Outstanding at end of year, exercise price (in dollars per share)</a></td>
<td class="nump">$ 106.43<span></span>
</td>
<td class="nump">$ 91.24<span></span>
</td>
<td class="nump">$ 68.58<span></span>
</td>
</tr>
<tr class="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 at end of year (in shares)</a></td>
<td class="nump">43,412<span></span>
</td>
<td class="nump">49,360<span></span>
</td>
<td class="nump">67,700<span></span>
</td>
</tr>
<tr class="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 );">Exercisable at end of year, exercise price (in dollars per share)</a></td>
<td class="nump">$ 78.50<span></span>
</td>
<td class="nump">$ 61.21<span></span>
</td>
<td class="nump">$ 52.60<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Options available for grant at end of year (in shares)</a></td>
<td class="nump">286,033<span></span>
</td>
<td class="nump">297,850<span></span>
</td>
<td class="nump">314,750<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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_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_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_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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 per share amount at which grantees can acquire shares of common stock by exercise of 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)(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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_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_AwardTypeAxis=alg_QualifiedStockOptionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_QualifiedStockOptionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="idm140629855181808">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock Options - Schedule of Qualified Stock Options Outstanding and Exercisable (Details) - Qualified Stock Options - $ / shares<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<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>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 Compensation, Shares Authorized under Stock Option Plans, 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="rou">
<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 (in shares)</a></td>
<td class="nump">84,647<span></span>
</td>
<td class="nump">87,610<span></span>
</td>
<td class="nump">100,920<span></span>
</td>
<td class="nump">119,720<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Options exercisable (in shares)</a></td>
<td class="nump">43,412<span></span>
</td>
<td class="nump">49,360<span></span>
</td>
<td class="nump">67,700<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=alg_QualifiedStockOptionsMember', window );">$42.70 - $83.99</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 Compensation, Shares Authorized under Stock Option Plans, 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit', window );">Range of exercise price, lower range limit (in dollars per share)</a></td>
<td class="nump">$ 42.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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit', window );">Range of exercise price, upper range limit (in dollars per share)</a></td>
<td class="nump">$ 83.99<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions', window );">Options outstanding, exercise price range (in shares)</a></td>
<td class="nump">27,725<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2', window );">Options outstanding, remaining contractual life</a></td>
<td class="text">2 years 3 months 25 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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1', window );">Options outstanding, exercise price (in dollars per share)</a></td>
<td class="nump">$ 57.89<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions', window );">Options exercisable, exercise price range (in shares)</a></td>
<td class="nump">27,725<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1', window );">Options exercisable, exercise price (in dollars per share)</a></td>
<td class="nump">$ 57.89<span></span>
</td>
<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=alg_QualifiedStockOptionsMember', window );">$92.50 - $138.75</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 Compensation, Shares Authorized under Stock Option Plans, 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 );">Range of exercise price, lower range limit (in dollars per share)</a></td>
<td class="nump">92.5<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit', window );">Range of exercise price, upper range limit (in dollars per share)</a></td>
<td class="nump">$ 138.75<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions', window );">Options outstanding, exercise price range (in shares)</a></td>
<td class="nump">40,422<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2', window );">Options outstanding, remaining contractual life</a></td>
<td class="text">7 years 6 months 25 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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1', window );">Options outstanding, exercise price (in dollars per share)</a></td>
<td class="nump">$ 119.34<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions', window );">Options exercisable, exercise price range (in shares)</a></td>
<td class="nump">12,387<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1', window );">Options exercisable, exercise price (in dollars per share)</a></td>
<td class="nump">$ 103.89<span></span>
</td>
<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=alg_QualifiedStockOptionsMember', window );">$156.38 - $234.57</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 Compensation, Shares Authorized under Stock Option Plans, 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit', window );">Range of exercise price, lower range limit (in dollars per share)</a></td>
<td class="nump">156.38<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit', window );">Range of exercise price, upper range limit (in dollars per share)</a></td>
<td class="nump">$ 234.57<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions', window );">Options outstanding, exercise price range (in shares)</a></td>
<td class="nump">16,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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2', window );">Options outstanding, remaining contractual life</a></td>
<td class="text">8 years 1 month 28 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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1', window );">Options outstanding, exercise price (in dollars per share)</a></td>
<td class="nump">$ 156.38<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions', window );">Options exercisable, exercise price range (in shares)</a></td>
<td class="nump">3,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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1', window );">Options exercisable, exercise price (in dollars per share)</a></td>
<td class="nump">$ 156.38<span></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_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_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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 reserved for issuance pertaining to the outstanding exercisable stock options as of the balance sheet date in the customized range of exercise prices for which the market and performance vesting condition has been satisfied.</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)(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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 reserved for issuance pertaining to the outstanding stock options as of the balance sheet date for all option plans in the customized range of exercise prices.</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)(i)-(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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 ceiling 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit</td>
</tr>
<tr>
<td style="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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 exercise price as of the balance sheet date for those equity-based payment arrangements exercisable and 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> -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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1</td>
</tr>
<tr>
<td style="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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 could acquire the underlying shares with respect to all outstanding stock options which are in the customized range of exercise prices.</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)(i)-(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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1</td>
</tr>
<tr>
<td style="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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of outstanding stock options, 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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=alg_QualifiedStockOptionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_QualifiedStockOptionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=alg_QualifiedStockOptionsExercisePriceRangeOneMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_QualifiedStockOptionsExercisePriceRangeOneMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=alg_QualifiedStockOptionsExercisePriceRangeTwoMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_QualifiedStockOptionsExercisePriceRangeTwoMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=alg_QualifiedStockOptionsExercisePriceRangeThreeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_QualifiedStockOptionsExercisePriceRangeThreeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="idm140629861174128">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Stock Options - Equity Incentive Plan (Details) - shares<br></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="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=alg_NonQualifiedOptionsMember', window );">Non Qualified Options</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Options available for grant at end of year (in shares)</a></td>
<td class="nump">381,531<span></span>
</td>
<td class="nump">423,969<span></span>
</td>
<td class="nump">455,549<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_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_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_AwardTypeAxis=alg_NonQualifiedOptionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_NonQualifiedOptionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="idm140629861222320">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock Options - Schedule of Non-Qualified Stock Options Activity (Details) - Non Qualified Options - $ / 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="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>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 );">Options outstanding at beginning of year (in shares)</a></td>
<td class="nump">2,000<span></span>
</td>
<td class="nump">3,000<span></span>
</td>
<td class="nump">5,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_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>
</tr>
<tr class="ro">
<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="num">(1,000)<span></span>
</td>
<td class="num">(1,000)<span></span>
</td>
<td class="num">(2,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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod', window );">Canceled (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>
</tr>
<tr class="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 at end of year (in shares)</a></td>
<td class="nump">1,000<span></span>
</td>
<td class="nump">2,000<span></span>
</td>
<td class="nump">3,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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward', window );"><strong>Exercise Price</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding at beginning of year, exercise price (in dollars per share)</a></td>
<td class="nump">$ 53.51<span></span>
</td>
<td class="nump">$ 53.51<span></span>
</td>
<td class="nump">$ 46.87<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Granted, exercise price (in dollars per share)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="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, exercise price (in dollars per share)</a></td>
<td class="nump">53.51<span></span>
</td>
<td class="nump">53.51<span></span>
</td>
<td class="nump">38.22<span></span>
</td>
</tr>
<tr class="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 );">Canceled, exercise price (in dollars per share)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="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 );">Outstanding at end of year, exercise price (in dollars per share)</a></td>
<td class="nump">$ 53.51<span></span>
</td>
<td class="nump">$ 53.51<span></span>
</td>
<td class="nump">$ 53.51<span></span>
</td>
</tr>
<tr class="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 at end of year (in shares)</a></td>
<td class="nump">1,000<span></span>
</td>
<td class="nump">2,000<span></span>
</td>
<td class="nump">3,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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice', window );">Exercisable at end of year, exercise price (in dollars per share)</a></td>
<td class="nump">$ 53.51<span></span>
</td>
<td class="nump">$ 53.51<span></span>
</td>
<td class="nump">$ 53.51<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_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_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_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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 per share amount at which grantees can acquire shares of common stock by exercise of 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)(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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_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_AwardTypeAxis=alg_NonQualifiedOptionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_NonQualifiedOptionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="idm140629855507152">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock Options - Schedule of Non-Qualified Stock Options Outstanding and Exercisable (Details) - Non Qualified Options - $ / shares<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<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>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 Compensation, Shares Authorized under Stock Option Plans, 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="rou">
<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 (in shares)</a></td>
<td class="nump">1,000<span></span>
</td>
<td class="nump">2,000<span></span>
</td>
<td class="nump">3,000<span></span>
</td>
<td class="nump">5,300<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Options exercisable (in shares)</a></td>
<td class="nump">1,000<span></span>
</td>
<td class="nump">2,000<span></span>
</td>
<td class="nump">3,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_AwardTypeAxis=alg_NonQualifiedOptionsMember', window );">$42.70 - $83.99</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 Compensation, Shares Authorized under Stock Option Plans, 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit', window );">Range of exercise price, lower range limit (in dollars per share)</a></td>
<td class="nump">$ 42.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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit', window );">Range of exercise price, upper range limit (in dollars per share)</a></td>
<td class="nump">$ 83.99<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions', window );">Options outstanding, exercise price range (in shares)</a></td>
<td class="nump">1,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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2', window );">Options outstanding, remaining contractual life</a></td>
<td class="text">1 year 4 months 9 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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1', window );">Options outstanding, exercise price (in dollars per share)</a></td>
<td class="nump">$ 53.51<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions', window );">Options exercisable, exercise price range (in shares)</a></td>
<td class="nump">1,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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1', window );">Options exercisable, exercise price (in dollars per share)</a></td>
<td class="nump">$ 53.51<span></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_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_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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 reserved for issuance pertaining to the outstanding exercisable stock options as of the balance sheet date in the customized range of exercise prices for which the market and performance vesting condition has been satisfied.</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)(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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 reserved for issuance pertaining to the outstanding stock options as of the balance sheet date for all option plans in the customized range of exercise prices.</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)(i)-(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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 ceiling 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit</td>
</tr>
<tr>
<td style="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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 exercise price as of the balance sheet date for those equity-based payment arrangements exercisable and 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> -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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1</td>
</tr>
<tr>
<td style="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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 could acquire the underlying shares with respect to all outstanding stock options which are in the customized range of exercise prices.</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)(i)-(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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1</td>
</tr>
<tr>
<td style="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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of outstanding stock options, 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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=alg_NonQualifiedOptionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_NonQualifiedOptionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=alg_NonQualifiedStockOptionsExercisePriceRangeThreeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_NonQualifiedStockOptionsExercisePriceRangeThreeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="idm140629861216688">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock Options - Schedule of Restricted Stock Award Activity (Details) - Restricted Stock - $ / 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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Shares</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Outstanding at beginning of year (in shares)</a></td>
<td class="nump">80,616<span></span>
</td>
<td class="nump">91,043<span></span>
</td>
<td class="nump">78,705<span></span>
</td>
</tr>
<tr class="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">48,396<span></span>
</td>
<td class="nump">35,224<span></span>
</td>
<td class="nump">44,307<span></span>
</td>
</tr>
<tr class="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 );">Exercised (in shares)</a></td>
<td class="num">(29,922)<span></span>
</td>
<td class="num">(45,651)<span></span>
</td>
<td class="num">(31,594)<span></span>
</td>
</tr>
<tr class="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 );">Canceled (in shares)</a></td>
<td class="num">(1,460)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Outstanding at end of year (in shares)</a></td>
<td class="nump">97,630<span></span>
</td>
<td class="nump">80,616<span></span>
</td>
<td class="nump">91,043<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward', window );"><strong>Grant-Date Fair Value</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue', window );">Outstanding at beginning of year (in dollars per share)</a></td>
<td class="nump">$ 129.53<span></span>
</td>
<td class="nump">$ 104.77<span></span>
</td>
<td class="nump">$ 94.34<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue', window );">Granted (in dollars per share)</a></td>
<td class="nump">133.70<span></span>
</td>
<td class="nump">157.00<span></span>
</td>
<td class="nump">111.95<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue', window );">Exercised (in dollars per share)</a></td>
<td class="nump">122.19<span></span>
</td>
<td class="nump">101.36<span></span>
</td>
<td class="nump">88.90<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue', window );">Canceled (in dollars per share)</a></td>
<td class="nump">143.82<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">100.34<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue', window );">Outstanding at end of year (in dollars per share)</a></td>
<td class="nump">$ 133.67<span></span>
</td>
<td class="nump">$ 129.53<span></span>
</td>
<td class="nump">$ 104.77<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 intrinsic value of award forfeited 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)(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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 intrinsic value of award granted 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)(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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 intrinsic 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward</td>
</tr>
<tr>
<td style="padding-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_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_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 intrinsic value of award vested 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)(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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue</td>
</tr>
<tr>
<td style="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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>95
<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="idm140629854495024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Retirement Benefit Plans - Additional Information (Details)<br> $ in Millions</strong></div></th>
<th class="th" colspan="4">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2023 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($) </div>
<div>employee </div>
<div>plan </div>
<div>subsidiary</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>
<th class="th">
<div>Feb. 03, 2006 </div>
<div>plan</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>
<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_alg_DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans', window );">Number of non-contributory defined benefit pension plans | 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="nump">2<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_alg_DefinedContributionPlanNumberOfPlans', window );">Number of defined contribution plans | plan</a></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>
<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_StatementScenarioAxis=srt_ScenarioForecastMember', window );">Estimated</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax', window );">Estimate of amount of unrecognized actuarial expense</a></td>
<td class="nump">$ 1.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>
</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_SupplementalEmployeeRetirementPlanDefinedBenefitMember', window );">Supplemental Employee Retirement 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>
</tr>
<tr class="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>
<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_alg_DeferredCompensationArrangementRequisiteServicePeriod', window );">SERP credited service period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_alg_PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption', window );">Percentage of final 3 year average salary in which retirement benefit is based (percentage)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_alg_DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit', window );">Number of final years in which the Retirement Benefit is based</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>
</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_alg_DeferredCompensationArrangementWithIndividualRetirementAge', window );">Retirement age</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">65 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="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alg_DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl', window );">Period of time that vested retirement benefit will be paid after death or change in control</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">90 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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alg_DeferredCompensationArrangementMaximumContractualTerm', window );">Years of monthly installments associated with SERP disability</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>
<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_SupplementalEmployeeRetirementPlanDefinedBenefitMember', window );">Supplemental Employee Retirement Plan | Estimated</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax', window );">Estimate of amount of unrecognized actuarial expense</a></td>
<td class="nump">$ 0.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>
</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_SupplementalEmployeeRetirementPlanDefinedBenefitMember', window );">Supplemental Employee Retirement Plan | 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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
<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_alg_DefinedBenefitPlanRetirementBenefitPercentage', window );">Current retirement benefit percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_SupplementalEmployeeRetirementPlanDefinedBenefitMember', window );">Supplemental Employee Retirement Plan | 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>
</tr>
<tr class="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>
<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_alg_DefinedBenefitPlanRetirementBenefitPercentage', window );">Current retirement benefit percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_RetirementPlanNameAxis=alg_GradallCompanyEmployeesRetirementPlanMember', window );">Employees&#8217; Retirement 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>
</tr>
<tr class="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>
<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_alg_FormerEmployeesCoveredByPensionPlan', window );">Former employees | employee</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">245<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_alg_CurrentEmployeesCoveredByPensionPlan', window );">Current employees | employee</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">51<span></span>
</td>
<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_RetirementPlanNameAxis=alg_InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember', window );">IAM 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>
</tr>
<tr class="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount', window );">Annual contribution amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.5<span></span>
</td>
<td class="nump">$ 0.5<span></span>
</td>
<td class="nump">$ 0.4<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_RetirementPlanSponsorLocationAxis=country_US', window );">United States</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount', window );">Annual contribution amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4.2<span></span>
</td>
<td class="nump">3.9<span></span>
</td>
<td class="nump">3.5<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_RetirementPlanSponsorLocationAxis=us-gaap_ForeignPlanMember', window );">Foreign 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>
</tr>
<tr class="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount', window );">Annual contribution amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.9<span></span>
</td>
<td class="nump">$ 0.9<span></span>
</td>
<td class="nump">$ 0.9<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_alg_DefinedContributionPlanNumberOfSubsidiaries', window );">Number of international subsidiaries that participate in defined contribution and savings plan | subsidiary</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">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>
</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_RetirementPlanSponsorLocationAxis=us-gaap_ForeignPlanMember', window );">Foreign Plan | 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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent', window );">Employer contribution percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_RetirementPlanSponsorLocationAxis=us-gaap_ForeignPlanMember', window );">Foreign Plan | 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>
</tr>
<tr class="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent', window );">Employer contribution percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_alg_CurrentEmployeesCoveredByPensionPlan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Current Employees Covered By Pension 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;">alg_CurrentEmployeesCoveredByPensionPlan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_alg_DeferredCompensationArrangementMaximumContractualTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Compensation Arrangement Maximum Contractual Term</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;">alg_DeferredCompensationArrangementMaximumContractualTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_alg_DeferredCompensationArrangementRequisiteServicePeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Compensation Arrangement Requisite Service 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;">alg_DeferredCompensationArrangementRequisiteServicePeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_alg_DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Compensation Arrangement With Individual, Duration Limit Vested Retirement Benefit Will Be Paid After Death Or Change In Control</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;">alg_DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_alg_DeferredCompensationArrangementWithIndividualRetirementAge">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Compensation Arrangement With Individual, Retirement Age</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;">alg_DeferredCompensationArrangementWithIndividualRetirementAge</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_alg_DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Compensation Arrangement with Individual, Term Of Final Average Salary Used To Determine Retirement Benefit</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;">alg_DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_alg_DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, Number Of Defined Benefit Pension 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;">alg_DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_alg_DefinedBenefitPlanRetirementBenefitPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, Retirement Benefit Percentage</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;">alg_DefinedBenefitPlanRetirementBenefitPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_alg_DefinedContributionPlanNumberOfPlans">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Contribution 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;">alg_DefinedContributionPlanNumberOfPlans</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_alg_DefinedContributionPlanNumberOfSubsidiaries">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Contribution Plan, Number Of Subsidiaries</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;">alg_DefinedContributionPlanNumberOfSubsidiaries</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_alg_FormerEmployeesCoveredByPensionPlan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Former Employees Covered By Pension 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;">alg_FormerEmployeesCoveredByPensionPlan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_alg_PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Final Three Years Average Salary Retirement Benefit Assumption</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;">alg_PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alg_</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_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_DefinedContributionPlanEmployerDiscretionaryContributionAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 discretionary contributions made by an employer to a defined contribution 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;">us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedContributionPlanEmployerMatchingContributionPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 employees' gross pay for which the employer contributes a matching contribution to a defined contribution 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;">us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent</td>
</tr>
<tr>
<td style="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_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 reclassification adjustment from accumulated other comprehensive income (loss) for 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://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 (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<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 15<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e689-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_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_StatementScenarioAxis=srt_ScenarioForecastMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementScenarioAxis=srt_ScenarioForecastMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_SupplementalEmployeeRetirementPlanDefinedBenefitMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SupplementalEmployeeRetirementPlanDefinedBenefitMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_RetirementPlanNameAxis=alg_GradallCompanyEmployeesRetirementPlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RetirementPlanNameAxis=alg_GradallCompanyEmployeesRetirementPlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_RetirementPlanNameAxis=alg_InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RetirementPlanNameAxis=alg_InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_RetirementPlanSponsorLocationAxis=country_US">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetirementPlanSponsorLocationAxis=country_US</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetirementPlanSponsorLocationAxis=us-gaap_ForeignPlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RetirementPlanSponsorLocationAxis=us-gaap_ForeignPlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="idm140629859929200">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Retirement Benefit Plans - Schedule of Defined Benefit Plans Disclosures (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_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward', window );"><strong>Change in fair value of plan assets&#160;&#160;</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_DefinedBenefitPlanFairValueOfPlanAssets', window );">Fair value of plan assets at beginning of year</a></td>
<td class="nump">$ 23,671<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Fair value of plan assets at end of year</a></td>
<td class="nump">18,269<span></span>
</td>
<td class="nump">$ 23,671<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 );">Pension Plan</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_DefinedBenefitPlanChangeInBenefitObligationRollForward', window );"><strong>Change in projected benefit obligation&#160;</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_DefinedBenefitPlanBenefitObligation', window );">Benefit obligation at beginning of year</a></td>
<td class="nump">22,564<span></span>
</td>
<td class="nump">24,100<span></span>
</td>
</tr>
<tr class="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">4<span></span>
</td>
<td class="nump">5<span></span>
</td>
</tr>
<tr class="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">604<span></span>
</td>
<td class="nump">553<span></span>
</td>
</tr>
<tr class="re">
<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 );">Liability actuarial (gain) loss</a></td>
<td class="num">(4,761)<span></span>
</td>
<td class="num">(994)<span></span>
</td>
</tr>
<tr class="ro">
<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">(1,140)<span></span>
</td>
<td class="num">(1,100)<span></span>
</td>
</tr>
<tr class="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 );">Benefit obligation at end of year</a></td>
<td class="nump">17,271<span></span>
</td>
<td class="nump">22,564<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward', window );"><strong>Change in fair value of plan assets&#160;&#160;</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_DefinedBenefitPlanFairValueOfPlanAssets', window );">Fair value of plan assets at beginning of year</a></td>
<td class="nump">23,671<span></span>
</td>
<td class="nump">22,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_DefinedBenefitPlanActualReturnOnPlanAssets', window );">Return on plan assets</a></td>
<td class="num">(4,262)<span></span>
</td>
<td class="nump">2,401<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanContributionsByEmployer', window );">Employer contributions</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_DefinedBenefitPlanPlanAssetsBenefitsPaid', window );">Benefits paid</a></td>
<td class="num">(1,140)<span></span>
</td>
<td class="num">(1,100)<span></span>
</td>
</tr>
<tr class="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 at end of year</a></td>
<td class="nump">18,269<span></span>
</td>
<td class="nump">23,671<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 );">Funded status</a></td>
<td class="nump">998<span></span>
</td>
<td class="nump">1,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_RetirementPlanTypeAxis=us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember', window );">Supplemental Employee Retirement Plan</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_DefinedBenefitPlanChangeInBenefitObligationRollForward', window );"><strong>Change in projected benefit obligation&#160;</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_DefinedBenefitPlanBenefitObligation', window );">Benefit obligation at beginning of year</a></td>
<td class="nump">11,326<span></span>
</td>
<td class="nump">10,160<span></span>
</td>
</tr>
<tr class="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">284<span></span>
</td>
<td class="nump">369<span></span>
</td>
</tr>
<tr class="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">278<span></span>
</td>
<td class="nump">205<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanActuarialGainLoss', window );">Liability actuarial (gain) loss</a></td>
<td class="num">(2,023)<span></span>
</td>
<td class="nump">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_DefinedBenefitPlanBenefitObligationBenefitsPaid', window );">Benefits paid</a></td>
<td class="num">(313)<span></span>
</td>
<td class="num">(167)<span></span>
</td>
</tr>
<tr class="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 );">Benefit obligation at end of year</a></td>
<td class="nump">$ 9,552<span></span>
</td>
<td class="nump">$ 11,326<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_DefinedBenefitPlanActualReturnOnPlanAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 plan assets of defined benefit plan from actual return (loss) determined by change in fair value of plan assets adjusted for contributions, benefit payments, and other expenses.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -URI 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanActuarialGainLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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_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_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward</td>
</tr>
<tr>
<td style="padding-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_DefinedBenefitPlanContributionsByEmployer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 contribution received by defined benefit plan from employer which increases plan assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -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/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 6<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e2709-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 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 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><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 (d)(iv)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(3)<br> -URI 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_DefinedBenefitPlanContributionsByEmployer</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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_DefinedBenefitPlanPlanAssetsBenefitsPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 under defined benefit plan which decreases plan assets. For pension plan, payment includes, but is not limited to, pension benefits and death benefits. For other postretirement plan, payment includes, but is not limited to, prescription drug benefits, health care benefits, life insurance benefits, and legal, educational and advisory services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(5)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<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_DefinedBenefitPlanPlanAssetsBenefitsPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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_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_SupplementalEmployeeRetirementPlanDefinedBenefitMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SupplementalEmployeeRetirementPlanDefinedBenefitMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="idm140629860705584">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Retirement Benefit Plans - Schedule of Assumptions Used (Details)<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="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 );">Pension Plan</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_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>
</tr>
<tr class="re">
<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">5.10%<span></span>
</td>
<td class="nump">2.75%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate', window );">Discount rate</a></td>
<td class="nump">2.75%<span></span>
</td>
<td class="nump">2.35%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets', window );">Long-term rate of return on plan assets</a></td>
<td class="nump">6.00%<span></span>
</td>
<td class="nump">7.25%<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_SupplementalEmployeeRetirementPlanDefinedBenefitMember', window );">Supplemental Employee Retirement Plan</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_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>
</tr>
<tr class="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">5.05%<span></span>
</td>
<td class="nump">2.50%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease', window );">Composite rate of compensation increase</a></td>
<td class="nump">3.00%<span></span>
</td>
<td class="nump">3.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_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate', window );">Discount rate</a></td>
<td class="nump">2.50%<span></span>
</td>
<td class="nump">2.05%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease', window );">Composite rate of compensation increase</a></td>
<td class="nump">3.00%<span></span>
</td>
<td class="nump">3.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 increase of compensation, used to determine benefit obligation of defined benefit plan. Plan includes, but is not limited to, pay-related 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)(2)<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_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease</td>
</tr>
<tr>
<td style="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_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 net periodic benefit cost 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_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of return on plan assets, reflecting average rate of earnings expected on existing plan assets and expected contributions, used to determine net periodic benefit cost of defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><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)(3)<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 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e2919-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_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of compensation increase used to determine net periodic benefit cost of defined benefit plan. Plan includes, but is not limited to, pay-related 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)(2)<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_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease</td>
</tr>
<tr>
<td style="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_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_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_SupplementalEmployeeRetirementPlanDefinedBenefitMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SupplementalEmployeeRetirementPlanDefinedBenefitMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>98
<FILENAME>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="idm140629855269232">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Retirement Benefit Plans - Schedule of Net Periodic Benefit Cost (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="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 );">Pension Plan</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_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>
</tr>
<tr class="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">$ 4<span></span>
</td>
<td class="nump">$ 5<span></span>
</td>
</tr>
<tr class="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">604<span></span>
</td>
<td class="nump">553<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets', window );">Expected return on plan assets</a></td>
<td class="num">(1,384)<span></span>
</td>
<td class="num">(1,581)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses', window );">Amortization of net (gain)/loss</a></td>
<td class="nump">182<span></span>
</td>
<td class="nump">542<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 benefit cost</a></td>
<td class="num">(594)<span></span>
</td>
<td class="num">(481)<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_SupplementalEmployeeRetirementPlanDefinedBenefitMember', window );">Supplemental Employee Retirement Plan</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_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>
</tr>
<tr class="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">284<span></span>
</td>
<td class="nump">369<span></span>
</td>
</tr>
<tr class="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">278<span></span>
</td>
<td class="nump">205<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit', window );">Amortization of prior service cost</a></td>
<td class="nump">420<span></span>
</td>
<td class="nump">413<span></span>
</td>
</tr>
<tr class="re">
<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 );">Amortization of net (gain)/loss</a></td>
<td class="nump">440<span></span>
</td>
<td class="nump">318<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_DefinedBenefitPlanNetPeriodicBenefitCost', window );">Net periodic benefit cost</a></td>
<td class="nump">$ 1,422<span></span>
</td>
<td class="nump">$ 1,305<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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_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_DefinedBenefitPlanExpectedReturnOnPlanAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 expected return (loss) recognized in net periodic benefit (cost) credit, calculated based on expected long-term rate of return and market-related value of plan assets of defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="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/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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123453770&amp;loc=SL108413299-114919<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)(3)<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_DefinedBenefitPlanExpectedReturnOnPlanAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanInterestCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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_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_SupplementalEmployeeRetirementPlanDefinedBenefitMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SupplementalEmployeeRetirementPlanDefinedBenefitMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="idm140629855305376">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Retirement Benefit Plans - Weighted Average Asset Allocations (Details) - Pension Plan<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_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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations', window );">Asset allocations as a percentage of plan assets</a></td>
<td class="nump">100.00%<span></span>
</td>
<td class="nump">100.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_RetirementPlanTypeAxis=us-gaap_PensionPlansDefinedBenefitMember', window );">Equity securities</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_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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations', window );">Asset allocations as a percentage of plan assets</a></td>
<td class="nump">36.00%<span></span>
</td>
<td class="nump">36.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_RetirementPlanTypeAxis=us-gaap_PensionPlansDefinedBenefitMember', window );">Debt securities</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_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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations', window );">Asset allocations as a percentage of plan assets</a></td>
<td class="nump">62.00%<span></span>
</td>
<td class="nump">62.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_RetirementPlanTypeAxis=us-gaap_PensionPlansDefinedBenefitMember', window );">Short-term investments</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_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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations', window );">Asset allocations as a percentage of plan assets</a></td>
<td class="nump">2.00%<span></span>
</td>
<td class="nump">2.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_RetirementPlanTypeAxis=us-gaap_PensionPlansDefinedBenefitMember', window );">Other</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_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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations', window );">Asset allocations as a percentage of plan assets</a></td>
<td class="nump">0.00%<span></span>
</td>
<td class="nump">0.00%<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_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_DefinedBenefitPlanWeightedAverageAssetAllocations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 actual investment allocation to total plan assets. Includes, but is not limited to, percentage on weighted-average basis if more than one plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(i)<br> -URI 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_DefinedBenefitPlanWeightedAverageAssetAllocations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_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_DefinedBenefitPlanByPlanAssetCategoriesAxis=us-gaap_DefinedBenefitPlanEquitySecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DefinedBenefitPlanByPlanAssetCategoriesAxis=us-gaap_DefinedBenefitPlanEquitySecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=us-gaap_DefinedBenefitPlanDebtSecurityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DefinedBenefitPlanByPlanAssetCategoriesAxis=us-gaap_DefinedBenefitPlanDebtSecurityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=us-gaap_ShortTermInvestmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DefinedBenefitPlanByPlanAssetCategoriesAxis=us-gaap_ShortTermInvestmentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=us-gaap_OtherInvestmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DefinedBenefitPlanByPlanAssetCategoriesAxis=us-gaap_OtherInvestmentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="idm140629853263136">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Retirement Benefit Plans - Schedule of Fair Value of Plan 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_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>
</tr>
<tr class="ro">
<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">$ 18,269<span></span>
</td>
<td class="nump">$ 23,671<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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Quoted Prices in Active Markets for Identical Assets (Level 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_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>
</tr>
<tr class="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">1,687<span></span>
</td>
<td class="nump">2,074<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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">&#160; Significant Other Observable Inputs (Level 2)</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_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>
</tr>
<tr class="ro">
<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">16,582<span></span>
</td>
<td class="nump">21,597<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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">&#160; Significant Unobservable Inputs (Level 3)</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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_MidCapMutualFundsMember', window );">Mid Cap</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_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>
</tr>
<tr class="ro">
<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">512<span></span>
</td>
<td class="nump">637<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_MidCapMutualFundsMember', window );">Mid Cap | Quoted Prices in Active Markets for Identical Assets (Level 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_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>
</tr>
<tr class="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">512<span></span>
</td>
<td class="nump">637<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_MidCapMutualFundsMember', window );">Mid Cap | &#160; Significant Other Observable Inputs (Level 2)</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_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>
</tr>
<tr class="ro">
<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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_MidCapMutualFundsMember', window );">Mid Cap | &#160; Significant Unobservable Inputs (Level 3)</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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_InternationalMutualFundsMember', window );">International</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_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>
</tr>
<tr class="ro">
<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">743<span></span>
</td>
<td class="nump">940<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_InternationalMutualFundsMember', window );">International | Quoted Prices in Active Markets for Identical Assets (Level 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_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>
</tr>
<tr class="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">743<span></span>
</td>
<td class="nump">940<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_InternationalMutualFundsMember', window );">International | &#160; Significant Other Observable Inputs (Level 2)</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_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>
</tr>
<tr class="ro">
<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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_InternationalMutualFundsMember', window );">International | &#160; Significant Unobservable Inputs (Level 3)</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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_LiabilityDrivenSolutionCITIMember', window );">Wells Fargo Liability Driven Solution CIT I</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_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>
</tr>
<tr class="ro">
<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">7,815<span></span>
</td>
<td class="nump">7,782<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_LiabilityDrivenSolutionCITIMember', window );">Wells Fargo Liability Driven Solution CIT I | Quoted Prices in Active Markets for Identical Assets (Level 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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_LiabilityDrivenSolutionCITIMember', window );">Wells Fargo Liability Driven Solution CIT I | &#160; Significant Other Observable Inputs (Level 2)</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_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>
</tr>
<tr class="ro">
<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">7,815<span></span>
</td>
<td class="nump">7,782<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_LiabilityDrivenSolutionCITIMember', window );">Wells Fargo Liability Driven Solution CIT I | &#160; Significant Unobservable Inputs (Level 3)</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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_LiabilityDrivenSolutionCITIIMember', window );">Wells Fargo Liability Driven Solution CIT II</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_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>
</tr>
<tr class="ro">
<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">3,550<span></span>
</td>
<td class="nump">7,026<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_LiabilityDrivenSolutionCITIIMember', window );">Wells Fargo Liability Driven Solution CIT II | Quoted Prices in Active Markets for Identical Assets (Level 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_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>
</tr>
<tr class="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="text"> <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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_LiabilityDrivenSolutionCITIIMember', window );">Wells Fargo Liability Driven Solution CIT II | &#160; Significant Other Observable Inputs (Level 2)</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_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>
</tr>
<tr class="ro">
<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">3,550<span></span>
</td>
<td class="nump">7,026<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_LiabilityDrivenSolutionCITIIMember', window );">Wells Fargo Liability Driven Solution CIT II | &#160; Significant Unobservable Inputs (Level 3)</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_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>
</tr>
<tr class="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="text"> <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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoInternationalEquityIndexFundMember', window );">Wells Fargo BlackRock International Equity</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_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>
</tr>
<tr class="ro">
<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">488<span></span>
</td>
<td class="nump">616<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoInternationalEquityIndexFundMember', window );">Wells Fargo BlackRock International Equity | Quoted Prices in Active Markets for Identical Assets (Level 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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoInternationalEquityIndexFundMember', window );">Wells Fargo BlackRock International Equity | &#160; Significant Other Observable Inputs (Level 2)</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_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>
</tr>
<tr class="ro">
<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">488<span></span>
</td>
<td class="nump">616<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoInternationalEquityIndexFundMember', window );">Wells Fargo BlackRock International Equity | &#160; Significant Unobservable Inputs (Level 3)</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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoCausewayMember', window );">Wells Fargo/Causeway International Value</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_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>
</tr>
<tr class="ro">
<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">464<span></span>
</td>
<td class="nump">586<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoCausewayMember', window );">Wells Fargo/Causeway International Value | Quoted Prices in Active Markets for Identical Assets (Level 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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoCausewayMember', window );">Wells Fargo/Causeway International Value | &#160; Significant Other Observable Inputs (Level 2)</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_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>
</tr>
<tr class="ro">
<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">464<span></span>
</td>
<td class="nump">586<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoCausewayMember', window );">Wells Fargo/Causeway International Value | &#160; Significant Unobservable Inputs (Level 3)</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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoLargeCapGrowthIndexFundMember', window );">Wells Fargo BlackRock Large Cap Growth Index Fund</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_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>
</tr>
<tr class="ro">
<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">724<span></span>
</td>
<td class="nump">950<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoLargeCapGrowthIndexFundMember', window );">Wells Fargo BlackRock Large Cap Growth Index Fund | Quoted Prices in Active Markets for Identical Assets (Level 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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoLargeCapGrowthIndexFundMember', window );">Wells Fargo BlackRock Large Cap Growth Index Fund | &#160; Significant Other Observable Inputs (Level 2)</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_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>
</tr>
<tr class="ro">
<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">724<span></span>
</td>
<td class="nump">950<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoLargeCapGrowthIndexFundMember', window );">Wells Fargo BlackRock Large Cap Growth Index Fund | &#160; Significant Unobservable Inputs (Level 3)</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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoLargeCapValueIndexFundMember', window );">Wells Fargo BlackRock Large Cap Value Index Fund</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_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>
</tr>
<tr class="ro">
<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">744<span></span>
</td>
<td class="nump">968<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoLargeCapValueIndexFundMember', window );">Wells Fargo BlackRock Large Cap Value Index Fund | Quoted Prices in Active Markets for Identical Assets (Level 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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoLargeCapValueIndexFundMember', window );">Wells Fargo BlackRock Large Cap Value Index Fund | &#160; Significant Other Observable Inputs (Level 2)</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_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>
</tr>
<tr class="ro">
<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">744<span></span>
</td>
<td class="nump">968<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoLargeCapValueIndexFundMember', window );">Wells Fargo BlackRock Large Cap Value Index Fund | &#160; Significant Unobservable Inputs (Level 3)</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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoMultiManagerSmallCapMember', window );">Wells Fargo Multi-Manager Small Cap</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_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>
</tr>
<tr class="ro">
<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">785<span></span>
</td>
<td class="nump">1,015<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoMultiManagerSmallCapMember', window );">Wells Fargo Multi-Manager Small Cap | Quoted Prices in Active Markets for Identical Assets (Level 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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoMultiManagerSmallCapMember', window );">Wells Fargo Multi-Manager Small Cap | &#160; Significant Other Observable Inputs (Level 2)</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_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>
</tr>
<tr class="ro">
<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">785<span></span>
</td>
<td class="nump">1,015<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoMultiManagerSmallCapMember', window );">Wells Fargo Multi-Manager Small Cap | &#160; Significant Unobservable Inputs (Level 3)</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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember', window );">Wells Fargo BlackRock Russell 2000 Index Fund</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_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>
</tr>
<tr class="ro">
<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">261<span></span>
</td>
<td class="nump">332<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember', window );">Wells Fargo BlackRock Russell 2000 Index Fund | Quoted Prices in Active Markets for Identical Assets (Level 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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember', window );">Wells Fargo BlackRock Russell 2000 Index Fund | &#160; Significant Other Observable Inputs (Level 2)</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_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>
</tr>
<tr class="ro">
<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">261<span></span>
</td>
<td class="nump">332<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember', window );">Wells Fargo BlackRock Russell 2000 Index Fund | &#160; Significant Unobservable Inputs (Level 3)</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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoStandardAndPoorsMidCapIndexFundMember', window );">Wells Fargo BlackRock S&amp;P Mid Cap Index Fund</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_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>
</tr>
<tr class="ro">
<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">320<span></span>
</td>
<td class="nump">419<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoStandardAndPoorsMidCapIndexFundMember', window );">Wells Fargo BlackRock S&amp;P Mid Cap Index Fund | Quoted Prices in Active Markets for Identical Assets (Level 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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoStandardAndPoorsMidCapIndexFundMember', window );">Wells Fargo BlackRock S&amp;P Mid Cap Index Fund | &#160; Significant Other Observable Inputs (Level 2)</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_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>
</tr>
<tr class="ro">
<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">320<span></span>
</td>
<td class="nump">419<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoStandardAndPoorsMidCapIndexFundMember', window );">Wells Fargo BlackRock S&amp;P Mid Cap Index Fund | &#160; Significant Unobservable Inputs (Level 3)</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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoMFSValueCITFMember', window );">Wells Fargo/MFS Value CIT F</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_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>
</tr>
<tr class="ro">
<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">359<span></span>
</td>
<td class="nump">469<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoMFSValueCITFMember', window );">Wells Fargo/MFS Value CIT F | Quoted Prices in Active Markets for Identical Assets (Level 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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoMFSValueCITFMember', window );">Wells Fargo/MFS Value CIT F | &#160; Significant Other Observable Inputs (Level 2)</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_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>
</tr>
<tr class="ro">
<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">359<span></span>
</td>
<td class="nump">469<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoMFSValueCITFMember', window );">Wells Fargo/MFS Value CIT F | &#160; Significant Unobservable Inputs (Level 3)</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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember', window );">Wells Fargo/T. Rowe Price Large-Cap Growth Managed CIT</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_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>
</tr>
<tr class="ro">
<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">359<span></span>
</td>
<td class="nump">465<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember', window );">Wells Fargo/T. Rowe Price Large-Cap Growth Managed CIT | Quoted Prices in Active Markets for Identical Assets (Level 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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember', window );">Wells Fargo/T. Rowe Price Large-Cap Growth Managed CIT | &#160; Significant Other Observable Inputs (Level 2)</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_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>
</tr>
<tr class="ro">
<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">359<span></span>
</td>
<td class="nump">465<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember', window );">Wells Fargo/T. Rowe Price Large-Cap Growth Managed CIT | &#160; Significant Unobservable Inputs (Level 3)</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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_TRowePriceEquityIncomeMember', window );">Wells Fargo/T. Rowe Price Equity Income Managed CIT</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_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>
</tr>
<tr class="ro">
<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">356<span></span>
</td>
<td class="nump">487<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_TRowePriceEquityIncomeMember', window );">Wells Fargo/T. Rowe Price Equity Income Managed CIT | Quoted Prices in Active Markets for Identical Assets (Level 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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_TRowePriceEquityIncomeMember', window );">Wells Fargo/T. Rowe Price Equity Income Managed CIT | &#160; Significant Other Observable Inputs (Level 2)</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_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>
</tr>
<tr class="ro">
<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">356<span></span>
</td>
<td class="nump">487<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_TRowePriceEquityIncomeMember', window );">Wells Fargo/T. Rowe Price Equity Income Managed CIT | &#160; Significant Unobservable Inputs (Level 3)</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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoVoyaLargeCapGrowthCITFMember', window );">Wells Fargo Voya Large Cap Growth CIT F</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_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>
</tr>
<tr class="ro">
<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">357<span></span>
</td>
<td class="nump">482<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoVoyaLargeCapGrowthCITFMember', window );">Wells Fargo Voya Large Cap Growth CIT F | Quoted Prices in Active Markets for Identical Assets (Level 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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoVoyaLargeCapGrowthCITFMember', window );">Wells Fargo Voya Large Cap Growth CIT F | &#160; Significant Other Observable Inputs (Level 2)</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_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>
</tr>
<tr class="ro">
<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">357<span></span>
</td>
<td class="nump">482<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoVoyaLargeCapGrowthCITFMember', window );">Wells Fargo Voya Large Cap Growth CIT F | &#160; Significant Unobservable Inputs (Level 3)</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_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>
</tr>
<tr class="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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_CashAndShortTermInvestmentsMember', window );">Cash &amp; Short-term Investments</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_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>
</tr>
<tr class="ro">
<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">432<span></span>
</td>
<td class="nump">497<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_CashAndShortTermInvestmentsMember', window );">Cash &amp; Short-term Investments | Quoted Prices in Active Markets for Identical Assets (Level 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_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>
</tr>
<tr class="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">432<span></span>
</td>
<td class="nump">497<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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_CashAndShortTermInvestmentsMember', window );">Cash &amp; Short-term Investments | &#160; Significant Other Observable Inputs (Level 2)</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_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>
</tr>
<tr class="ro">
<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>
</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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_CashAndShortTermInvestmentsMember', window );">Cash &amp; Short-term Investments | &#160; Significant Unobservable Inputs (Level 3)</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_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>
</tr>
<tr class="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>
</tr>
</table>
<div style="display: none;">
<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_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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_MidCapMutualFundsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_MidCapMutualFundsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_InternationalMutualFundsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_InternationalMutualFundsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_LiabilityDrivenSolutionCITIMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_LiabilityDrivenSolutionCITIMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_LiabilityDrivenSolutionCITIIMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_LiabilityDrivenSolutionCITIIMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoInternationalEquityIndexFundMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoInternationalEquityIndexFundMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoCausewayMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoCausewayMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoLargeCapGrowthIndexFundMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoLargeCapGrowthIndexFundMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoLargeCapValueIndexFundMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoLargeCapValueIndexFundMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoMultiManagerSmallCapMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoMultiManagerSmallCapMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoStandardAndPoorsMidCapIndexFundMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoStandardAndPoorsMidCapIndexFundMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoMFSValueCITFMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoMFSValueCITFMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_TRowePriceEquityIncomeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_TRowePriceEquityIncomeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoVoyaLargeCapGrowthCITFMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_WellsFargoVoyaLargeCapGrowthCITFMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_CashAndShortTermInvestmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DefinedBenefitPlanByPlanAssetCategoriesAxis=alg_CashAndShortTermInvestmentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="idm140629865397200">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Retirement Benefit Plans - Schedule of Expected Benefit Payments (Details)<br> $ in Thousands</strong></div></th>
<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_RetirementPlanTypeAxis=us-gaap_PensionPlansDefinedBenefitMember', window );">Pension Plan</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_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure [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_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths', window );">2023</a></td>
<td class="nump">$ 1,275<span></span>
</td>
</tr>
<tr class="ro">
<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">1,304<span></span>
</td>
</tr>
<tr class="re">
<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">1,315<span></span>
</td>
</tr>
<tr class="ro">
<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">1,312<span></span>
</td>
</tr>
<tr class="re">
<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">1,306<span></span>
</td>
</tr>
<tr class="ro">
<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 through 2032</a></td>
<td class="nump">6,209<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetirementPlanTypeAxis=us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember', window );">Supplemental Employee Retirement Plan</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_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure [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_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths', window );">2023</a></td>
<td class="nump">490<span></span>
</td>
</tr>
<tr class="ro">
<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">546<span></span>
</td>
</tr>
<tr class="re">
<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">639<span></span>
</td>
</tr>
<tr class="ro">
<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">866<span></span>
</td>
</tr>
<tr class="re">
<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">868<span></span>
</td>
</tr>
<tr class="ro">
<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 through 2032</a></td>
<td class="nump">$ 4,321<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_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_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_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_SupplementalEmployeeRetirementPlanDefinedBenefitMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SupplementalEmployeeRetirementPlanDefinedBenefitMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="idm140629861013136">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue and Segment Reporting - Schedule of Segment Reporting (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net Revenue</a></td>
<td class="nump">$ 1,513,616<span></span>
</td>
<td class="nump">$ 1,334,223<span></span>
</td>
<td class="nump">$ 1,163,466<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">148,592<span></span>
</td>
<td class="nump">116,938<span></span>
</td>
<td class="nump">94,785<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">195,858<span></span>
</td>
<td class="nump">202,406<span></span>
</td>
<td class="nump">195,132<span></span>
</td>
<td class="nump">$ 198,022<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Identifiable Assets</a></td>
<td class="nump">1,308,508<span></span>
</td>
<td class="nump">1,205,742<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=alg_VegetationManagementMember', window );">Vegetation Management</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net Revenue</a></td>
<td class="nump">937,065<span></span>
</td>
<td class="nump">812,676<span></span>
</td>
<td class="nump">654,630<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">108,508<span></span>
</td>
<td class="nump">78,917<span></span>
</td>
<td class="nump">46,651<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">127,562<span></span>
</td>
<td class="nump">132,963<span></span>
</td>
<td class="nump">124,981<span></span>
</td>
<td class="nump">126,894<span></span>
</td>
</tr>
<tr class="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 );">Identifiable Assets</a></td>
<td class="nump">866,974<span></span>
</td>
<td class="nump">789,838<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=alg_IndustrialManagementMember', window );">Industrial 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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net Revenue</a></td>
<td class="nump">576,551<span></span>
</td>
<td class="nump">521,547<span></span>
</td>
<td class="nump">508,836<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">40,084<span></span>
</td>
<td class="nump">38,021<span></span>
</td>
<td class="nump">48,134<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">68,296<span></span>
</td>
<td class="nump">69,443<span></span>
</td>
<td class="nump">70,151<span></span>
</td>
<td class="nump">$ 71,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_Assets', window );">Identifiable Assets</a></td>
<td class="nump">441,534<span></span>
</td>
<td class="nump">415,904<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_ProductOrServiceAxis=alg_WholegoodUnitsMember', window );">Wholegoods</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net Revenue</a></td>
<td class="nump">1,185,885<span></span>
</td>
<td class="nump">1,024,158<span></span>
</td>
<td class="nump">885,254<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_ProductOrServiceAxis=alg_PartsMember', window );">Parts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net Revenue</a></td>
<td class="nump">280,261<span></span>
</td>
<td class="nump">262,432<span></span>
</td>
<td class="nump">247,126<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_ProductOrServiceAxis=us-gaap_ProductAndServiceOtherMember', window );">Other *</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net Revenue</a></td>
<td class="nump">$ 47,470<span></span>
</td>
<td class="nump">$ 47,633<span></span>
</td>
<td class="nump">$ 31,086<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_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_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_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_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 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 40<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9031-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 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 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130543-203045<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 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 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 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<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 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130545-203045<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI https://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-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=alg_VegetationManagementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_VegetationManagementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=alg_IndustrialManagementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_IndustrialManagementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=alg_WholegoodUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ProductOrServiceAxis=alg_WholegoodUnitsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=alg_PartsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ProductOrServiceAxis=alg_PartsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=us-gaap_ProductAndServiceOtherMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ProductOrServiceAxis=us-gaap_ProductAndServiceOtherMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="idm140629864321136">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue and Segment Reporting - Additional Information (Details)<br></strong></div></th>
<th class="th" colspan="1">3 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_SegmentReportingAbstract', window );"><strong>Segment Reporting [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 principal reporting segments</a></td>
<td class="nump">2<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_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>104
<FILENAME>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="idm140629854616944">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accumulated Other Comprehensive 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_AOCIAttributableToParentNetOfTaxRollForward', window );"><strong>AOCI Attributable to Parent, Net of Tax [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_StockholdersEquity', window );">Beginning balance</a></td>
<td class="nump">$ 705,663<span></span>
</td>
<td class="nump">$ 635,003<span></span>
</td>
<td class="nump">$ 577,943<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent', window );">Other comprehensive income (loss) before reclassifications</a></td>
<td class="num">(23,032)<span></span>
</td>
<td class="num">(15,800)<span></span>
</td>
<td class="nump">8,862<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent', window );">Amounts reclassified from accumulated other comprehensive loss</a></td>
<td class="nump">1,707<span></span>
</td>
<td class="nump">1,838<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Other comprehensive income (loss)</a></td>
<td class="num">(19,278)<span></span>
</td>
<td class="num">(8,664)<span></span>
</td>
<td class="nump">512<span></span>
</td>
</tr>
<tr class="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 );">Ending balance</a></td>
<td class="nump">785,360<span></span>
</td>
<td class="nump">705,663<span></span>
</td>
<td class="nump">635,003<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_AOCIAttributableToParentNetOfTaxRollForward', window );"><strong>AOCI Attributable to Parent, Net of Tax [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_StockholdersEquity', window );">Beginning balance</a></td>
<td class="num">(42,397)<span></span>
</td>
<td class="num">(26,597)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent', window );">Other comprehensive income (loss) before reclassifications</a></td>
<td class="num">(23,032)<span></span>
</td>
<td class="num">(15,800)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent', window );">Amounts reclassified from accumulated other comprehensive loss</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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Other comprehensive income (loss)</a></td>
<td class="num">(23,032)<span></span>
</td>
<td class="num">(15,800)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Ending balance</a></td>
<td class="num">(65,429)<span></span>
</td>
<td class="num">(42,397)<span></span>
</td>
<td class="num">(26,597)<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 );">Defined Benefit Plans Items</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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>AOCI Attributable to Parent, Net of Tax [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_StockholdersEquity', window );">Beginning balance</a></td>
<td class="num">(5,017)<span></span>
</td>
<td class="num">(6,855)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent', window );">Other comprehensive income (loss) before reclassifications</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_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent', window );">Amounts reclassified from accumulated other comprehensive loss</a></td>
<td class="nump">1,707<span></span>
</td>
<td class="nump">1,838<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Other comprehensive income (loss)</a></td>
<td class="nump">1,707<span></span>
</td>
<td class="nump">1,838<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Ending balance</a></td>
<td class="num">(3,310)<span></span>
</td>
<td class="num">(5,017)<span></span>
</td>
<td class="num">(6,855)<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_AccumulatedGainLossNetCashFlowHedgeParentMember', window );">Gains (Losses) on Cash Flow Hedges</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>AOCI Attributable to Parent, Net of Tax [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_StockholdersEquity', window );">Beginning balance</a></td>
<td class="num">(1,576)<span></span>
</td>
<td class="num">(6,874)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent', window );">Other comprehensive income (loss) before reclassifications</a></td>
<td class="nump">1,512<span></span>
</td>
<td class="nump">7,984<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent', window );">Amounts reclassified from accumulated other comprehensive loss</a></td>
<td class="nump">535<span></span>
</td>
<td class="num">(2,686)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Other comprehensive income (loss)</a></td>
<td class="nump">2,047<span></span>
</td>
<td class="nump">5,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_StockholdersEquity', window );">Ending balance</a></td>
<td class="nump">471<span></span>
</td>
<td class="num">(1,576)<span></span>
</td>
<td class="num">(6,874)<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_AccumulatedOtherComprehensiveIncomeMember', window );">Accumulated Other Comprehensive Income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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>AOCI Attributable to Parent, Net of Tax [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_StockholdersEquity', window );">Beginning balance</a></td>
<td class="num">(48,990)<span></span>
</td>
<td class="num">(40,326)<span></span>
</td>
<td class="num">(40,838)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent', window );">Other comprehensive income (loss) before reclassifications</a></td>
<td class="num">(21,520)<span></span>
</td>
<td class="num">(7,816)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent', window );">Amounts reclassified from accumulated other comprehensive loss</a></td>
<td class="nump">2,242<span></span>
</td>
<td class="num">(848)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Other comprehensive income (loss)</a></td>
<td class="num">(19,278)<span></span>
</td>
<td class="num">(8,664)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Ending balance</a></td>
<td class="num">$ (68,268)<span></span>
</td>
<td class="num">$ (48,990)<span></span>
</td>
<td class="num">$ (40,326)<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_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_OciBeforeReclassificationsNetOfTaxAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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, before reclassification adjustments, of other comprehensive income (loss), attributable to 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 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 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_OciBeforeReclassificationsNetOfTaxAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 other comprehensive income (loss) attributable to parent 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 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 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=126929396&amp;loc=SL4569643-111683<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI https://asc.fasb.org/extlink&amp;oid=126929396&amp;loc=SL4569616-111683<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 adjustments of other comprehensive income (loss) attributable to 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 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 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=124507222&amp;loc=d3e1436-108581<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>
<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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccumulatedGainLossNetCashFlowHedgeParentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedOtherComprehensiveIncomeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_AccumulatedOtherComprehensiveIncomeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>105
<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="idm140629860315088">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>International Operations and Geographic Information - Schedule of International 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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales</a></td>
<td class="nump">$ 1,513,616<span></span>
</td>
<td class="nump">$ 1,334,223<span></span>
</td>
<td class="nump">$ 1,163,466<span></span>
</td>
</tr>
<tr class="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">148,592<span></span>
</td>
<td class="nump">116,938<span></span>
</td>
<td class="nump">94,785<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income taxes</a></td>
<td class="nump">134,310<span></span>
</td>
<td class="nump">109,498<span></span>
</td>
<td class="nump">79,757<span></span>
</td>
</tr>
<tr class="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 );">Identifiable assets</a></td>
<td class="nump">1,308,508<span></span>
</td>
<td class="nump">1,205,742<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=us-gaap_NonUsMember', window );">Non-US</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales</a></td>
<td class="nump">420,678<span></span>
</td>
<td class="nump">363,339<span></span>
</td>
<td class="nump">312,462<span></span>
</td>
</tr>
<tr class="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">48,893<span></span>
</td>
<td class="nump">34,561<span></span>
</td>
<td class="nump">31,166<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income taxes</a></td>
<td class="nump">51,206<span></span>
</td>
<td class="nump">37,051<span></span>
</td>
<td class="nump">30,674<span></span>
</td>
</tr>
<tr class="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 );">Identifiable assets</a></td>
<td class="nump">$ 364,752<span></span>
</td>
<td class="nump">$ 352,187<span></span>
</td>
<td class="nump">$ 304,536<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_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_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_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_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-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=us-gaap_NonUsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=us-gaap_NonUsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="idm140629854992784">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>International Operations and Geographic Information - Schedule of Selected Geographic Financial Information (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 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,513,616<span></span>
</td>
<td class="nump">$ 1,334,223<span></span>
</td>
<td class="nump">$ 1,163,466<span></span>
</td>
</tr>
<tr class="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 );">Total long-lived assets</a></td>
<td class="nump">581,008<span></span>
</td>
<td class="nump">593,283<span></span>
</td>
<td class="nump">605,539<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_US', window );">United States</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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,080,893<span></span>
</td>
<td class="nump">953,024<span></span>
</td>
<td class="nump">862,430<span></span>
</td>
</tr>
<tr class="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 );">Total long-lived assets</a></td>
<td class="nump">457,075<span></span>
</td>
<td class="nump">461,341<span></span>
</td>
<td class="nump">480,940<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_FR', window );">France</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">89,629<span></span>
</td>
<td class="nump">92,052<span></span>
</td>
<td class="nump">81,259<span></span>
</td>
</tr>
<tr class="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 );">Total long-lived assets</a></td>
<td class="nump">18,728<span></span>
</td>
<td class="nump">19,781<span></span>
</td>
<td class="nump">21,033<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_CA', window );">Canada</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">95,799<span></span>
</td>
<td class="nump">83,392<span></span>
</td>
<td class="nump">65,313<span></span>
</td>
</tr>
<tr class="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 );">Total long-lived assets</a></td>
<td class="nump">32,165<span></span>
</td>
<td class="nump">32,132<span></span>
</td>
<td class="nump">33,573<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_GB', window );">United Kingdom</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">69,454<span></span>
</td>
<td class="nump">57,386<span></span>
</td>
<td class="nump">47,757<span></span>
</td>
</tr>
<tr class="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 );">Total long-lived assets</a></td>
<td class="nump">31,767<span></span>
</td>
<td class="nump">36,569<span></span>
</td>
<td class="nump">18,843<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_BR', window );">Brazil</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">46,841<span></span>
</td>
<td class="nump">31,365<span></span>
</td>
<td class="nump">16,592<span></span>
</td>
</tr>
<tr class="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 );">Total long-lived assets</a></td>
<td class="nump">12,175<span></span>
</td>
<td class="nump">10,408<span></span>
</td>
<td class="nump">11,123<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_NL', window );">Netherlands</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">23,304<span></span>
</td>
<td class="nump">27,964<span></span>
</td>
<td class="nump">23,946<span></span>
</td>
</tr>
<tr class="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 );">Total long-lived assets</a></td>
<td class="nump">28,428<span></span>
</td>
<td class="nump">32,262<span></span>
</td>
<td class="nump">39,063<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_DE', window );">Germany</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">9,115<span></span>
</td>
<td class="nump">8,977<span></span>
</td>
<td class="nump">9,328<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_AU', window );">Australia</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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="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">26,117<span></span>
</td>
<td class="nump">20,980<span></span>
</td>
<td class="nump">10,999<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Total long-lived assets</a></td>
<td class="nump">670<span></span>
</td>
<td class="nump">790<span></span>
</td>
<td class="nump">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_StatementGeographicalAxis=alg_OtherGeographicalAreasMember', window );">Other</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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="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">$ 72,464<span></span>
</td>
<td class="nump">$ 59,083<span></span>
</td>
<td class="nump">$ 45,842<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=country_US">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_US</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_FR">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_FR</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_CA">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_CA</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_GB">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_GB</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_BR">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_BR</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_NL">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_NL</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_DE">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_DE</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_AU">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_AU</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=alg_OtherGeographicalAreasMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=alg_OtherGeographicalAreasMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>alg-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:alg="http://www.alamo-group.com/20221231"
  xmlns:country="http://xbrl.sec.gov/country/2022"
  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: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"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <link:schemaRef xlink:href="alg-20221231.xsd" xlink:type="simple"/>
    <context id="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i8e372fb5454742f6ac912992828f4480_I20220630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="i887f22af95754d37804e79c104c0c635_I20230217">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
        </entity>
        <period>
            <instant>2023-02-17</instant>
        </period>
    </context>
    <context id="i7ca1a2570c4a481dabf1bad462d1644a_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i4a4acb75213e4a59aa709376381730bd_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i0ff65971f8a344f3afdf75aa25d869f1_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:VegetationManagementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="if77ec05e8b684280b18475c39a8bf482_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:VegetationManagementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i513fb2f7accf49ecacbc7116eafbe588_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:VegetationManagementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ibaa2c0aa8b8145e0846cbc65655c330c_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:IndustrialManagementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i3182e3589e3647f599dbed14ec3a5afe_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:IndustrialManagementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i36cdf5e00a0245ce92a15de38f5924f4_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:IndustrialManagementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i48e658fbd10f456086edb59193159816_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="idfff0fc4e5bf4119bba14d59d225d229_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i106a5b274aba4c6d889b696421f6d462_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i5564749cfaa941a9b9c4d886886c9bc2_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i6b5a981954b0422baa6e0bc09771aaf4_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i418e1db8b7e1486ea4572f36257de9de_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i44bc7e6d50f24c73a6c3024416870968_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="ie4e7d0b6ff9343ecb2865f65c12499ce_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="ia7915fed79c644b58899d17704d5719d_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="ic2896861ae284cbc8784e33f237b15b8_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i4b34ed98c2754071a4684bfcab1d4059_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i54d9a911820d4073a29730b9df2e92c0_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="ie02f87b7278a4b05a734307040b023ae_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i70aaf8f3036d4bf8b567c4ab7b4b3578_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i8d341c55254649f983daa2187dbb3c28_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i5d74fc3138934e70861715f06fa062c7_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i841cff3d2384466d8e02cc714034bb6d_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i94acb5b8cf414532a2b46fc4de433694_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="icce422c6406346e18a3c8ece4f20af69_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i1492e60d49a541618463d2ed72a8cb55_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i1187989f17d7447e820b47bb6d9b9567_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i960c9c28c1b54a86adbc27a79d0d61e1_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i14d095e48a754e0d84deb55dea0e7534_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i7ae6563033b64c3fafae6f088fa245ef_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i3114f6dde5534997ba147bf29b5ba918_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i39fb48d3870446bf93d15f60c7d73de6_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i3e48d85ced0f4198be5b279ed3c2cf71_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="ida534350511f461cb3aeef03f954f40b_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i22b42d26702846c7afbfed5d7f050f34_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i4c2db2597449494ca1e4c906c5f2f579_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="ibd1277243f684704b4f9ee8707aed2a0_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i7a77b0d7f923475a9263322e96150bb1_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i19088741b3fd4eba9737feda62eb75f5_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="ib613492db2fd4fb0b699d97c44b617be_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="ibd895d48ac38440e907abfa04402881f_D20221001-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
        </entity>
        <period>
            <startDate>2022-10-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ic45bfdab6e1e4d28a243163b4189686e_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i9f473c4749174271bfd71f93c77ca853_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="id956c87fa891446f8832478c415ae209_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="icc4ff7dd1e9a4f5fbf837842648f304e_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i4a2e4f923a74483fb510a1d4aad2630b_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i81b7a9ce02d3439b9022865004507986_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="ia8717b37bc834a2c90bb4e0d9c8a9ef0_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="ie645f8221895406fbea9037626790faf_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="idbd5d2e161fe40df8aef073e0d3c8443_I20211026">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alg:DutchPowerCompanyBVMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-26</instant>
        </period>
    </context>
    <context id="id62d12deb6a04e47bc668cc97fa66db1_D20211026-20211026">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alg:DutchPowerCompanyBVMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-10-26</startDate>
            <endDate>2021-10-26</endDate>
        </period>
    </context>
    <context id="ia9823408724d4000926edbb1d190feae_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">alg:SECSchedule1209SalesDiscountsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ifb1091d992d44cf0b0f9802926f1c066_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">alg:SECSchedule1209SalesDiscountsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ibd755e8236cd4991b0c03464ecd075e5_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">alg:SECSchedule1209SalesDiscountsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i2c251835505847ab9f8b8275a364aaf6_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i0877b31f3bfe4be2940855869417e0ff_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i6e0321a33def419ba2273d3fe76c9e9a_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i7fc12cd1cf6643658925beb572783f63_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:WarrantyReservesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i278b14acd71a4ef888de09487a900f94_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:WarrantyReservesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i327013052a5348e58d6206072d5a7c00_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:WarrantyReservesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i10fd44437faf49d8a71d549da1958cff_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">alg:SECSchedule1209SalesDiscountsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i628b14e273ef4667875cefb44919b448_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">alg:SECSchedule1209SalesDiscountsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ieab4254aff3642bbadde2c564b0a85f4_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i68d46899feed46e9a18669d1773b0388_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="if474962fab4a4030b9eb991b08ecfdf2_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:WarrantyReservesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i3ed7c8ddc75c4302a5a683b9a5d47274_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:WarrantyReservesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i21f9273d6b3548fa8973dee9a48f69e0_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">alg:SECSchedule1209SalesDiscountsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i22c526cb7bc2454ebb5a249fde941e9c_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">alg:SECSchedule1209SalesDiscountsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i1cd0e52666304b0cb6d2e91288aad69e_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i77e23cfd658449999ef76db76a8fabe0_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i9e13101fce0c40dea862f82c5b2403e3_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:WarrantyReservesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i9d7480f64a314da1ab83562492ffc296_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:WarrantyReservesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i2ec5941998b24e159ba1077cecd2e60e_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alg:WholegoodUnitsMember</xbrldi:explicitMember>
                <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="i72a1ba6068504c79a2fd7f8558bca6f2_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alg:PartsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i3348296671fa487a884971b97eb216d2_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i249e2e9ad69844859b9656f0380afb9e_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i122eac470b9c48329a774c3e3bcded96_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="iad324c38f2e34c1f9ded6165b72b2375_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i95aa30d2c7224485a374de947f8e7755_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i36b0126f5a16463bbe27a370ace65833_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i77a694f6bf444184afdfc6dc4a57c372_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ic49da4abfe964d918d3cc823a356905f_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i00b8ba35ccec46dc9f5c29a4e5a91143_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="icb424d7932f448c89223aa3397e280e9_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="id99a7e4f4e834539b17bffb1ca230dd7_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="id56c89efa1f343888b0c50ebff7d1899_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ie25d80ccacf9429992256251efa00407_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="iaa9e5101517947619a1354bfee65e555_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i86aa6d9413174db0a6c0a14c0845700d_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ic8fdf016860e4a6eaadd0501b7c4cce8_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i3e80469457664043b7fa8c3e73b6786a_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i7533dbd0266540ad9432641845a22e51_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i69f6c89be1a144e883096028fa26b0da_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ib8393b9f33594e8dba986d7172143777_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ib99b82b5a9c64c95a4bfe92aec5e613b_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="iedfcf9c8e2264240a132e99838accd6d_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:VegetationManagementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="iabfb89696316430eafcf64baede0be8b_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:IndustrialManagementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i9b9aaca501be4ac2a3e9953b36156442_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:VegetationManagementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i5bb51e7640b046fcbb14996aa5001c29_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:IndustrialManagementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ifabd95c5636e4ae29d276ed3df2f04aa_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:VegetationManagementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ib5cd129a56a24fffb8578ab324d3ad87_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:IndustrialManagementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i803060fc3e714dea8c404e56b28916c4_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:VegetationManagementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i3d862a4e890749ffb9f5627adbe5ad23_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alg:IndustrialManagementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i68a256c1723d43dbb5df670bc790f863_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="icbd1c5e5e7eb47c3958b7b85bf0d081c_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="iadf14f0daee54087a5b649d24234dac0_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i95178ffe330d48fcb4637fc13250db52_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ib292af5aee0b48b289a81b72eca38568_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</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="iee07aec1619645a0ae8b12bd11a69963_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</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="i435e4507e6da42a3a9932ae15da0534c_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="id92355343cac46968b239cfc5b441c9e_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="ifc03ad598ec34d0a9d6718b3661fd473_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:IntellectualPropertyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i9c308d2b36ab400a8412ea7aeb29b0ad_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:IntellectualPropertyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i83a283f3498f4b0fbfc99e5b21267cb7_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:IntellectualPropertyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i71cdbdff48c64bc382792b93bb428b29_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:IntellectualPropertyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i5c7c231201cc4d7f849189db8e3482d7_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OffMarketFavorableLeaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i55ac1b87fd0140a5bea90053aada53dc_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OffMarketFavorableLeaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i470fd970d74c412eb3030b333e36860e_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OffMarketFavorableLeaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i1a039da70c38475196938960bb28c546_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i857f1683f4514f1c9ef93bf8aebe3446_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i609e1a9b7ab549e796bb32b09b753415_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">alg:GradallMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i9bfa2e1d27b04dd59a40d79958302b94_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">alg:BushHogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i424fb85a13d04e37be619989350f15bf_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i91573b62aa034f839c16b96542b20382_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ia1bd7756203d4a66b543323629c2482c_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:MediumTermNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i675eae9488b54f378ef618ba956ab83c_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:MediumTermNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ia7571866d7ef4d27a8e9a1abed0c52c3_I20221028">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-28</instant>
        </period>
    </context>
    <context id="i0e92704c63dd44fd966d6fae8d0d8e53_I20221028">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alg:TermFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-28</instant>
        </period>
    </context>
    <context id="i9a6b48d630e74ce9aef9f9eb731b3006_I20221028">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:StandbyLettersOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-28</instant>
        </period>
    </context>
    <context id="ie04bb4cb3a604fbd98c2353b6aa9d56e_D20221028-20221028">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:StandbyLettersOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-10-28</startDate>
            <endDate>2022-10-28</endDate>
        </period>
    </context>
    <context id="i9b6e8624e81943d4beae545861849ec0_D20221028-20221028">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alg:TermFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-10-28</startDate>
            <endDate>2022-10-28</endDate>
        </period>
    </context>
    <context id="idfac62871e4a40fd93ae3475d46cc451_I20221028">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-28</instant>
        </period>
    </context>
    <context id="ia094bf88179843b3a2e0b1221fc54927_I20221028">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-28</instant>
        </period>
    </context>
    <context id="iacedc088100e4e3cab47bb79b4393b39_I20221028">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-28</instant>
        </period>
    </context>
    <context id="ib5a844e3ed8648eab740d6b4a8340cf8_I20221028">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-28</instant>
        </period>
    </context>
    <context id="ia90d069988524b79a36aa083c4b5ea7f_D20221028-20221028">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-10-28</startDate>
            <endDate>2022-10-28</endDate>
        </period>
    </context>
    <context id="i57683f616816455b9d2d3f82dfee4e7e_D20221028-20221028">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-10-28</startDate>
            <endDate>2022-10-28</endDate>
        </period>
    </context>
    <context id="i5d9b8bb0d7d046279d8250520b65cd6c_I20191024">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-10-24</instant>
        </period>
    </context>
    <context id="iafdae17ff83f451d8586288de3217a60_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i974fb1cfb185413eb7f81ef329347fe1_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alg:TermFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i19738afad34c4dc5a87ec2fe8156ed18_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:StandbyLettersOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alg:SecondAmendedAndRestatedRevolvingCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i4e96c6494cd0405689a6ca0d4e5afaad_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="ib24cead7aa1d453cbb4bc6f47cb17caa_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="id39bf75be2ed41dca0e9d849b8b972d4_D20230201-20230201">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-02-01</startDate>
            <endDate>2023-02-01</endDate>
        </period>
    </context>
    <context id="i038226a8b3f3404f98d4ecbbb625c889_D20230103-20230103">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-03</startDate>
            <endDate>2023-01-03</endDate>
        </period>
    </context>
    <context id="i1eae38dc9edd48f998885d656ee56f1f_I20150507">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:IncentiveStockOption2015PlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2015-05-07</instant>
        </period>
    </context>
    <context id="ib57b490f97f0442fa5ebce9384a2da12_D20150507-20150507">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:IncentiveStockOption2015PlanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2015-05-07</startDate>
            <endDate>2015-05-07</endDate>
        </period>
    </context>
    <context id="ibb8983f6dca043ffb15dcb9296db84fb_D20150507-20150507">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:IncentiveStockOption2015PlanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2015-05-07</startDate>
            <endDate>2015-05-07</endDate>
        </period>
    </context>
    <context id="iaf39c77254434dd89c8e34925ee2cbf6_D20150507-20150507">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:IncentiveStockOption2015PlanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2015-05-07</startDate>
            <endDate>2015-05-07</endDate>
        </period>
    </context>
    <context id="i0eeffb1ea1e84e5890830bc854584ac6_D20150507-20150507">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:IncentiveStockOption2015PlanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">alg:SharebasedCompensationAwardTrancheFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2015-05-07</startDate>
            <endDate>2015-05-07</endDate>
        </period>
    </context>
    <context id="i8c4050d8889b46eb82ccc74d27f377c8_D20150507-20150507">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:IncentiveStockOption2015PlanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2015-05-07</startDate>
            <endDate>2015-05-07</endDate>
        </period>
    </context>
    <context id="i003b20a90fb44ef1bcb77f9b3c6059fc_D20150507-20150507">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:IncentiveStockOption2015PlanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">alg:SharebasedCompensationAwardTrancheFiveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2015-05-07</startDate>
            <endDate>2015-05-07</endDate>
        </period>
    </context>
    <context id="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="icd1fb9b0cdab41bd9c168d8388cb4c8d_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ic761a5d8d966472c96815aa37af02a45_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="id0b7a3a5b4e443538e02d0e614fc830b_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i51676da905124b298c0db5d4b498da5c_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i219410650f93481ebd26323b8a832def_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i0b10e572815d4913953edd8c1c32efa6_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ibee7f745de38423e9660fafdbc60fe1e_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alg:QualifiedStockOptionsExercisePriceRangeOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i332b0e139818417a8cd4a2d136b9d52b_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alg:QualifiedStockOptionsExercisePriceRangeOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i9ab8ee9172b244a8a8dd397b1dd4f908_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alg:QualifiedStockOptionsExercisePriceRangeTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i767a94e19e5e40159ac0157413db98af_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alg:QualifiedStockOptionsExercisePriceRangeTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="iaf629ab3836645949ab33e5501ca2f6b_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alg:QualifiedStockOptionsExercisePriceRangeThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i9b3455aa56ab4d2a8a3dd620f413fe46_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:QualifiedStockOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alg:QualifiedStockOptionsExercisePriceRangeThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="if704f1f032cf4b038dd5aaa4540f8a40_I20190502">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:TwoZeroZeroNineEquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-05-02</instant>
        </period>
    </context>
    <context id="if51b205dc7294d10bf77e82a58091b25_D20190502-20190502">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:TwoZeroZeroNineEquityIncentivePlanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-05-02</startDate>
            <endDate>2019-05-02</endDate>
        </period>
    </context>
    <context id="i0cdeefb3beb84a369128f330466e4a2a_D20190502-20190502">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:TwoZeroZeroNineEquityIncentivePlanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-05-02</startDate>
            <endDate>2019-05-02</endDate>
        </period>
    </context>
    <context id="if63b9384c4f94bddbe03628bb7f1e50d_D20190502-20190502">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:TwoZeroZeroNineEquityIncentivePlanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">alg:SharebasedCompensationAwardTrancheFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-05-02</startDate>
            <endDate>2019-05-02</endDate>
        </period>
    </context>
    <context id="i40bae31f1b4f4d67b5f1264b3662002b_D20190502-20190502">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:TwoZeroZeroNineEquityIncentivePlanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">alg:SharebasedCompensationAwardTrancheFiveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-05-02</startDate>
            <endDate>2019-05-02</endDate>
        </period>
    </context>
    <context id="if834433608a64a74af49ea7398f84bde_D20190502-20190502">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:TwoZeroZeroNineEquityIncentivePlanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-05-02</startDate>
            <endDate>2019-05-02</endDate>
        </period>
    </context>
    <context id="ic07dcf17dce848028271ce79a08ab201_D20190502-20190502">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alg:TwoZeroZeroNineEquityIncentivePlanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-05-02</startDate>
            <endDate>2019-05-02</endDate>
        </period>
    </context>
    <context id="i667450baff3d4245af27b6b303fd59cd_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i1fd93aa3097f4b8dbbca4de45cf5ed5b_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i7604370e7a114affa5bb1f9fbbc2bd2c_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i5ad65b8c4e4d456d9cf858ed0bf0f59f_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ifc1c7939faa3461a8d5c3b191e68cfcd_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alg:NonQualifiedStockOptionsExercisePriceRangeThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="id831c7e0d302482faca3cb3558d21e5c_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alg:NonQualifiedOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alg:NonQualifiedStockOptionsExercisePriceRangeThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ifc8f47975add4f749d27d6b110aa5ed3_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="ic1d5d64367254c4c819a305f0ab20b2c_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ie83acb459d73467c87c99796c09994fb_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i38f33838ce91420482c5796e5388bdd8_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i1011c4830f5f4c91869fe042f30279ce_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i23b96fe554184ee8b4402d7b2035a8fc_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="if085f70a27904be0b93506b76678eba3_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i3490753726ff4591a37ea325756d1abc_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i7b81e0cb72d241c4a4953368ac25f53e_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i6d534cef18a748ab92702c2c5656810b_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i2e5beadb31454176860e9cb0fa2c4b9a_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="icb775f781f264316a750b5e7578a7bad_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i92d53dcc417e4226ae49092eda85d752_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">alg:AwardDateTwoMember</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="i50ab4791b6dd43998fe818c2a7c3ceec_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i9023c726c26349e2a4c074fdc4a88989_I20060203">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
        </entity>
        <period>
            <instant>2006-02-03</instant>
        </period>
    </context>
    <context id="id2b30941a2b4404bbd80394ffc1e2677_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanNameAxis">alg:GradallCompanyEmployeesRetirementPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="iddf0fe15564f4b3b90fe266fbef3b250_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i157f5442992d4d448c7b527a323d059a_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="ifb1b11ee7ef44dc39600b55c62f605e9_D20230101-20231231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="if3cf207cdc8041109a3c2438a4737717_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:DefinedBenefitPlanEquitySecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="icd556120213a4b5fbfc69e2fa86c1d1c_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:DefinedBenefitPlanEquitySecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i2c8713fba4954513b58d3eab3a03f19e_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:DefinedBenefitPlanDebtSecurityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i437277f20055408d91f03cfe359bc428_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:DefinedBenefitPlanDebtSecurityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i74997fdc0ff948d29df323b4c3cb9d2c_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:ShortTermInvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i5e260d6c10e145de848833420aba74ad_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:ShortTermInvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ic0c4ecbf07bf43779d0da8efbf7bb6bb_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:OtherInvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="iceda45e1bd664c60986a5aa84bb37e7a_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:OtherInvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i717c4ae25fa44cca9308d5f5da3e076c_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:MidCapMutualFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="icdeff85d9a4e4460a5e04ee26e4619d9_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:MidCapMutualFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i7bcfdde1d2ab476ca1face97be403c08_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:MidCapMutualFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i2e2a67cc61a1453b91a2e7b385ffc756_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:MidCapMutualFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i7e5d559dc3fb470b8ce236f1e3326f6e_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:InternationalMutualFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i17f2ef5d2bc0439aad7b784c1bd8f92b_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:InternationalMutualFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i4dc44a40978b47deb5bf75f47c6879f6_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:InternationalMutualFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ib597f35825274befb83d1eae8312e811_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:InternationalMutualFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i971843612b4444378d4578c27098e323_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i0f139e029a4a40b494b1166a43cef3ee_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i8fb804c5d600424d99eb72be0c8a5b59_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ifcdac7dd37c74ab5889b9f9d01217713_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="iec1e7c4f52704e7da1f7c6cf4c4d7d62_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIIMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ic29f1632958d477b8f1e10e684ff8483_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIIMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i946e625a959742208f8405d66251235f_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIIMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i09714fa45c9744278086938bab8108ae_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIIMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i49454c83e1dd4a15bd286665b6172f09_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoInternationalEquityIndexFundMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i6deb7f4f37f24982a39c08cf0bbe04ec_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoInternationalEquityIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="if70c161cc4ad4e6abc26a4e751891ee6_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoInternationalEquityIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i3c88509b92544ba08854dde611a0a0f1_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoInternationalEquityIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ia2aee32b51e346ddab38ffaa0211827e_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoCausewayMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="idcc624feeeef475db835d65f85ea3c8b_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoCausewayMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i76627f49e9d6466396949562e5951519_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoCausewayMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ia0d76ce3ece041f79491d2d5cbafcd64_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoCausewayMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ia0356ae226af468a976230d65234e8d4_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapGrowthIndexFundMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i9e5e7128fefd4808a7a01b152dbde9a4_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapGrowthIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i5a70c21a1fbc4d4b9cd4e9d9595f7adf_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapGrowthIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i8cce23c346084618907320d801b9e400_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapGrowthIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i43d1dbb904164762bfde5595aa063532_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapValueIndexFundMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="id7422f04eae44054bfbce6ca8038d09f_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapValueIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ic7d5c518d9594876af64ab3126511b0a_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapValueIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i356b27b1b49b42638d998edc758500ca_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapValueIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="id51a28a4c1164b42bc43a4db197c43fe_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMultiManagerSmallCapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i11f335c35bd048ad95f49bf90cd777f5_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMultiManagerSmallCapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ibbe83b3a4b1a40cb964629fe1d4389b9_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMultiManagerSmallCapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i7413e9e2f39a40669d931c15c35251e5_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMultiManagerSmallCapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ie0fca9ec3d444fb9b6e66ea2a9054de3_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoRussellTwoZeroZeroZeroIndexFundMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i9432d45a9e9e4191b54709416e87108b_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoRussellTwoZeroZeroZeroIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="iafff413bcb2240cb8cd16b84d0876287_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoRussellTwoZeroZeroZeroIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i5e101051344e4b1c808528e1db5e08fb_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoRussellTwoZeroZeroZeroIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i0adc6834436f4371b3cdd5696abaa8cd_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoStandardAndPoorsMidCapIndexFundMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i5ffb7546a8494d55939a3a4a32690ccf_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoStandardAndPoorsMidCapIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ic2becb6e8fc948c1b31183516406a459_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoStandardAndPoorsMidCapIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i123930823cd8488e838f40bc3f3e1de7_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoStandardAndPoorsMidCapIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i4cb19762171d45a0ad88bea28dd77754_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMFSValueCITFMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i6d4f08d5bd87435e965b581fc8ddf576_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMFSValueCITFMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i1ea986161ff549f4becf2b6e3b344053_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMFSValueCITFMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i45cd8b1f870e40358934e74c5d538a77_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMFSValueCITFMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="icb70ed98ac1149039a9bd3f56114b3c7_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoTRowePriceILargeCapGrowthManagedCITMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ibe717bc583594521a2ec81bd967b0e7c_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoTRowePriceILargeCapGrowthManagedCITMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i7f157b168b604ab888264209d171f418_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoTRowePriceILargeCapGrowthManagedCITMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ic50e7308c6c642d2b2906d70f4c41031_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoTRowePriceILargeCapGrowthManagedCITMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i6432e734c9bb4c748ed8b984af5c19b3_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:TRowePriceEquityIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i7eab14931758499c86fc981d8534c0d2_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:TRowePriceEquityIncomeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i0efb16e6acb94bcc822d3f6f17ca38cc_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:TRowePriceEquityIncomeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i35e0ecc32ef34d9fac9974d96205aab2_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:TRowePriceEquityIncomeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i42e85a08729b4b9e9936579f4f8a0368_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoVoyaLargeCapGrowthCITFMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i22991817b589465c988eb404d93742d9_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoVoyaLargeCapGrowthCITFMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i5d8938ffd2a442588aa9e05718c7a497_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoVoyaLargeCapGrowthCITFMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i92b85df410eb4e1fbfe26dec8b1bbb80_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoVoyaLargeCapGrowthCITFMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i624fe9893bb340f7b9942ac31a247138_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:CashAndShortTermInvestmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i664cd5f98f364c5baf9f5761fc560d93_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:CashAndShortTermInvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ib4f9459255a14b9fbb422a8f1f9cbb4e_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:CashAndShortTermInvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ia858cb8acd9842f985f6c945ba0aadf2_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:CashAndShortTermInvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ifa59e56462b747ddaf8ef3be4a751883_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ia31027b4f0e0473889357f269d8059f6_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i65fb64b53ac347dfbefe473e635b88d1_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i52a8204da7b94186bedcf26a1c8e2cce_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:MidCapMutualFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i9f9353766d1f44edb266fab4456f5371_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:MidCapMutualFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i89d34b46d2424ceeb6120441cfc54cc2_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:MidCapMutualFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ifb0af5063dc548b0a8b1590b99b28194_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:MidCapMutualFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="iaffd3941938a40d996cd8fd72f0edefd_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:InternationalMutualFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i44c9c02c4b1e480bb430af91846ceda4_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:InternationalMutualFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ib2c563f6493944358bc2a1953334b52b_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:InternationalMutualFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i12da2b7deb3547b88815a6f6bfb98513_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:InternationalMutualFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ia722ba49d783476685ea143590cb6c65_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="idf3ce4cf4e564e04828187933dee46a7_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i4da8e9917e44416b9288ab1d168417ed_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i71958a9a83f947ea9e8ce06c90dc71ae_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i55b7d5c6c4794483b8bc04a672aa9794_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIIMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ib5a10484730344d196dbac086113cef3_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIIMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i7ba63e2a3f15410f98611106dfa85749_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIIMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="id41367d6d23c4aed857b87c87a87e966_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:LiabilityDrivenSolutionCITIIMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ibf0eaaa469364e438e4c2c90480cfafd_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoInternationalEquityIndexFundMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="icd628f307f6c4f09b6dc7dadae3a7b76_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoInternationalEquityIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i92640efca9474f738386c749813ce4e7_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoInternationalEquityIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i985f41572bd8411fbae9a6c39ce09710_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoInternationalEquityIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i2b1afabb7d6043c7acac69a09be8202d_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoCausewayMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ief613a9797ba499a90f7c0db92f2ce68_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoCausewayMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ic5c27146979e4ef9be50f4eba2af5be5_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoCausewayMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i474d23e8a81945d9886590fb204080c0_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoCausewayMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i11537fc0dffb40a18449327b5ef7f16e_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapGrowthIndexFundMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i8b3f2b9fb9354a1caf00f74563334cc6_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapGrowthIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i1b0f1051cbe14b27a274bcf0f4ea6d22_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapGrowthIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i84352f8927914e57ad97592295603b0d_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapGrowthIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i01bc55dc32dd4ede8728600610903cf8_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapValueIndexFundMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i57e286ef02af480d8743e63aa262595c_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapValueIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="iac060d40a1124df79664d97528f314d4_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapValueIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i1e5e14dac53045a8957d2a963cceef80_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoLargeCapValueIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="iaa204fa8c13840f9ac86e795ecf9bffb_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMultiManagerSmallCapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ie57ef8f03f86451b90f42dcfd1aaa2d3_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMultiManagerSmallCapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i36affe6e249c476598d4a73d04c0c114_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMultiManagerSmallCapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i9618475f30bf45e0970dcc5782b044ed_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMultiManagerSmallCapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ieb7d8adee16741d883e98a92493e6a91_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoRussellTwoZeroZeroZeroIndexFundMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i0d87e1e3a66a4e32a364fcf2e77389b6_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoRussellTwoZeroZeroZeroIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i30cdc3de298b42528f34e651ae2386d1_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoRussellTwoZeroZeroZeroIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i61f958873ed04b5aa29b3ffa6e371cde_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoRussellTwoZeroZeroZeroIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i8abbc51f968d43709cebc0fe5e11c77d_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoStandardAndPoorsMidCapIndexFundMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="iabd7bcf621304c96b18970895eca7674_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoStandardAndPoorsMidCapIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ib51767f59e124d79b2405724fe6182c0_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoStandardAndPoorsMidCapIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i4540773b6bdc450ab7670c353e71bd24_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoStandardAndPoorsMidCapIndexFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ie89ca23203234a5383be35c58800b3c9_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMFSValueCITFMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ie02c44b94ad947cc9e3caaf03e8cd79d_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMFSValueCITFMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i92b124c33ade4aa085b770b10ae6b7d4_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMFSValueCITFMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ia3290477588b42ac8d96d68467da2638_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoMFSValueCITFMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i0973b74189624337a8282ede68198c13_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoTRowePriceILargeCapGrowthManagedCITMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="id37e990b5b4442f5990f033d0abda372_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoTRowePriceILargeCapGrowthManagedCITMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ia003aefa97644225b609cf69cffcb73e_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoTRowePriceILargeCapGrowthManagedCITMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i99e3c828d28042909e8f0610df7209ce_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoTRowePriceILargeCapGrowthManagedCITMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i1e06937bd5cf441f92815ced806d7b19_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:TRowePriceEquityIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="if30a6b992d2b436e9abf74a084382b62_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:TRowePriceEquityIncomeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i489199d7264b48f4a9304b71e2d9194e_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:TRowePriceEquityIncomeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i5ae7dcde876c4dd7b148277937dbbe41_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:TRowePriceEquityIncomeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i69a53ea75c044ed0981595e1db730fac_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoVoyaLargeCapGrowthCITFMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i80aedcf42fa8458eab165a17fa35837f_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoVoyaLargeCapGrowthCITFMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i8bee2e3fa22a4c5f946447611476c208_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoVoyaLargeCapGrowthCITFMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="iedcddcb5f3d245ef9c3454670c5c7546_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:WellsFargoVoyaLargeCapGrowthCITFMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ifdf749fb72bd4479853fd03b81f5452e_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:CashAndShortTermInvestmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="if1b4303290284d47b16fd65e0e9c4d11_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:CashAndShortTermInvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ieb27dc5461b54c31821de5f7e266e16a_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:CashAndShortTermInvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i5765b80e33a24b9b942a9a75df443860_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">alg:CashAndShortTermInvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="iafbec1421c62426cb0104c9522fa37c0_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="id4db507670fd4d0681e823b25f1b4c2b_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ic0789b2d2b3a4bafa30f47ca67d0e176_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:SupplementalEmployeeRetirementPlanDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i4790b17eb967429486396c862e87d4af_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:SupplementalEmployeeRetirementPlanDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i98f96f8dc89b435db15fd8d85c9d19b7_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:SupplementalEmployeeRetirementPlanDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i61f12f9ea51146af82634ab866ad929b_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:SupplementalEmployeeRetirementPlanDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i6706afd005d94786b0e5ab016edb25ca_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:SupplementalEmployeeRetirementPlanDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:SupplementalEmployeeRetirementPlanDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i514496c272c84c0391f1b5b1c3453db4_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:SupplementalEmployeeRetirementPlanDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i61d597b1e8ab48369c02c0e140ce9ea0_D20230101-20231231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:SupplementalEmployeeRetirementPlanDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="ife90561e40e7493dbe5313f9928b8529_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanNameAxis">alg:InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="iec9c1a66984b4509b11f082bf68d54c7_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanNameAxis">alg:InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ia275391be9294e35bd152017c5b234d7_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanNameAxis">alg:InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i196c2863265548e695dd64a326f541a3_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i922b59df66db420486a5036b9009eda9_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="iec05639d7c2a4aa8833a1eda02bb8312_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ic670f3b25ae5483f8f49ea627f090dfa_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">us-gaap:ForeignPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i49af53d543f043af9e73b3649ab995cc_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">us-gaap:ForeignPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i71e423a8bdf44280bac5df20c2d8f3f7_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">us-gaap:ForeignPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="iccc219e591e44500b8fdb5232de4b667_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">us-gaap:ForeignPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="iadb2db423fc143568086d3b6a3b94ea4_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">us-gaap:ForeignPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i273bea94087a4a249fb082e3b2436a8c_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alg:WholegoodUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i152b3b0f333e4a34974ca0723f6f9128_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alg:WholegoodUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i332689bfdab040e981db033ee4b0e436_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alg:WholegoodUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i16ebbf0c79d74751ab10b853e6c9688a_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alg:PartsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="id0ac0cc4253a48669df79c10c0160e35_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alg:PartsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i08aa06cdfd1b4f03b5aba2ec7f94c6be_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductAndServiceOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i0a8c7e5368d6478b995b9e33da457c37_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductAndServiceOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ifcdfad41cf02439ca81c141d332993bb_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductAndServiceOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i868c73b3d06b44ec92617f0666dc7ce7_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i6e8112f8e8a34e919c3bd3d5a628619d_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="ie3923a67e5f64f98a807cc1d853fc5e2_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ibfae7c87e3cf4e8da5fff61923d7a933_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i5c14023a880f45928fd39bb00503a4eb_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="icee1ab5ee6e94435a209bd27d6fe82fa_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i16b0080a3731492cbc6a4d1595ee7cfc_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i597d4799d22b481eadba8771012e4440_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i705d2dd97b5e442a82aac45bb61c9788_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i74896465ad134617a3231a0dfd645b1b_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="if09a329cb8e041c8a3f68e4b233cb55b_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i57ec737b772646548585c2aeb7dac3ff_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ibe07099a56ec451ea3c3df07c8ba0637_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i00b76891fb64454ba15460dfe356b096_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</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="i2dcafeb637cf429d913083467d301fac_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="if0ccda55f2d64fc59a818cd96115d9b6_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i657c47e3fca548cc9bd4932795340ed6_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="if56db49f517e4c219c53e22f549c5e51_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i64a51b62ddf249588a55692f07e10ab7_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i9d119f114b064384b061dabb8264383f_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="idf164495df244f839eada511e8dd6586_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i27471c6e5587400a91198519e9ea07aa_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i540db814e238418581c3f762143bc4e6_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ifa0aa1dba5c341f6875d02c968bfe5e8_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i97b432e0e60f4c4abe6ff31d739da965_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:FR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i387d5202ed4f493c92b10a38acfc0b36_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:FR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ib71436cd32294b8595608c3e5043c8c2_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:FR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i42e1c84b9e45497590a00b266e94b06e_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ic355ca56aac34b6e89fc7f98a82d288f_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ie123409994a748808eacb45425e4b967_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i85955310584d4321b4909f4e78a6509e_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ie1a85fd409714c4680d0fdcd8133c6b0_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i0571d0adc93a4f6c8577463a7d1271d5_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i3424c8734bc247d283d8f7ee9792d969_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i1df704cb487d433988240110ffba9b79_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i2e1592132841419194fd5c912083d08e_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i8dcb828e9ef04159bf1cadd45d580f2a_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:NL</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ie72b110c451b4574a22c4449e0e6adfb_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:NL</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="id80ed00b297a4ecb99ebab3fe9226c6f_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:NL</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i20cf1c9a27114877bc07026ffc45e8aa_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:DE</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i34f6b1648a164da3931c00b818f528a3_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:DE</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ib488cce901db40c98e68a90787544861_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:DE</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i6483ee4d964b415286f91bb91c2908bc_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:AU</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i92389c884a274e0fb3bbb45ba068f944_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:AU</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i7132ad0daa6c45729c5b3891a5968b1b_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:AU</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ie5fb7c0c4922417db62f771c171e679c_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">alg:OtherGeographicalAreasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ida2174e360e645aeab3b8ebd578d38ad_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">alg:OtherGeographicalAreasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i4de62983acdb4ec2bea2b8407cda05ae_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">alg:OtherGeographicalAreasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i53e4684044224871825bd23aac41aee3_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ic1938ea617ca4f769c724f1a08e7efc5_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i529fcaeebb904bfdaccd9f21b05b0e4f_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="if0925a1305784f729e9e56ed2c280661_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:NL</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i716dd7aefb954ba687184e1292435465_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:NL</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i90f80b354e6b42c5867a327caee24eeb_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:NL</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="id383d018a3be4e749d23a3a0666ec989_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i1df499325fc7423da4f6d70c56f75ed0_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i1277e58dd79a4c2aa8489ce10cc1192f_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i1095a338cfa94c2ba6be5ecdea6f7482_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i38a74560d41841908eb8dbfab7583864_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ibbc431a0d48c46c4a814fbc93cceeb31_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ie9268b6721bf4d8e950f2c25210811a8_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:FR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i30d5ea028fb64ee68f0494c440e4ba4c_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:FR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i2e092c63d696456a996e87a4b51deb04_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:FR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ia3f71003335d424d971f475b80df2fdb_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ic8f310366b2e444580858a4737d3b4c8_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i8247765dd22e46fe94b851d92480a16a_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ie201b7fa6daa4f13bb7cc014f2d19f4e_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:AU</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ia4570f6a699a4f929c9daba151473653_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:AU</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i1da150c7a78f400cb9f3b178d73ed207_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000897077</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:AU</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>alg:segment</measure>
    </unit>
    <unit id="number">
        <measure>pure</measure>
    </unit>
    <unit id="covenant">
        <measure>alg:covenant</measure>
    </unit>
    <unit id="plan">
        <measure>alg:plan</measure>
    </unit>
    <unit id="employee">
        <measure>alg:employee</measure>
    </unit>
    <unit id="subsidiary">
        <measure>alg:subsidiary</measure>
    </unit>
    <dei:EntityCentralIndexKey
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF80L2ZyYWc6M2RhNGJjZDdmNDc1NGZkNzhjYzdlMWUwOTMwMmJjMWQvdGFibGU6MTUzNGIzYzlhZDllNGU0M2IwZjQxYzMxNWVlMDYxZWIvdGFibGVyYW5nZToxNTM0YjNjOWFkOWU0ZTQzYjBmNDFjMzE1ZWUwNjFlYl8zLTEtMS0xLTYzODg3_2a2e0118-e02c-4baa-9ac2-9435584bc924">0000897077</dei:EntityCentralIndexKey>
    <dei:DocumentFiscalYearFocus
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF80L2ZyYWc6M2RhNGJjZDdmNDc1NGZkNzhjYzdlMWUwOTMwMmJjMWQvdGFibGU6MTUzNGIzYzlhZDllNGU0M2IwZjQxYzMxNWVlMDYxZWIvdGFibGVyYW5nZToxNTM0YjNjOWFkOWU0ZTQzYjBmNDFjMzE1ZWUwNjFlYl80LTEtMS0xLTYzODg3_bfdbb617-9f99-438d-82eb-c6da7b1b6130">2022</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF80L2ZyYWc6M2RhNGJjZDdmNDc1NGZkNzhjYzdlMWUwOTMwMmJjMWQvdGFibGU6MTUzNGIzYzlhZDllNGU0M2IwZjQxYzMxNWVlMDYxZWIvdGFibGVyYW5nZToxNTM0YjNjOWFkOWU0ZTQzYjBmNDFjMzE1ZWUwNjFlYl81LTEtMS0xLTYzODg3_e050029a-9ab2-4ecf-9c6d-3db711a51600">FY</dei:DocumentFiscalPeriodFocus>
    <dei:AmendmentFlag
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF80L2ZyYWc6M2RhNGJjZDdmNDc1NGZkNzhjYzdlMWUwOTMwMmJjMWQvdGFibGU6MTUzNGIzYzlhZDllNGU0M2IwZjQxYzMxNWVlMDYxZWIvdGFibGVyYW5nZToxNTM0YjNjOWFkOWU0ZTQzYjBmNDFjMzE1ZWUwNjFlYl82LTEtMS0xLTYzODg3_ee837fd6-612a-4687-be86-7733fadbd2ec">false</dei:AmendmentFlag>
    <alg:ProductWarrantyAccrualLagPeriod
      contextRef="ic45bfdab6e1e4d28a243163b4189686e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI3OTQ_46274a57-12b5-4685-a7f7-b0ac8eb30cb6">P3M</alg:ProductWarrantyAccrualLagPeriod>
    <alg:ProductWarrantyAccrualLagPeriod
      contextRef="ic45bfdab6e1e4d28a243163b4189686e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI4OTc_461d3e84-85a1-4af0-9172-95baabe6f27b">P3M</alg:ProductWarrantyAccrualLagPeriod>
    <us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtMC0xLTEtNjM4ODc_519b9153-1678-4ae1-96d9-ece32fbc6c3b">http://fasb.org/us-gaap/2022#OtherAssetsNoncurrent</us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtMC0xLTEtNjM4ODc_5e442bd9-e082-43f6-86fc-6dbc895fe9ba">http://fasb.org/us-gaap/2022#OtherAssetsNoncurrent</us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtMC0xLTEtNjM4ODc_54be147c-36db-432e-8216-c265a23c942d">http://fasb.org/us-gaap/2022#AccruedLiabilitiesCurrent</us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtMC0xLTEtNjM4ODc_82079088-df46-459e-bc9c-032b93ad004c">http://fasb.org/us-gaap/2022#AccruedLiabilitiesCurrent</us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtMC0xLTEtNjM4ODc_152d7955-5136-4b3a-93f9-0d42b9c326e3">http://fasb.org/us-gaap/2022#OtherLiabilitiesNoncurrent</us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtMC0xLTEtNjM4ODc_39316545-72e7-4e77-b63e-2caddc622e2e">http://fasb.org/us-gaap/2022#OtherLiabilitiesNoncurrent</us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_9b1bfaa9-100d-4705-a145-bc36daae463f">http://fasb.org/us-gaap/2022#LongTermDebtAndCapitalLeaseObligations</us-gaap:FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_c663b58e-5137-4e83-8879-5ba725887654">http://fasb.org/us-gaap/2022#LongTermDebtAndCapitalLeaseObligationsCurrent</us-gaap:FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_fdd87ed0-80b6-4669-a105-d27b4fbd2dac">http://fasb.org/us-gaap/2022#LongTermDebtAndCapitalLeaseObligations</us-gaap:FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_ffc75352-7531-4c29-bdca-e32d1f2af6f6">http://fasb.org/us-gaap/2022#LongTermDebtAndCapitalLeaseObligationsCurrent</us-gaap:FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <dei:DocumentType
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDQ5_2f0f1c20-e128-4dc3-bd1f-037e4318f0c3">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6MTcyM2Q0YWFiM2Q2NDBmMDhiNmNjMDc3NTMwNTgyOGEvdGFibGVyYW5nZToxNzIzZDRhYWIzZDY0MGYwOGI2Y2MwNzc1MzA1ODI4YV8wLTAtMS0xLTYzODg3_7d7709db-6ce4-474b-a104-bb2960d8e24b">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6MTcyM2Q0YWFiM2Q2NDBmMDhiNmNjMDc3NTMwNTgyOGEvdGFibGVyYW5nZToxNzIzZDRhYWIzZDY0MGYwOGI2Y2MwNzc1MzA1ODI4YV8zLTEtMS0xLTYzODg3L3RleHRyZWdpb246MWUyMGQxYmZmZWE4NDgyNWFlYzNiZGRiNjkyYjc4YjdfMjM_6a3a3dbd-abcd-409f-b9e7-e7175fd2f652">2022-12-31</dei:DocumentPeriodEndDate>
    <dei:CurrentFiscalYearEndDate
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6MTcyM2Q0YWFiM2Q2NDBmMDhiNmNjMDc3NTMwNTgyOGEvdGFibGVyYW5nZToxNzIzZDRhYWIzZDY0MGYwOGI2Y2MwNzc1MzA1ODI4YV8zLTEtMS0xLTYzODg3L3RleHRyZWdpb246MWUyMGQxYmZmZWE4NDgyNWFlYzNiZGRiNjkyYjc4YjdfMjM_4bb006e2-94d4-4e65-ae3a-70c376b91b9b">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentTransitionReport
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6MTcyM2Q0YWFiM2Q2NDBmMDhiNmNjMDc3NTMwNTgyOGEvdGFibGVyYW5nZToxNzIzZDRhYWIzZDY0MGYwOGI2Y2MwNzc1MzA1ODI4YV80LTAtMS0xLTYzODg3_41a89f08-8f76-4005-a5f4-8f78e3d8a695">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDUz_c4398d7b-ac76-45e4-aff3-d8cc690ed162">0-21220</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDUw_48b35bd2-91c8-4ab4-92fb-b38bad004ea8">ALAMO GROUP INC.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6MzczYzE0MmNiMzM1NGI5ZmFlNDQ2MGU1ZjYyYTVhMDUvdGFibGVyYW5nZTozNzNjMTQyY2IzMzU0YjlmYWU0NDYwZTVmNjJhNWEwNV8wLTAtMS0xLTYzODg3_dcd10b6c-1d95-458d-b9d8-6ee7f8bc1ae1">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6MzczYzE0MmNiMzM1NGI5ZmFlNDQ2MGU1ZjYyYTVhMDUvdGFibGVyYW5nZTozNzNjMTQyY2IzMzU0YjlmYWU0NDYwZTVmNjJhNWEwNV8wLTEtMS0xLTYzODg3_89177b58-3e16-4c6c-a759-7f032052d264">74-1621248</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDU3_d444df21-ff00-494e-8a14-9d9fd05505bf">1627 East Walnut</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDU0_ccea99c5-1d4f-4640-aeee-cc88bdbdce33">Seguin</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDQ1_4787b3a5-39aa-4e2f-8c8e-a6a67f10d080">TX</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDUx_6d193091-3cfa-4c82-807e-2cf1c98be369">78155</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDYy_c6c2f548-5e02-4c32-9ba6-1e03cf42d3c4">830</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDU4_ae691f2a-2c4d-4e77-a9c1-3ef805b39332">379-1480</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6ZWVjZGYzMDUyMGEwNGM4YmE3MWI5Y2U3OGFjMWFkNTYvdGFibGVyYW5nZTplZWNkZjMwNTIwYTA0YzhiYTcxYjljZTc4YWMxYWQ1Nl8xLTAtMS0xLTYzODg3_def3c660-432b-422b-89de-71fde9300740">Common Stock, par value$.10 per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6ZWVjZGYzMDUyMGEwNGM4YmE3MWI5Y2U3OGFjMWFkNTYvdGFibGVyYW5nZTplZWNkZjMwNTIwYTA0YzhiYTcxYjljZTc4YWMxYWQ1Nl8xLTEtMS0xLTYzODg3_cb578a7c-c74b-4d55-aeeb-1f9f1c1e9cdc">ALG</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6ZWVjZGYzMDUyMGEwNGM4YmE3MWI5Y2U3OGFjMWFkNTYvdGFibGVyYW5nZTplZWNkZjMwNTIwYTA0YzhiYTcxYjljZTc4YWMxYWQ1Nl8yLTItMS0xLTYzODg3_cafa9e9e-dcde-42ad-87ca-a9272d81d361">NYSE</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDU5_aa6fc533-9c06-48dc-abf7-9a66286edf4e">Yes</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDYw_4a4f75de-7277-4b22-8910-a10f1c1d5674">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDU1_234580a4-e071-451e-bd7f-3e3597776ef5">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDYx_4c864ec5-55f3-480c-b735-09139464d340">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6OWJmZjhiODZiNTQ3NGZmODhhZDMxZjRhYWZjNTUwOTMvdGFibGVyYW5nZTo5YmZmOGI4NmI1NDc0ZmY4OGFkMzFmNGFhZmM1NTA5M18wLTEtMS0xLTYzODg3_dff3b23d-999e-457b-936e-7dea6e82ce4e">Large Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6OWJmZjhiODZiNTQ3NGZmODhhZDMxZjRhYWZjNTUwOTMvdGFibGVyYW5nZTo5YmZmOGI4NmI1NDc0ZmY4OGFkMzFmNGFhZmM1NTA5M18xLTQtMS0xLTYzODg3_6d6d573d-dd28-4299-8ee9-bf1cfd190835">false</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGFibGU6OWJmZjhiODZiNTQ3NGZmODhhZDMxZjRhYWZjNTUwOTMvdGFibGVyYW5nZTo5YmZmOGI4NmI1NDc0ZmY4OGFkMzFmNGFhZmM1NTA5M18yLTQtMS0xLTYzODg3_48d46f71-ec51-4444-b87c-23845b1e53b7">false</dei:EntityEmergingGrowthCompany>
    <dei:IcfrAuditorAttestationFlag
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDUy_570ebf76-f5dd-48e8-8d76-07a5566770a3">true</dei:IcfrAuditorAttestationFlag>
    <dei:EntityShellCompany
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8xNDg0MzQwNjk3ODA0OA_c5110444-55ea-4ba2-9d18-706a40fc7dc2">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat
      contextRef="i8e372fb5454742f6ac912992828f4480_I20220630"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8yNzEw_f138fa59-13e4-42b2-ace7-eafc1bbf4c8e"
      unitRef="usd">1160963116</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="i887f22af95754d37804e79c104c0c635_I20230217"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8yODM1_66dba8a3-f223-4d25-b471-4f5ed4916ea1"
      unitRef="shares">11971477</dei:EntityCommonStockSharesOutstanding>
    <dei:DocumentsIncorporatedByReferenceTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xL2ZyYWc6NGZmNjA4NzI3YTQzNDhkNTg0MWUyNjg2ZTFmM2UyYjAvdGV4dHJlZ2lvbjo0ZmY2MDg3MjdhNDM0OGQ1ODQxZTI2ODZlMWYzZTJiMF8zMDU2_4422c4f5-8ab6-4807-9556-305094a95d27">Portions of the registrant&#x2019;s proxy statement relating to the 2023 Annual Meeting of Stockholders have been incorporated by reference herein in response to Part III.</dei:DocumentsIncorporatedByReferenceTextBlock>
    <dei:AuditorName
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF84Mi9mcmFnOjVkOTA3ZDk2NzhmZDQ0MTNhZDgzOTU2ODA1ZmUyZGFhL3RleHRyZWdpb246NWQ5MDdkOTY3OGZkNDQxM2FkODM5NTY4MDVmZTJkYWFfNDYy_63dd4b12-4307-44fc-af23-36bb49ee3c4d">KPMG LLP</dei:AuditorName>
    <dei:AuditorLocation
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF84Mi9mcmFnOjVkOTA3ZDk2NzhmZDQ0MTNhZDgzOTU2ODA1ZmUyZGFhL3RleHRyZWdpb246NWQ5MDdkOTY3OGZkNDQxM2FkODM5NTY4MDVmZTJkYWFfNDYz_b057f465-b969-4f88-8555-cc88e4f2faad">San Antonio, TX</dei:AuditorLocation>
    <dei:AuditorFirmId
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF84Mi9mcmFnOjVkOTA3ZDk2NzhmZDQ0MTNhZDgzOTU2ODA1ZmUyZGFhL3RleHRyZWdpb246NWQ5MDdkOTY3OGZkNDQxM2FkODM5NTY4MDVmZTJkYWFfNDYx_b84f507c-83f9-4b5b-bb60-403918e8a5b5">185</dei:AuditorFirmId>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQtMi0xLTEtNjM4ODc_1a537fcf-9715-4828-94ff-a827f1590b7d"
      unitRef="usd">47016000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQtNC0xLTEtNjM4ODc_19096f68-1674-4830-942f-c1629833ceac"
      unitRef="usd">42115000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzUtMi0xLTEtNjM4ODc_de0e9861-6ee6-4a25-8e41-f12b01cf17c0"
      unitRef="usd">317581000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzUtNC0xLTEtNjM4ODc_171596af-d562-45e9-b6ac-c77b08b8bce0"
      unitRef="usd">237970000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzYtMi0xLTEtNjM4ODc_d67d55af-ed65-4597-88f9-d619895ee232"
      unitRef="usd">352553000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzYtNC0xLTEtNjM4ODc_fcaacfed-be2e-4848-9787-a37202b52b8f"
      unitRef="usd">320917000</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzgtMi0xLTEtNjM4ODc_5e7588c4-2714-401c-958e-5f0804814184"
      unitRef="usd">9144000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzgtNC0xLTEtNjM4ODc_672de752-e0bf-4eba-ab0c-8e2084638417"
      unitRef="usd">9500000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:IncomeTaxesReceivable
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzktMi0xLTEtNjM4ODc_7ca044c6-33d1-462a-8ead-e5440695612f"
      unitRef="usd">916000</us-gaap:IncomeTaxesReceivable>
    <us-gaap:IncomeTaxesReceivable
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzktNC0xLTEtNjM4ODc_ec6e781e-1327-4016-9a95-3de3bb794b1d"
      unitRef="usd">1666000</us-gaap:IncomeTaxesReceivable>
    <us-gaap:AssetsCurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzEwLTItMS0xLTYzODg3_e311db1d-15ec-477d-b521-eb76559472c0"
      unitRef="usd">727210000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzEwLTQtMS0xLTYzODg3_60c68ce6-8add-49a5-8b2e-866467d79e65"
      unitRef="usd">612168000</us-gaap:AssetsCurrent>
    <alg:RentalEquipmentNet
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzEyLTItMS0xLTYzODg3_885c7cd4-91c8-4a37-aba5-6147ec2e13ab"
      unitRef="usd">33723000</alg:RentalEquipmentNet>
    <alg:RentalEquipmentNet
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzEyLTQtMS0xLTYzODg3_ebdbbf99-3a73-4a0f-afab-4d2b3462b830"
      unitRef="usd">32514000</alg:RentalEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzE0LTItMS0xLTYzODg3_e6a1a3ed-b820-4d2f-a1b3-27659e893ee1"
      unitRef="usd">335078000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzE0LTQtMS0xLTYzODg3_443ba8b4-c059-4d4d-ad36-328ac2a30ae7"
      unitRef="usd">321863000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzE1LTItMS0xLTYzODg3_8eeb5a6e-5fb0-4d78-b4a5-5f5661d84a1e"
      unitRef="usd">180071000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzE1LTQtMS0xLTYzODg3_6c80c372-a639-4079-89e5-f586cc1182c2"
      unitRef="usd">169372000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzE2LTItMS0xLTYzODg3_806ee729-4a30-4667-874a-05c9f3ee6c8c"
      unitRef="usd">155007000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzE2LTQtMS0xLTYzODg3_96f3b512-4525-463f-8dd2-9ce6a504398b"
      unitRef="usd">152491000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization>
    <us-gaap:Goodwill
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzE4LTItMS0xLTYzODg3_c3f35dc1-7883-4720-8ce6-13a15584eda9"
      unitRef="usd">195858000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzE4LTQtMS0xLTYzODg3_e576bc7f-8f97-44c9-b496-2ac1dfa73144"
      unitRef="usd">202406000</us-gaap:Goodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzE5LTItMS0xLTYzODg3_80d291df-acac-4d53-be13-8793f4f4186a"
      unitRef="usd">171341000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzE5LTQtMS0xLTYzODg3_e987c135-7fec-497d-af49-3e44d8c9e69b"
      unitRef="usd">183466000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzIwLTItMS0xLTYzODg3_83e46d9b-eb1e-482e-943e-66b4e27ddbee"
      unitRef="usd">969000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzIwLTQtMS0xLTYzODg3_5099eff2-ee2c-4d3d-8fb0-5ed29ce47f43"
      unitRef="usd">1110000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzIxLTItMS0xLTYzODg3_890f5ea1-d6a5-45be-91cb-2ef0eaaf70ac"
      unitRef="usd">24400000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzIxLTQtMS0xLTYzODg3_7cbf5958-f1d2-40d6-90e0-b5477d0afdf6"
      unitRef="usd">21587000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzIyLTItMS0xLTYzODg3_34b49c83-838d-4aab-b3f6-6a4e9e0be827"
      unitRef="usd">1308508000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzIyLTQtMS0xLTYzODg3_83a95bd6-67c9-4c88-bc6b-152c8c664f43"
      unitRef="usd">1205742000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzI2LTItMS0xLTYzODg3_74512b09-061f-4c0b-b5bb-d4ae9cd0b834"
      unitRef="usd">97537000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzI2LTQtMS0xLTYzODg3_1257b9d3-81e0-48c7-bda3-43ab6fd474e7"
      unitRef="usd">101396000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzI3LTItMS0xLTYzODg3_13dace10-ff15-46fd-942f-739095d02bf5"
      unitRef="usd">6592000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzI3LTQtMS0xLTYzODg3_4f724417-2f9b-4d37-9b08-96fae7c6fe8a"
      unitRef="usd">2613000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzI4LTItMS0xLTYzODg3_5bf9699f-0112-49ae-8456-19caa0867e6d"
      unitRef="usd">71368000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzI4LTQtMS0xLTYzODg3_28c6c659-df49-4625-b1fa-07a05f97ceb2"
      unitRef="usd">73523000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzI5LTItMS0xLTYzODg3_2db745ac-fc1e-4ff3-b293-1f754683874b"
      unitRef="usd">15009000</us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzI5LTQtMS0xLTYzODg3_f6fb4cc7-bb13-4437-bff7-8ca7fdf0402b"
      unitRef="usd">15032000</us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzMxLTItMS0xLTYzODg3_ec3657f9-f675-4298-93b5-083b1883367e"
      unitRef="usd">190506000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzMxLTQtMS0xLTYzODg3_63223ec2-34d5-424c-bcd2-07421fa5cf94"
      unitRef="usd">192564000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzMzLTItMS0xLTYzODg3_73c1779c-190a-471e-b63a-7d13d5a6dbcf"
      unitRef="usd">286943000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzMzLTQtMS0xLTYzODg3_c23a53ba-29d4-4cbe-b9b7-c5bb37f72f13"
      unitRef="usd">254522000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:AccruedIncomeTaxesNoncurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM0LTItMS0xLTYzODg3_3ee04e0b-7655-4a78-8dac-fb438c87cb6b"
      unitRef="usd">3781000</us-gaap:AccruedIncomeTaxesNoncurrent>
    <us-gaap:AccruedIncomeTaxesNoncurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM0LTQtMS0xLTYzODg3_e277eeb5-ed25-4bf7-848b-bc8e64f27673"
      unitRef="usd">4416000</us-gaap:AccruedIncomeTaxesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM2LTItMS0xLTYzODg3_228e6dd1-e649-467a-a243-25906431158c"
      unitRef="usd">23668000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM2LTQtMS0xLTYzODg3_e40e79b9-c199-4ad6-baa1-a01463e1b347"
      unitRef="usd">27119000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM3LTItMS0xLTYzODg3_5b9d526f-2c05-4045-aa0f-4ddb96ee453e"
      unitRef="usd">18250000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM3LTQtMS0xLTYzODg3_e7d928d1-5dca-434a-9bad-1a157f42fa82"
      unitRef="usd">21458000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM5LTAtMS0xLTYzODg3L3RleHRyZWdpb246Y2VmMDM1MGFkNjhhNDUyM2JhYzRjMGVhMTNjNzJhNGJfMTg_3542d67a-affa-4b5c-a4c9-ce4f3fbad0c4"
      unitRef="usdPerShare">0.10</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM5LTAtMS0xLTYzODg3L3RleHRyZWdpb246Y2VmMDM1MGFkNjhhNDUyM2JhYzRjMGVhMTNjNzJhNGJfMTg_defa9df8-cb8c-4477-b2ec-85cf17adc985"
      unitRef="usdPerShare">0.10</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM5LTAtMS0xLTYzODg3L3RleHRyZWdpb246Y2VmMDM1MGFkNjhhNDUyM2JhYzRjMGVhMTNjNzJhNGJfMzI_386b3fe2-6794-4fae-aa70-d6bcca228f16"
      unitRef="shares">20000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM5LTAtMS0xLTYzODg3L3RleHRyZWdpb246Y2VmMDM1MGFkNjhhNDUyM2JhYzRjMGVhMTNjNzJhNGJfMzI_5f469594-ba04-46aa-b91e-4782998ec11e"
      unitRef="shares">20000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM5LTAtMS0xLTYzODg3L3RleHRyZWdpb246Y2VmMDM1MGFkNjhhNDUyM2JhYzRjMGVhMTNjNzJhNGJfNTQ_1f3b2c20-941e-4b90-8854-07d9b90908cc"
      unitRef="shares">11913890</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM5LTAtMS0xLTYzODg3L3RleHRyZWdpb246Y2VmMDM1MGFkNjhhNDUyM2JhYzRjMGVhMTNjNzJhNGJfNjE_3be32128-3aeb-4f17-9461-1cbb8087349e"
      unitRef="shares">11874178</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM5LTItMS0xLTYzODg3_9b15a2fd-9ed6-4e76-a838-eca91e08072c"
      unitRef="usd">1191000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzM5LTQtMS0xLTYzODg3_416b9eed-21b6-4c79-84be-586ec7b5e144"
      unitRef="usd">1187000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQwLTItMS0xLTYzODg3_5e002ec2-1070-4299-babb-9ba425332c63"
      unitRef="usd">129820000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQwLTQtMS0xLTYzODg3_6b042b5b-60ea-4535-a094-0e9b82bcab0b"
      unitRef="usd">124228000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:TreasuryStockShares
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQxLTAtMS0xLTYzODg3L3RleHRyZWdpb246NGVjNTljZDlkYzkxNGMyMjhlYzBhNGY0OWY5ODNkZmFfMjk_7bc05fc1-90c5-4024-a826-a3001efeb918"
      unitRef="shares">82600</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockShares
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQxLTAtMS0xLTYzODg3L3RleHRyZWdpb246NGVjNTljZDlkYzkxNGMyMjhlYzBhNGY0OWY5ODNkZmFfMjk_9369b029-eb20-41c5-9c6f-e985b6083bec"
      unitRef="shares">82600</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockValue
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQxLTItMS0xLTYzODg3_148a68fd-796d-4c4a-97cd-e14d8130acba"
      unitRef="usd">4566000</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQxLTQtMS0xLTYzODg3_e521ad1c-939e-442c-8cb1-31a544bfe985"
      unitRef="usd">4566000</us-gaap:TreasuryStockValue>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQyLTItMS0xLTYzODg3_a83db93d-feaa-464f-976f-94fa41c905b2"
      unitRef="usd">727183000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQyLTQtMS0xLTYzODg3_6f8fff2b-1352-49b0-baf9-d411988fa6e3"
      unitRef="usd">633804000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQzLTItMS0xLTYzODg3_2c89dbe9-4e10-4cda-8093-2b2f96c0ebed"
      unitRef="usd">-68268000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQzLTQtMS0xLTYzODg3_eb81a5fb-e12a-4ae3-b95b-721af0b9cce5"
      unitRef="usd">-48990000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquity
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQ0LTItMS0xLTYzODg3_3a7c718f-a98f-4afe-9a19-7874146df208"
      unitRef="usd">785360000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQ0LTQtMS0xLTYzODg3_62a06ba5-ff9a-48a2-8487-21e410af347e"
      unitRef="usd">705663000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQ1LTItMS0xLTYzODg3_7cfa5608-7708-4011-91ed-b1f40898986c"
      unitRef="usd">1308508000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDYvZnJhZzpkMTg2YzJmYzc4OTM0OTVkODIyYzhjNjY3NjU0ZjQxZC90YWJsZTpjYTFmOThhYjMxMTM0MDY0Yjk3Y2NhNjFjOWZiNzFmNi90YWJsZXJhbmdlOmNhMWY5OGFiMzExMzQwNjRiOTdjY2E2MWM5ZmI3MWY2XzQ1LTQtMS0xLTYzODg3_a6459426-1864-4e64-8d13-89a1ee681c7b"
      unitRef="usd">1205742000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0ff65971f8a344f3afdf75aa25d869f1_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzMtMi0xLTEtNjM4ODc_f0d6b8de-132b-4f4d-aaae-91374a7e4d88"
      unitRef="usd">937065000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if77ec05e8b684280b18475c39a8bf482_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzMtNC0xLTEtNjM4ODc_ce03696c-09e7-4d24-b459-273761bc59b1"
      unitRef="usd">812676000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i513fb2f7accf49ecacbc7116eafbe588_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzMtNi0xLTEtNjM4ODc_b08e91cb-e74f-4e27-92e5-00ceb6b10a7e"
      unitRef="usd">654630000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ibaa2c0aa8b8145e0846cbc65655c330c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzQtMi0xLTEtNjM4ODc_07de9278-0004-4705-882d-0a9c5fd66a28"
      unitRef="usd">576551000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3182e3589e3647f599dbed14ec3a5afe_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzQtNC0xLTEtNjM4ODc_83ff8470-442d-4867-a443-6da31bf73193"
      unitRef="usd">521547000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i36cdf5e00a0245ce92a15de38f5924f4_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzQtNi0xLTEtNjM4ODc_0e45c70d-db1b-424c-b05b-28ab3b066513"
      unitRef="usd">508836000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzYtMi0xLTEtNjM4ODc_e31d0506-0a9f-48bf-b1bd-f0e549fb8c36"
      unitRef="usd">1513616000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzYtNC0xLTEtNjM4ODc_b640eaaf-4a91-42fb-b3da-8c284093d955"
      unitRef="usd">1334223000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzYtNi0xLTEtNjM4ODc_9187fff0-7aa0-4616-b9ad-cb53f87677ea"
      unitRef="usd">1163466000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzctMi0xLTEtNjM4ODc_2596ce9e-556f-49d0-9af5-4e76d0b1cd9f"
      unitRef="usd">1137098000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzctNC0xLTEtNjM4ODc_34f1d9c8-e76f-415d-8095-57ca13d77f88"
      unitRef="usd">999709000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzctNi0xLTEtNjM4ODc_6d6e94d7-9517-43c4-a7fd-d64b4bc7c3c3"
      unitRef="usd">869736000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzgtMi0xLTEtNjM4ODc_d27e7bb4-3586-4d23-a2ca-31017bf49da3"
      unitRef="usd">376518000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzgtNC0xLTEtNjM4ODc_c813c455-7d3c-4436-b046-45d4f4c46447"
      unitRef="usd">334514000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzgtNi0xLTEtNjM4ODc_9e10e3dd-e65e-48d1-832b-7a4c150bf02e"
      unitRef="usd">293730000</us-gaap:GrossProfit>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzEwLTItMS0xLTYzODg3_f52f0c11-3e74-4039-bbd5-6927409aea4a"
      unitRef="usd">212649000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzEwLTQtMS0xLTYzODg3_64e59c55-4d2b-4ba1-a0bf-156c6e346cbc"
      unitRef="usd">202939000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzEwLTYtMS0xLTYzODg3_0ad63eef-83dd-49f6-bf88-ef9c19a3f465"
      unitRef="usd">184199000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:AmortizationOfDeferredCharges
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzExLTItMS0xLTYzODg3_4e785a9e-2405-4e35-afa4-03112d68ead4"
      unitRef="usd">15277000</us-gaap:AmortizationOfDeferredCharges>
    <us-gaap:AmortizationOfDeferredCharges
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzExLTQtMS0xLTYzODg3_797c384d-e2bb-4d9d-99e4-d9112ef131a8"
      unitRef="usd">14637000</us-gaap:AmortizationOfDeferredCharges>
    <us-gaap:AmortizationOfDeferredCharges
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzExLTYtMS0xLTYzODg3_467a389b-297e-4d64-b6bb-e874f6a99ede"
      unitRef="usd">14746000</us-gaap:AmortizationOfDeferredCharges>
    <us-gaap:OperatingIncomeLoss
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE0LTItMS0xLTYzODg3_ec46639d-f85f-4ac6-bb97-f06b03c3b3ee"
      unitRef="usd">148592000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE0LTQtMS0xLTYzODg3_95104458-1103-4cad-92dc-770d24ff292a"
      unitRef="usd">116938000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE0LTYtMS0xLTYzODg3_726ff840-c7af-4f5a-90f4-ddf50e6d8f5d"
      unitRef="usd">94785000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestExpense
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE2LTItMS0xLTYzODg3_f5223f1d-1d0e-42b3-9711-06a49f0126c1"
      unitRef="usd">14361000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE2LTQtMS0xLTYzODg3_1ecc2048-675a-4536-bc0f-8ab4f687c92e"
      unitRef="usd">10533000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE2LTYtMS0xLTYzODg3_81cdb537-244e-4016-83f4-37da28fee72b"
      unitRef="usd">15837000</us-gaap:InterestExpense>
    <us-gaap:InvestmentIncomeInterest
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE3LTItMS0xLTYzODg3_0fbf1f68-f704-4dad-83fe-5ff161d92759"
      unitRef="usd">752000</us-gaap:InvestmentIncomeInterest>
    <us-gaap:InvestmentIncomeInterest
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE3LTQtMS0xLTYzODg3_922f7649-913a-425f-bece-51dd7260823a"
      unitRef="usd">1149000</us-gaap:InvestmentIncomeInterest>
    <us-gaap:InvestmentIncomeInterest
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE3LTYtMS0xLTYzODg3_a875eb22-fe5c-4ba1-86e8-41e441567cf9"
      unitRef="usd">1366000</us-gaap:InvestmentIncomeInterest>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE4LTItMS0xLTYzODg3_d8b1cb22-1e7f-4e41-b062-6c264217466d"
      unitRef="usd">-673000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE4LTQtMS0xLTYzODg3_13544739-16d6-4a5a-89de-748480095619"
      unitRef="usd">1944000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE4LTYtMS0xLTYzODg3_dc4fcd0e-359c-4256-8f6d-1cb165b092ee"
      unitRef="usd">-557000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE5LTItMS0xLTYzODg3_449de8ee-cf39-4547-9a29-ff245f019066"
      unitRef="usd">134310000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE5LTQtMS0xLTYzODg3_62263e8e-90c6-460e-baa3-1c31be7ba743"
      unitRef="usd">109498000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzE5LTYtMS0xLTYzODg3_3399568f-8d45-4bca-82cc-b4c301f35a6f"
      unitRef="usd">79757000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzIxLTItMS0xLTYzODg3_fdb3e006-2397-46e2-84f7-effbe8cde884"
      unitRef="usd">32382000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzIxLTQtMS0xLTYzODg3_87644913-7c2c-427c-bbc0-0e8080a3c171"
      unitRef="usd">29253000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzIxLTYtMS0xLTYzODg3_5197cb2f-134f-48ee-9a6d-0ce7187a18b8"
      unitRef="usd">21953000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzIyLTItMS0xLTYzODg3_d4d28447-b066-471b-a176-316dc55b16bc"
      unitRef="usd">101928000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzIyLTQtMS0xLTYzODg3_f9f14ea3-e7bb-4b2b-a96e-f36dab6a34cf"
      unitRef="usd">80245000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzIyLTYtMS0xLTYzODg3_d6acac98-b6ee-4c54-a015-e2a30d9cb869"
      unitRef="usd">57804000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI1LTItMS0xLTYzODg3_c9c00776-3c92-498c-8701-141090aefb68"
      unitRef="usdPerShare">8.58</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI1LTQtMS0xLTYzODg3_67c4b3d0-8294-457a-b79b-379caf6c59a9"
      unitRef="usdPerShare">6.78</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI1LTYtMS0xLTYzODg3_e5d3aab0-dc33-4e53-84a2-8d6dfd9fc24d"
      unitRef="usdPerShare">4.91</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI2LTItMS0xLTYzODg3_89c4bf6c-7218-4422-bcac-20f193963056"
      unitRef="usdPerShare">8.54</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI2LTQtMS0xLTYzODg3_3365ef31-c072-478c-b6c6-22da28021e7e"
      unitRef="usdPerShare">6.75</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI2LTYtMS0xLTYzODg3_f42712df-a94c-4bc9-853d-311cc44487b9"
      unitRef="usdPerShare">4.88</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI4LTItMS0xLTYzODg3_c52e511e-0874-437d-ab2a-c1323200fbed"
      unitRef="shares">11877000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI4LTQtMS0xLTYzODg3_3a29c59c-2f7b-44c5-9f64-e040c6782a2f"
      unitRef="shares">11837000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI4LTYtMS0xLTYzODg3_7c770988-b2dc-4cc1-96fd-6da0a1162c4e"
      unitRef="shares">11782000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI5LTItMS0xLTYzODg3_c5bf7c85-14fa-43b1-b645-48369ee4703d"
      unitRef="shares">11934000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI5LTQtMS0xLTYzODg3_31617641-3509-418f-8847-0c1f336ce92a"
      unitRef="shares">11896000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMDkvZnJhZzo0YTc0YTRlZjk0MjM0YzI1YjdmYWI2ZTZlNDdkZmRjNC90YWJsZTpkNmYwYjFmNDdiOTI0OWI4YjUwZTIzOTFmODcwZDFhMS90YWJsZXJhbmdlOmQ2ZjBiMWY0N2I5MjQ5YjhiNTBlMjM5MWY4NzBkMWExXzI5LTYtMS0xLTYzODg3_d6b1dd7d-bc95-4511-aeb6-b8ddcae0ebb3"
      unitRef="shares">11845000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:NetIncomeLoss
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzItNC0xLTEtNjM4ODc_8ed2a862-2a42-43ca-9f09-65b7274f3e16"
      unitRef="usd">101928000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzItNi0xLTEtNjM4ODc_411a0a83-673c-4566-9698-286fe7ad7d54"
      unitRef="usd">80245000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzItOC0xLTEtNjM4ODc_680710bc-e604-461e-ba31-a76384b4eaaf"
      unitRef="usd">57804000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzQtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjoyZWU2NzE0M2VkZGI0ZjYxODQ5OWIyNDBiNGRiMDlhZF83Nw_7ca9ab3d-5f50-43df-a608-6759eb44d122"
      unitRef="usd">-1069000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzQtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjoyZWU2NzE0M2VkZGI0ZjYxODQ5OWIyNDBiNGRiMDlhZF84MQ_f4c3f818-cab8-4dd6-880a-0048d8b19168"
      unitRef="usd">344000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzQtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjoyZWU2NzE0M2VkZGI0ZjYxODQ5OWIyNDBiNGRiMDlhZF84OQ_760b3ca2-cb93-42c4-99ab-d3f247c21d2b"
      unitRef="usd">-810000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent>
    <us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzQtNC0xLTEtNjM4ODc_a21d0243-e32c-4766-934d-5b4feffc7e93"
      unitRef="usd">-23032000</us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent>
    <us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzQtNi0xLTEtNjM4ODc_4018bce0-c006-43b3-a2e0-a1ffaa757016"
      unitRef="usd">-15800000</us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent>
    <us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzQtOC0xLTEtNjM4ODc_31e121ef-3b3e-4215-9659-18c0390407bf"
      unitRef="usd">8862000</us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzYtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjpkZjNmZWRlNGM3NTA0NzgxYWFlYjgxZjAxNDRiOWM2OF84OA_89a54faf-b784-4a0e-ab2f-364eaa753af0"
      unitRef="usd">497000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzYtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjpkZjNmZWRlNGM3NTA0NzgxYWFlYjgxZjAxNDRiOWM2OF85Mg_52da8b72-3366-4a5b-8339-01fcbec52bdd"
      unitRef="usd">1405000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzYtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjpkZjNmZWRlNGM3NTA0NzgxYWFlYjgxZjAxNDRiOWM2OF8xMDA_059ade29-63a4-4ef6-93d6-9b0ce12f45c0"
      unitRef="usd">-1842000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzYtNC0xLTEtNjM4ODc_871b7e30-b084-4827-b224-627f25f8e62f"
      unitRef="usd">2047000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzYtNi0xLTEtNjM4ODc_97206d10-5ea9-4daa-8305-d8c4abd77b69"
      unitRef="usd">5298000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzYtOC0xLTEtNjM4ODc_5d480760-46a4-404d-b73e-88216de3a7e1"
      unitRef="usd">-7484000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzctMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo4MzU0MmViNmVkMTQ0MGZmYTkyMmQxM2QyZDQ3ODIxNF8xMDQ_028146f7-7bdc-4fd6-94e0-7b4bd1ac3695"
      unitRef="usd">194000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzctMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo4MzU0MmViNmVkMTQ0MGZmYTkyMmQxM2QyZDQ3ODIxNF8xMDg_004bf464-c5db-49f4-b658-c450d69e8aa6"
      unitRef="usd">356000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzctMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo4MzU0MmViNmVkMTQ0MGZmYTkyMmQxM2QyZDQ3ODIxNF8xMTY_9df70f4c-12c8-4d7c-860b-2a60a72df028"
      unitRef="usd">-230000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax>
    <us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzctNC0xLTEtNjM4ODc_6e7add7d-8616-404d-8ba5-eaac6eedc20c"
      unitRef="usd">-1707000</us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent>
    <us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzctNi0xLTEtNjM4ODc_4dda4466-cb82-4726-87e9-7a190dc95219"
      unitRef="usd">-1838000</us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzEwLTQtMS0xLTYzODg3_55382bd7-8893-4b7c-be24-f7b85813cdf3"
      unitRef="usd">-19278000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzEwLTYtMS0xLTYzODg3_9c614451-4c30-4593-b116-07dd1147b3f6"
      unitRef="usd">-8664000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzEwLTgtMS0xLTYzODg3_8779f572-f90b-4d08-9641-51a034790a3d"
      unitRef="usd">512000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzExLTQtMS0xLTYzODg3_12fbe041-5762-4f44-a54c-b0b69ddf75b0"
      unitRef="usd">82650000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzExLTYtMS0xLTYzODg3_8e6087dc-5280-4931-b901-d9079e2e7b62"
      unitRef="usd">71581000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTIvZnJhZzo0NmRjYTIwMGU5MzE0Nzk0YmNiM2MyOWEyZWQ0NDk1MC90YWJsZTphYzVmMGQxYmJhZWY0MjFlOWY3YzFmN2QyYmRjY2Q2Yy90YWJsZXJhbmdlOmFjNWYwZDFiYmFlZjQyMWU5ZjdjMWY3ZDJiZGNjZDZjXzExLTgtMS0xLTYzODg3_ce60afb7-0814-4dd5-b60b-89d3aa938847"
      unitRef="usd">58316000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:SharesOutstanding
      contextRef="i48e658fbd10f456086edb59193159816_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzItMS0xLTEtNjM4ODc_35ed6d16-66af-4fb1-bf22-63a28a35047f"
      unitRef="shares">11670000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i48e658fbd10f456086edb59193159816_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzItMi0xLTEtNjM4ODc_1b31be55-3d1d-4ddc-9160-ca1ec3d8740c"
      unitRef="usd">1175000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="idfff0fc4e5bf4119bba14d59d225d229_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzItNC0xLTEtNjM4ODc_1c182fee-5b1a-404b-bb8c-6643d2fa18f5"
      unitRef="usd">113666000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i106a5b274aba4c6d889b696421f6d462_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzItNi0xLTEtNjM4ODc_76766448-1341-44f6-9c0a-e26e4fc700c3"
      unitRef="usd">-4566000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i5564749cfaa941a9b9c4d886886c9bc2_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzItOC0xLTEtNjM4ODc_6b691b4a-af2e-43c9-8382-17e9429c1f54"
      unitRef="usd">508506000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i6b5a981954b0422baa6e0bc09771aaf4_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzItMTAtMS0xLTYzODg3_8ec8290c-94b4-48b0-9666-a0dab2ca5953"
      unitRef="usd">-40838000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i418e1db8b7e1486ea4572f36257de9de_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzItMTItMS0xLTYzODg3_9a0efa61-1369-4a85-92ae-26c452b02d60"
      unitRef="usd">577943000</us-gaap:StockholdersEquity>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i44bc7e6d50f24c73a6c3024416870968_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzgtOC0xLTEtNjM4ODc_ddc30a47-9154-4a78-aeaf-f56a498d4d31"
      unitRef="usd">57804000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="ie4e7d0b6ff9343ecb2865f65c12499ce_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzgtMTAtMS0xLTYzODg3_c65bce1e-3fd5-4323-a55a-06c6895cc322"
      unitRef="usd">512000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzgtMTItMS0xLTYzODg3_988f226e-ded6-438f-98a2-335bf32e9928"
      unitRef="usd">58316000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ia7915fed79c644b58899d17704d5719d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzktNC0xLTEtNjM4ODc_d7964470-2d7d-48cc-b838-b127d91e2891"
      unitRef="usd">4119000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzktMTItMS0xLTYzODg3_6528f26d-4106-492f-891c-8614e3edd3aa"
      unitRef="usd">4119000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="ic2896861ae284cbc8784e33f237b15b8_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzEwLTEtMS0xLTYzODg3_487ceef1-b450-4f66-85a2-de2d52c7eec5"
      unitRef="shares">57000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="ic2896861ae284cbc8784e33f237b15b8_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzEwLTItMS0xLTYzODg3_9625b2a0-c721-4ed1-bf10-4bcd6e8b921e"
      unitRef="usd">6000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="ia7915fed79c644b58899d17704d5719d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzEwLTQtMS0xLTYzODg3_ab7fd2e4-903c-4b82-8cee-9c550150e4fc"
      unitRef="usd">743000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzEwLTEyLTEtMS02Mzg4Nw_992e220d-e2db-4f63-b695-78809332fa9a"
      unitRef="usd">749000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzEzLTAtMS0xLTYzODg3L3RleHRyZWdpb246MzYwMzRjNmU3NTcyNDhlZGFiNDc1YmY3YWQxNGRiNjZfMjA_8e9129ab-953b-4645-b119-be1b450d9573"
      unitRef="usdPerShare">0.52</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:DividendsCash
      contextRef="i44bc7e6d50f24c73a6c3024416870968_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzEzLTgtMS0xLTYzODg3_af485ae8-6295-4113-82fc-3e8e7190ab76"
      unitRef="usd">6124000</us-gaap:DividendsCash>
    <us-gaap:DividendsCash
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzEzLTEyLTEtMS02Mzg4Nw_8fa3b233-a4d5-4063-a3ef-ec4f3ce82953"
      unitRef="usd">6124000</us-gaap:DividendsCash>
    <us-gaap:SharesOutstanding
      contextRef="i4b34ed98c2754071a4684bfcab1d4059_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzE0LTEtMS0xLTYzODg3_64c6f577-175c-4c69-8573-c4fc8932a963"
      unitRef="shares">11727000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i4b34ed98c2754071a4684bfcab1d4059_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzE0LTItMS0xLTYzODg3_8c48ec0b-ac01-4b85-9054-c2d880874e1a"
      unitRef="usd">1181000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i54d9a911820d4073a29730b9df2e92c0_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzE0LTQtMS0xLTYzODg3_7fe6ae0b-97a2-4d8f-bcc5-9a60074ff359"
      unitRef="usd">118528000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ie02f87b7278a4b05a734307040b023ae_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzE0LTYtMS0xLTYzODg3_09ee90ed-8c7d-4b70-9422-015faa87c8bb"
      unitRef="usd">-4566000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i70aaf8f3036d4bf8b567c4ab7b4b3578_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzE0LTgtMS0xLTYzODg3_f35a4996-9d98-478f-b750-63ded0569367"
      unitRef="usd">560186000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i8d341c55254649f983daa2187dbb3c28_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzE0LTEwLTEtMS02Mzg4Nw_1ddebb3b-ce69-4757-9ccb-167142ffa4a8"
      unitRef="usd">-40326000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i5d74fc3138934e70861715f06fa062c7_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzE0LTEyLTEtMS02Mzg4Nw_6666a3ec-97e2-4e76-93d9-e23ac4532efc"
      unitRef="usd">635003000</us-gaap:StockholdersEquity>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i841cff3d2384466d8e02cc714034bb6d_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzIwLTgtMS0xLTYzODg3_17b9e69f-f9a4-48b3-8cd7-98824aa6ef94"
      unitRef="usd">80245000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i94acb5b8cf414532a2b46fc4de433694_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzIwLTEwLTEtMS02Mzg4Nw_f23fcb7a-65b7-438d-a456-9fbee5b3e7dd"
      unitRef="usd">-8664000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzIwLTEyLTEtMS02Mzg4Nw_96cbbbd4-2ac5-4689-a614-c9bff0a6cc9a"
      unitRef="usd">71581000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="icce422c6406346e18a3c8ece4f20af69_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzIxLTQtMS0xLTYzODg3_d87c45fb-bd0c-4e1f-b222-39937a2d377c"
      unitRef="usd">5987000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzIxLTEyLTEtMS02Mzg4Nw_77b6add1-6c96-469d-b5e0-ca48c9666dbb"
      unitRef="usd">5987000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i1492e60d49a541618463d2ed72a8cb55_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzIyLTEtMS0xLTYzODg3_af6bfb13-a599-4b3c-b9b6-4a6f1a014b82"
      unitRef="shares">64000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="i1492e60d49a541618463d2ed72a8cb55_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzIyLTItMS0xLTYzODg3_a918f81d-f114-481b-be90-e9397897c939"
      unitRef="usd">6000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="icce422c6406346e18a3c8ece4f20af69_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzIyLTQtMS0xLTYzODg3_36cce910-6342-4de0-b249-71c43ebafd04"
      unitRef="usd">-287000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzIyLTEyLTEtMS02Mzg4Nw_4eb0ed56-9505-41e2-ab24-bbeccf8f9ea8"
      unitRef="usd">-281000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzI1LTAtMS0xLTYzODg3L3RleHRyZWdpb246NTI1MWEzZDE2YTNiNGYwMTljYjAwMTQxYjU0NWNjZmVfMjA_5752cdd9-157c-4867-873b-a41098c7a74a"
      unitRef="usdPerShare">0.56</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:DividendsCash
      contextRef="i841cff3d2384466d8e02cc714034bb6d_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzI1LTgtMS0xLTYzODg3_f5d1351c-331d-44ac-9fcf-55e67a0bb40b"
      unitRef="usd">6627000</us-gaap:DividendsCash>
    <us-gaap:DividendsCash
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzI1LTEyLTEtMS02Mzg4Nw_246488c6-29f2-4cd2-8407-572f7173467a"
      unitRef="usd">6627000</us-gaap:DividendsCash>
    <us-gaap:SharesOutstanding
      contextRef="i1187989f17d7447e820b47bb6d9b9567_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzI2LTEtMS0xLTYzODg3_7a9310bf-07dc-4edd-9a71-9007e9672287"
      unitRef="shares">11791000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i1187989f17d7447e820b47bb6d9b9567_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzI2LTItMS0xLTYzODg3_e2433350-4f8f-4d20-a91a-48e6013ca11f"
      unitRef="usd">1187000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i960c9c28c1b54a86adbc27a79d0d61e1_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzI2LTQtMS0xLTYzODg3_fa778e12-d7f1-4f43-8cac-6700a978fc5c"
      unitRef="usd">124228000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i14d095e48a754e0d84deb55dea0e7534_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzI2LTYtMS0xLTYzODg3_a13a03d8-6df3-4fc5-bddd-17581fba094c"
      unitRef="usd">-4566000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i7ae6563033b64c3fafae6f088fa245ef_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzI2LTgtMS0xLTYzODg3_71575759-37c1-4aba-8510-f9a5270b7a2d"
      unitRef="usd">633804000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i3114f6dde5534997ba147bf29b5ba918_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzI2LTEwLTEtMS02Mzg4Nw_adf5eadd-1b1c-4719-8ca8-b38dd50e8d6a"
      unitRef="usd">-48990000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzI2LTEyLTEtMS02Mzg4Nw_743bf187-0324-4408-9851-fd0821b85de0"
      unitRef="usd">705663000</us-gaap:StockholdersEquity>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i39fb48d3870446bf93d15f60c7d73de6_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzMyLTgtMS0xLTYzODg3_f0e0e39a-78bf-4605-8582-05b941ed7137"
      unitRef="usd">101928000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i3e48d85ced0f4198be5b279ed3c2cf71_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzMyLTEwLTEtMS02Mzg4Nw_308b8ba3-5796-4856-a3ae-aa33939db663"
      unitRef="usd">-19278000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzMyLTEyLTEtMS02Mzg4Nw_975e43cb-6027-4aff-9c1c-033bcad5cc26"
      unitRef="usd">82650000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ida534350511f461cb3aeef03f954f40b_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzMzLTQtMS0xLTYzODg3_9eb3b0ee-755d-4c38-82bd-a5f63036bbea"
      unitRef="usd">5561000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzMzLTEyLTEtMS02Mzg4Nw_85b8f98d-6a73-4ba5-87db-2ddf4deb0b92"
      unitRef="usd">5561000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i22b42d26702846c7afbfed5d7f050f34_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM0LTEtMS0xLTYzODg3_80767b9f-6ca8-4c7d-8c87-ab9fd9f8ee7b"
      unitRef="shares">40000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="i22b42d26702846c7afbfed5d7f050f34_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM0LTItMS0xLTYzODg3_7a5796a2-4337-4b1b-b579-e47c2d1d7984"
      unitRef="usd">4000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="ida534350511f461cb3aeef03f954f40b_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM0LTQtMS0xLTYzODg3_3c412d5f-8d59-4004-afaa-bb452eb50135"
      unitRef="usd">31000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM0LTEyLTEtMS02Mzg4Nw_c5006a18-578d-44c6-93d2-d156b00b6922"
      unitRef="usd">35000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM4LTAtMS0xLTYzODg3L3RleHRyZWdpb246ZTJhZjcxYjliZDkwNDZhN2FhMWY3ZjJjOTZhYjViYzNfMjA_d9861e51-ac4b-4141-be27-a993e3786a66"
      unitRef="usdPerShare">0.72</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:DividendsCash
      contextRef="i39fb48d3870446bf93d15f60c7d73de6_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM4LTgtMS0xLTYzODg3_cb2fe203-96aa-4c5c-95f5-5a7d7bc8a2dd"
      unitRef="usd">8549000</us-gaap:DividendsCash>
    <us-gaap:DividendsCash
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM4LTEyLTEtMS02Mzg4Nw_3ed82031-78ee-49f6-b3d2-3b2e778afaaf"
      unitRef="usd">8549000</us-gaap:DividendsCash>
    <us-gaap:SharesOutstanding
      contextRef="i4c2db2597449494ca1e4c906c5f2f579_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM5LTEtMS0xLTYzODg3_63022c6c-9836-472a-98e4-3c9e0c4829af"
      unitRef="shares">11831000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i4c2db2597449494ca1e4c906c5f2f579_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM5LTItMS0xLTYzODg3_d0f29e25-9f4c-4f91-b218-f4956aab6248"
      unitRef="usd">1191000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ibd1277243f684704b4f9ee8707aed2a0_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM5LTQtMS0xLTYzODg3_94340b83-c410-4e90-90d8-8d656c805056"
      unitRef="usd">129820000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i7a77b0d7f923475a9263322e96150bb1_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM5LTYtMS0xLTYzODg3_6be2df9a-7a2b-42d6-931e-9a0bffa5624d"
      unitRef="usd">-4566000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i19088741b3fd4eba9737feda62eb75f5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM5LTgtMS0xLTYzODg3_f363d91b-f3d4-4965-ab50-4a6e4c70f85e"
      unitRef="usd">727183000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ib613492db2fd4fb0b699d97c44b617be_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM5LTEwLTEtMS02Mzg4Nw_8fff2557-9e11-4c71-b7fa-e83c62751723"
      unitRef="usd">-68268000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTUvZnJhZzoxMzU1YWYxM2ZkNmU0NzBlOWE5MGJmNjdiOTE2ZTI3Yi90YWJsZToyNzRmOGY4YmM1NDM0YjZmYjc5MjNkZmQ5NGIyYzE4ZS90YWJsZXJhbmdlOjI3NGY4ZjhiYzU0MzRiNmZiNzkyM2RmZDk0YjJjMThlXzM5LTEyLTEtMS02Mzg4Nw_247deb05-7ca0-48f9-ad80-c0630e4808e1"
      unitRef="usd">785360000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMtMS0xLTEtNjM4ODc_5b3ba611-d01c-434f-b9bc-127c006b4be1"
      unitRef="usd">101928000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMtMy0xLTEtNjM4ODc_8dd52725-33dc-433d-9edd-762b7cd5ba47"
      unitRef="usd">80245000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMtNS0xLTEtNjM4ODc_ad7f7373-ccd0-4fc0-bd9b-ced119359391"
      unitRef="usd">57804000</us-gaap:NetIncomeLoss>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUtMS0xLTEtNjM4ODc_29a02a57-1755-4fb7-ba62-4fd146a15a51"
      unitRef="usd">424000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUtMy0xLTEtNjM4ODc_1f8d85a7-1f66-434f-acad-cb4850b33279"
      unitRef="usd">506000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUtNS0xLTEtNjM4ODc_f052cf60-e601-44a8-aa56-e49644df9f03"
      unitRef="usd">860000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:Depreciation
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzYtMS0xLTEtNjM4ODc_694aa300-d007-4be4-91e2-1835efe06567"
      unitRef="usd">23673000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzYtMy0xLTEtNjM4ODc_2d8353ea-34bb-47af-a0ac-060c1370e7ce"
      unitRef="usd">21229000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzYtNS0xLTEtNjM4ODc_5e2331d2-a229-4934-9dbe-df18f19db94f"
      unitRef="usd">19264000</us-gaap:Depreciation>
    <us-gaap:EquipmentExpense
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzctMS0xLTEtNjM4ODc_114f2ceb-fde9-4ead-ab4b-d09c02d6b130"
      unitRef="usd">7739000</us-gaap:EquipmentExpense>
    <us-gaap:EquipmentExpense
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzctMy0xLTEtNjM4ODc_856c8984-c8d5-408d-b529-e644e1bfde16"
      unitRef="usd">8613000</us-gaap:EquipmentExpense>
    <us-gaap:EquipmentExpense
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzctNS0xLTEtNjM4ODc_cceb3c8c-1944-4d47-a20c-99117e580dcc"
      unitRef="usd">9830000</us-gaap:EquipmentExpense>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzgtMS0xLTEtNjM4ODc_5c02763e-d153-4718-989f-b867db196992"
      unitRef="usd">15277000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzgtMy0xLTEtNjM4ODc_c666c711-97e8-4163-929b-d22b58ceb98c"
      unitRef="usd">14637000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzgtNS0xLTEtNjM4ODc_9fdca67b-b0f7-4ac0-ab9d-5c55265f5ab4"
      unitRef="usd">14746000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzktMS0xLTEtNjM4ODc_ac2cdbae-1005-49eb-9b1c-6aebdc90bff3"
      unitRef="usd">667000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzktMy0xLTEtNjM4ODc_034db642-4ac7-492e-a12f-49bc2cf08a88"
      unitRef="usd">667000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzktNS0xLTEtNjM4ODc_46494392-c536-447d-abb2-3e5708cc9ef8"
      unitRef="usd">634000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:ShareBasedCompensation
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzEyLTEtMS0xLTYzODg3_f986177b-a4b4-47e9-b9e6-2319884e26e3"
      unitRef="usd">5561000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzEyLTMtMS0xLTYzODg3_7309b5d8-4628-4239-8071-743a5cd3510b"
      unitRef="usd">5987000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzEyLTUtMS0xLTYzODg3_ae4045c0-9ce8-49f3-8dd7-f8871e9ce359"
      unitRef="usd">4119000</us-gaap:ShareBasedCompensation>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE0LTEtMS0xLTYzODg3_c0f8f630-97ee-4446-b881-3f8ed8b66a5e"
      unitRef="usd">-2337000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE0LTMtMS0xLTYzODg3_bb16af1c-509b-458d-a2c4-9db15db371cc"
      unitRef="usd">-1182000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE0LTUtMS0xLTYzODg3_d5e17b10-5905-4d93-907f-d3696ea3c352"
      unitRef="usd">-855000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE1LTEtMS0xLTYzODg3_8d9eee0f-8eac-4bc9-a767-0c1c00f13d5c"
      unitRef="usd">161000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE1LTMtMS0xLTYzODg3_e906181a-4647-434a-aed5-c0d470e98cd7"
      unitRef="usd">3779000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE1LTUtMS0xLTYzODg3_8e0e7534-803d-448a-b384-f8f2a6be706e"
      unitRef="usd">1094000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE4LTEtMS0xLTYzODg3_8ad26a61-05d0-4fed-b25a-eab6bb0a6a34"
      unitRef="usd">85055000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE4LTMtMS0xLTYzODg3_8b9747e7-9a51-465e-9074-5ddbe0bb6561"
      unitRef="usd">27571000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE4LTUtMS0xLTYzODg3_7e8e098e-77fc-4c2b-bdf2-0790c4a54b5a"
      unitRef="usd">-28064000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE5LTEtMS0xLTYzODg3_9c27385f-a10f-463e-ad7d-5d204180f582"
      unitRef="usd">37739000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE5LTMtMS0xLTYzODg3_c3842171-a035-4a1c-80a2-d09ee40aaa55"
      unitRef="usd">78463000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzE5LTUtMS0xLTYzODg3_ad2c23e9-d13d-4bef-83a5-84a359ee386a"
      unitRef="usd">-38275000</us-gaap:IncreaseDecreaseInInventories>
    <alg:IncreaseDecreaseInRentalEquipment
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIwLTEtMS0xLTYzODg3_be67f739-5d72-42b1-aa44-397210d17864"
      unitRef="usd">9196000</alg:IncreaseDecreaseInRentalEquipment>
    <alg:IncreaseDecreaseInRentalEquipment
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIwLTMtMS0xLTYzODg3_546c97f7-a893-443b-9833-a3d0c2614273"
      unitRef="usd">-1138000</alg:IncreaseDecreaseInRentalEquipment>
    <alg:IncreaseDecreaseInRentalEquipment
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIwLTUtMS0xLTYzODg3_20c2b60e-b1ee-462f-b1b3-9847cca9bd92"
      unitRef="usd">-4542000</alg:IncreaseDecreaseInRentalEquipment>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIxLTEtMS0xLTYzODg3_cd8fef7c-fc15-475b-9b47-4c724bd14526"
      unitRef="usd">6146000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIxLTMtMS0xLTYzODg3_bdd7b184-4976-445e-a8f8-d9e1f4c5f0cf"
      unitRef="usd">6994000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIxLTUtMS0xLTYzODg3_5bbd3d7b-67b9-4544-b3b0-57eb017108ab"
      unitRef="usd">-6373000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIyLTEtMS0xLTYzODg3_7d07843a-fbf1-4bd4-aa58-ed93de41d055"
      unitRef="usd">-2879000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIyLTMtMS0xLTYzODg3_d8511b28-bcab-4696-9464-0981471c9ac7"
      unitRef="usd">32532000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIyLTUtMS0xLTYzODg3_90d80c7a-a508-4279-a143-0a602d36d893"
      unitRef="usd">-3783000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIzLTEtMS0xLTYzODg3_50b75ca5-3663-4c6f-ac70-78e63f770246"
      unitRef="usd">2934000</us-gaap:IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIzLTMtMS0xLTYzODg3_a237f52d-b0bb-4219-9ad6-5cf4a590212d"
      unitRef="usd">4648000</us-gaap:IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzIzLTUtMS0xLTYzODg3_c3423593-0a08-4487-9287-f3ba39986a15"
      unitRef="usd">6601000</us-gaap:IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInAccruedTaxesPayable
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI0LTEtMS0xLTYzODg3_f7971a8d-a384-4fea-af3c-79b82052bd40"
      unitRef="usd">-635000</us-gaap:IncreaseDecreaseInAccruedTaxesPayable>
    <us-gaap:IncreaseDecreaseInAccruedTaxesPayable
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI0LTMtMS0xLTYzODg3_23867e86-1fe7-4e38-904e-fd9ba1b84a75"
      unitRef="usd">462000</us-gaap:IncreaseDecreaseInAccruedTaxesPayable>
    <us-gaap:IncreaseDecreaseInAccruedTaxesPayable
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI0LTUtMS0xLTYzODg3_aaf3781b-a909-4318-8b32-c6de2dd84b40"
      unitRef="usd">-3478000</us-gaap:IncreaseDecreaseInAccruedTaxesPayable>
    <us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI1LTEtMS0xLTYzODg3_0e0acf20-1e97-4db0-9f55-c33b1ce3072c"
      unitRef="usd">475000</us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities>
    <us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI1LTMtMS0xLTYzODg3_9b92ce76-0b64-4235-ba9d-c9b3499830b1"
      unitRef="usd">-3008000</us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities>
    <us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI1LTUtMS0xLTYzODg3_d4044989-964b-4cf1-b7a4-4bf2dac75368"
      unitRef="usd">2431000</us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI2LTEtMS0xLTYzODg3_97820100-d564-4bd7-80a3-6bc1c562c03a"
      unitRef="usd">14530000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI2LTMtMS0xLTYzODg3_1626e6bc-c6a2-4212-9bc6-75a57479b618"
      unitRef="usd">49667000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI2LTUtMS0xLTYzODg3_f34245df-2811-46a9-b5d0-ef5021ed4020"
      unitRef="usd">184333000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI5LTEtMS0xLTYzODg3_5a146098-a37f-4dcb-a2e5-892dd301249d"
      unitRef="usd">2000000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI5LTMtMS0xLTYzODg3_9571f12e-53d4-4ca5-a9ec-7facdb255ee9"
      unitRef="usd">17798000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzI5LTUtMS0xLTYzODg3_5febaa44-a593-42a4-9750-055227255810"
      unitRef="usd">0</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMwLTEtMS0xLTYzODg3_5bb2f17c-5835-4849-8e1f-b16ab727fdd6"
      unitRef="usd">31141000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMwLTMtMS0xLTYzODg3_5b22568e-339b-421e-84dd-6d0948165a17"
      unitRef="usd">25263000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMwLTUtMS0xLTYzODg3_3c397f18-df2a-4dc1-834a-a2beac551dcd"
      unitRef="usd">17874000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMxLTEtMS0xLTYzODg3_027e0b0e-f79e-4d45-adad-5a7e7af2f48d"
      unitRef="usd">1566000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMxLTMtMS0xLTYzODg3_ac887e41-92e0-4d18-83d9-8b342378333e"
      unitRef="usd">9667000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMxLTUtMS0xLTYzODg3_29c1791d-d97e-4862-b806-c6fd8f7bc6b2"
      unitRef="usd">3703000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquireIntangibleAssets
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMyLTEtMS0xLTYzODg3_809c756f-86cf-4310-89b5-a01e934d3675"
      unitRef="usd">163000</us-gaap:PaymentsToAcquireIntangibleAssets>
    <us-gaap:PaymentsToAcquireIntangibleAssets
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMyLTMtMS0xLTYzODg3_b5819f21-29b6-4697-a9a7-2db510bbf6b7"
      unitRef="usd">44000</us-gaap:PaymentsToAcquireIntangibleAssets>
    <us-gaap:PaymentsToAcquireIntangibleAssets
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMyLTUtMS0xLTYzODg3_e54db6ba-3fc7-490d-bdcf-46054ecd6ae4"
      unitRef="usd">0</us-gaap:PaymentsToAcquireIntangibleAssets>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMzLTEtMS0xLTYzODg3_5d5f090e-d8eb-47ad-a2fc-1d33980496ed"
      unitRef="usd">-31738000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMzLTMtMS0xLTYzODg3_8c1b347d-2824-4282-8d36-0fa822f59889"
      unitRef="usd">-33438000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzMzLTUtMS0xLTYzODg3_44192a49-2f0a-4095-882d-20e67564208e"
      unitRef="usd">-14171000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromLinesOfCredit
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzM2LTEtMS0xLTYzODg3_765b5d7b-e46b-4cd4-932c-6dff029832ff"
      unitRef="usd">222000000</us-gaap:ProceedsFromLinesOfCredit>
    <us-gaap:ProceedsFromLinesOfCredit
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzM2LTMtMS0xLTYzODg3_cd7eca88-1d17-4a84-a2e6-215361597e4c"
      unitRef="usd">188000000</us-gaap:ProceedsFromLinesOfCredit>
    <us-gaap:ProceedsFromLinesOfCredit
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzM2LTUtMS0xLTYzODg3_e304f9a9-6b2f-4564-ae3e-4f7b8be66e56"
      unitRef="usd">115000000</us-gaap:ProceedsFromLinesOfCredit>
    <us-gaap:RepaymentsOfLinesOfCredit
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzM3LTEtMS0xLTYzODg3_c2dce3ca-7723-48d3-a5b2-2d50fdf91506"
      unitRef="usd">174000000</us-gaap:RepaymentsOfLinesOfCredit>
    <us-gaap:RepaymentsOfLinesOfCredit
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzM3LTMtMS0xLTYzODg3_19bf066a-954d-4fc5-bc8d-82d4a3810a67"
      unitRef="usd">189000000</us-gaap:RepaymentsOfLinesOfCredit>
    <us-gaap:RepaymentsOfLinesOfCredit
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzM3LTUtMS0xLTYzODg3_0033a2d3-54db-4f96-b376-76d06644cdcc"
      unitRef="usd">255000000</us-gaap:RepaymentsOfLinesOfCredit>
    <us-gaap:ProceedsFromRepaymentsOfOtherLongTermDebt
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzM4LTEtMS0xLTYzODg3_8b7a4eb8-90dc-4758-ab4c-70c75f105711"
      unitRef="usd">-15031000</us-gaap:ProceedsFromRepaymentsOfOtherLongTermDebt>
    <us-gaap:ProceedsFromRepaymentsOfOtherLongTermDebt
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzM4LTMtMS0xLTYzODg3_77a5109b-8fe6-4d7c-9463-3962413b4ea4"
      unitRef="usd">-15093000</us-gaap:ProceedsFromRepaymentsOfOtherLongTermDebt>
    <us-gaap:ProceedsFromRepaymentsOfOtherLongTermDebt
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzM4LTUtMS0xLTYzODg3_1017f622-702a-44f5-8fa6-d8ab3190d899"
      unitRef="usd">-18867000</us-gaap:ProceedsFromRepaymentsOfOtherLongTermDebt>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQxLTEtMS0xLTYzODg3_9b526537-20a8-42a9-83f9-bcf2a99d2221"
      unitRef="usd">8549000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQxLTMtMS0xLTYzODg3_7c381c70-0c65-4b1e-9b20-c27178435985"
      unitRef="usd">6627000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQxLTUtMS0xLTYzODg3_709a0df8-2948-466a-9109-528282560683"
      unitRef="usd">6124000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQyLTEtMS0xLTYzODg3_96d7b054-6caf-40db-b4bf-86b6a901be7a"
      unitRef="usd">803000</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQyLTMtMS0xLTYzODg3_b9f35108-7c87-426d-b4bd-5d3b1c2175f0"
      unitRef="usd">1676000</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQyLTUtMS0xLTYzODg3_12b73f6f-1402-492a-8169-0cae112f40dd"
      unitRef="usd">1459000</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ0LTEtMS0xLTYzODg3_978d724e-f609-4a89-84a8-8901415a20fc"
      unitRef="usd">768000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ0LTMtMS0xLTYzODg3_408df30c-d163-40e9-8d1c-6b786fe17523"
      unitRef="usd">1957000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ0LTUtMS0xLTYzODg3_3a98d09d-f3b7-4629-9be5-a39a35e32754"
      unitRef="usd">710000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ2LTEtMS0xLTYzODg3_07030092-b88d-4fe1-ab34-3d0326570b6c"
      unitRef="usd">24455000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ2LTMtMS0xLTYzODg3_d671f543-90f6-4748-9659-f53dce2ae8b9"
      unitRef="usd">-23001000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ2LTUtMS0xLTYzODg3_d2607f6f-4d8f-400c-9276-f9ad3d1d8699"
      unitRef="usd">-164242000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ4LTEtMS0xLTYzODg3_aa77b356-b471-44d9-a807-35f70258ac8c"
      unitRef="usd">-2346000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ4LTMtMS0xLTYzODg3_8e30baaa-8046-43a6-9ce7-d18bab5a710a"
      unitRef="usd">-1308000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ4LTUtMS0xLTYzODg3_874203e6-3bf7-429f-855a-9517177755e3"
      unitRef="usd">1964000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ5LTEtMS0xLTYzODg3_18965a81-269a-4dd2-bc79-7e19459dd798"
      unitRef="usd">4901000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ5LTMtMS0xLTYzODg3_284f5c93-9419-4fb3-9c52-53a11f64a69c"
      unitRef="usd">-8080000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzQ5LTUtMS0xLTYzODg3_bc275a40-c762-4aa7-88df-e1fd8aacb37e"
      unitRef="usd">7884000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUwLTEtMS0xLTYzODg3_127ee8b7-37e0-4fa9-93af-bd735d9ac83a"
      unitRef="usd">42115000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i5d74fc3138934e70861715f06fa062c7_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUwLTMtMS0xLTYzODg3_88902aeb-7184-4767-9929-4c575396898f"
      unitRef="usd">50195000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i418e1db8b7e1486ea4572f36257de9de_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUwLTUtMS0xLTYzODg3_47de28eb-687f-4e66-b53d-1563beb2663b"
      unitRef="usd">42311000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUxLTEtMS0xLTYzODg3_e0e65335-994d-4446-9425-db2e54184add"
      unitRef="usd">47016000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUxLTMtMS0xLTYzODg3_6ef8f860-aeb1-43f0-9136-13361c4047ba"
      unitRef="usd">42115000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i5d74fc3138934e70861715f06fa062c7_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUxLTUtMS0xLTYzODg3_b6e5f426-4680-4242-86ea-cbf9d208cee2"
      unitRef="usd">50195000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:InterestPaidNet
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUzLTEtMS0xLTYzODg3_245048cf-360b-402b-b775-e428133e7a73"
      unitRef="usd">14575000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUzLTMtMS0xLTYzODg3_ce5fed4d-25d3-4a74-8898-3eb2aba75a0a"
      unitRef="usd">10248000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzUzLTUtMS0xLTYzODg3_648e6d1f-c7f7-4f30-a155-680d312dcbf3"
      unitRef="usd">17049000</us-gaap:InterestPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzU0LTEtMS0xLTYzODg3_75dac19e-6f9f-4183-8cf5-8fb457886a60"
      unitRef="usd">35102000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzU0LTMtMS0xLTYzODg3_91cbbe5d-d93d-49d2-b987-0c502f7a170e"
      unitRef="usd">32865000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMTgvZnJhZzo0NGMyNWE1ZjQ0NTY0NjQxYTIyYjk0ZTZkYTliZTEwNy90YWJsZTo5MDIyNDkwNzc5OGY0MTU3OWJjMTMwZmE4NzQ3NWY5NC90YWJsZXJhbmdlOjkwMjI0OTA3Nzk4ZjQxNTc5YmMxMzBmYTg3NDc1Zjk0XzU0LTUtMS0xLTYzODg3_e5807330-2c46-443e-a486-6c014a5147e2"
      unitRef="usd">17140000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:SignificantAccountingPoliciesTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzY0_42ea1b4e-5fe4-411c-ab32-d6450a6f65dc">SIGNIFICANT ACCOUNTING POLICIES&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Description of the Business and Segments&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company manufactures, distributes and services high quality tractor-mounted mowing and other vegetation maintenance equipment, street sweepers, excavators, vacuum trucks, forestry and tree maintenance equipment, snow removal equipment, leaf collection equipment, pothole patchers, zero turn radius mowers, agricultural implements and related aftermarket parts and services.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company manages its business through two principal reporting segments: Vegetation Management and Industrial Equipment, which are discussed in &lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&lt;a href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_178" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Note 18&lt;/a&gt;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Basis of Presentation and Principles of Consolidation&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The accompanying consolidated financial statements include the accounts of Alamo Group Inc. and its subsidiaries (the &#x201c;Company&#x201d; or &#x201c;Alamo Group&#x201d;), all of which are wholly owned. All intercompany accounts and transactions have been eliminated in consolidation.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Use of Estimates&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;The preparation of financial statements in conformity with U.S. Generally Accepted Accounting Principles requires management to make estimates and assumptions that affect the amount of assets, liabilities, revenues, and expenses reported in the financial statements and accompanying notes. Judgments related to asset impairment and certain reserves are particularly subject to change. Actual results could differ from those estimates. Such estimates include, but are not limited to, allowance for doubtful accounts, reserve for sales discounts, estimated realizable value on obsolete and slow-moving inventory, warranty reserve, estimates related to pension accounting, estimates related to fair value for purposes of assessing goodwill, long-lived assets and intangible assets for impairment, estimates related to income taxes, and estimates related to contingencies.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Foreign Currency&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company translates the assets and liabilities of foreign-owned subsidiaries at rates in effect at the end of the year. Revenues and expenses are translated at average rates in effect during the reporting period. Translation adjustments are included in Accumulated other comprehensive income (loss).&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Cash Equivalents&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company considers all highly liquid investments with original maturities of three months or less from the date of purchase to be cash equivalents.  As of December&#160;31, 2022 and December&#160;31, 2021, there was no restricted cash.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Concentrations of Credit Risk&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Financial instruments which potentially subject the Company to concentrations of credit risk consist principally of accounts receivable. The credit risk is limited because of the large numbers and types of customers and their geographic dispersion.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Inventory Valuation&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;Inventories are stated at the lower of cost or net realizable value.&lt;/span&gt;&lt;span style="color:#ee2724;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:107%"&gt;Property, Plant and Equipment&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&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 on the basis of cost. Major renewals and betterments are charged to the property accounts, while replacements, maintenance and repairs, which do not improve or extend the lives of the respective assets, are expensed to the current period. Depreciation is provided at amounts calculated to amortize the cost of the assets over their estimated useful economic lives using the straight-line method.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Impairment of Long-Lived Assets&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Long-lived assets, such as property, plant and equipment, rental equipment, and purchased intangibles subject to amortization, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not be recoverable.  If circumstances require a long-lived asset or asset group to be tested for possible impairment, the Company first compares non-discounted cash flows expected to be generated by that asset group to its carrying amount.  If the carrying amount of the long-lived asset or asset group is not recoverable on a non-discounted cash flow basis, an impairment is recognized to the extent that the carrying amount exceeds fair value.  Fair value is determined through various valuation techniques including discounted cash flow models, quoted market values and third-party independent appraisals, as considered necessary. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Goodwill represents the excess of the purchase price over the estimated fair value of the identifiable net assets acquired. Goodwill is not amortized but is instead tested for impairment at least annually, or whenever events or circumstances change between the annual impairment tests that make it likely that an impairment may have occurred, such as a significant adverse change in the business climate or a decision to sell all or a portion of a reporting unit. The Company performs its annual test for goodwill impairment related to its reporting units on October 1 of each fiscal year. Impairment testing for goodwill is done at the reporting unit level.  A reporting unit is an operating segment or one level below an operating segment (also known as a component).  A component of an operating segment is a reporting unit if the component constitutes a business for which discrete financial information is available, and segment management regularly reviews the operating results of that component. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We perform a qualitative assessment for all of our reporting units to determine whether it is more likely than not that an impairment exists.  Factors considered include macroeconomic, industry and competitive conditions, legal and regulatory environment, historical financial performance and significant changes in the reporting unit. If the qualitative assessment indicates that it is more likely than not that an impairment exists, then a quantitative assessment is performed. Alternatively, we may also bypass the qualitative assessment and go ahead and perform step 1 to determine if the carrying amount exceeds the reporting unit&#x2019;s fair value. If the fair value of the reporting unit is lower than its carrying amount, goodwill is written down for the amount by which the carrying amount exceeds the fair value. However, the loss recognized cannot exceed the carrying amount of goodwill. We typically use discounted cash flow models to determine the fair value of a reporting unit. The assumptions used in these models are consistent with those we believe a hypothetical marketplace participant would use.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;See &lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&lt;a href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_145" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Note 8&lt;/a&gt;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; to the Consolidated Financial Statements for more information regarding goodwill.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;&#160;Intangible Assets&#160;&#160;&#160;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has intangible assets with both definite and indefinite useful lives. The definite-lived assets are trade names and trademarks, customer and dealer relationships, and patents and drawings that are subject to amortization with useful lives ranging from 3 years to 25 years. Impairment of definite-lived assets is discussed as part of the &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Impairment of Long-Lived Assets&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; paragraph above.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The indefinite-lived assets not subject to amortization consist of trade names.  The Company tests its indefinite-lived intangible assets for impairment on an annual basis at year-end, 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 amount. The impairment test consists of comparing the fair value of the indefinite-lived intangible asset, &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;determined using the relief from royalty method, with its carrying amount. An impairment loss would be recognized for the carrying amount in excess of its fair value.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;See &lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&lt;a href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_148" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Note 9&lt;/a&gt;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; to the Consolidated Financial Statements for more information regarding intangible assets.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&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-style:italic;font-weight:700;line-height:95%"&gt;Leases&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We determine if an arrangement is a lease at inception. Operating leases are included in other non-current assets, accrued liabilities, and other long-term liabilities on our consolidated balance sheets. Finance leases are included in property, plant and equipment, accrued liabilities, and other long-term liabilities on our consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ROU assets represent our right to use an underlying asset for the lease term and lease liabilities represent our obligation to make lease payments arising from the lease. Operating lease ROU assets and liabilities are recognized at commencement date based on the present value of lease payments over the lease term. As most of our leases do not provide an implicit rate, we use our incremental borrowing rate based on the information available at commencement date in determining the present value of lease payments. The operating lease ROU asset also includes any lease payments made and excludes lease incentives. Our lease terms may include options to extend or terminate the lease when it is reasonably certain that we will exercise that option. Lease expense for lease payments is recognized on a straight-line basis over the lease term. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have elected to not account for the lease and non-lease components separately for most of our asset classes with the exception of real-estate.  We have also elected to exclude all lease agreements with an initial term of 12 months or less from the lease recognition requirements as allowed by ASC.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;See&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&lt;a href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_151" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Note 10&lt;/a&gt;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; to the Consolidated Financial Statements for more information regarding leases.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Pensions&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company records annual amounts relating to its pension and post-retirement plans based on calculations that incorporate various actuarial and other assumptions, including discount rates, mortality, assumed rates of return, compensation increases, turnover rates and health care cost trend rates. The Company reviews its assumptions on an annual basis and makes modifications to the assumptions based on current rates and trends when it is appropriate to do so. The effect of modifications to those assumptions is recorded in Accumulated other comprehensive income (loss) and amortized to net periodic cost over future periods using the corridor method. The Company believes that the assumptions utilized in recording its obligations under its plans are reasonable based on its experience and market conditions. The net periodic costs are recognized as employees render the services necessary to earn the post-retirement benefits.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Revenue Recognition&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The majority of the Company's revenue is recognized from product sales under contracts with customers. The Company presents two reportable operating segments within its financial statements: Vegetation Management and Industrial Equipment.  Contract terms and performance obligations within each contractual agreement are generally consistent for both divisions, with small differences that do not have a significant impact on the revenue recognition considerations under Topic 606.  Revenues are recognized when we satisfy our performance obligation to transfer product to our customers, which typically occurs at a point in time upon shipment or delivery of the product, and for an amount that reflects the transaction price that is allocated to the performance obligation.  Our contracts with customers state the final terms of sale, including the description, quantity and price for goods sold.  In the normal course of business, we generally do not accept product returns.  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The transaction price is the consideration that we expect to be entitled to in exchange for our products.  Some of our contracts contain variable consideration in the form of sales incentives to our customers, such as discounts and rebates.  For contracts that include variable consideration, we estimate the factors that determine the variable consideration in order to establish the transaction price. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have elected that any taxes collected from customers and remitted to government authorities (i.e., sales tax, use tax, etc.) are excluded from the measurement of the transaction price and therefore are excluded from net sales in the consolidated statements of operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;There are instances where we provide shipping services in relation to the goods sold to our customers.  Shipping and handling costs that occur before the customer obtains control of the goods are deemed to be fulfillment activities and are included in cost of goods sold.  We have elected to account for shipping and handling activities that occur after the customer has obtained control of a good as fulfillment activities (i.e., an expense) rather than as a promised service.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Rental Equipment&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company enters into operating lease agreements with customers related to the rental of certain equipment.  In accounting for these leases, the cost of the equipment purchased or manufactured by the Company is recorded as an asset, and is depreciated over its estimated useful life.  Accumulated depreciation relating to the rental equipment was $22.3 million and $20.1 million on December&#160;31, 2022 and December&#160;31, 2021, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Shipping and Handling Costs&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&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 policy is to include shipping and handling costs in costs of goods sold.&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-style:italic;font-weight:700;line-height:120%"&gt;&#160;&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-style:italic;font-weight:700;line-height:120%"&gt;Advertising&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We charge advertising costs to expense as incurred. Advertising and marketing expense related to operations for fiscal years 2022, 2021, and 2020 was approximately $10.9 million, $10.2 million and $10.1 million, respectively. Advertising and marketing expenses are included in Selling, General and Administrative expenses (&#x201c;SG&amp;amp;A&#x201d;).&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify;text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Research and Development&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Product development and engineering costs charged to SG&amp;amp;A amounted to $14.3 million, $11.7 million, and $12.4 million for the years ended December&#160;31, 2022, 2021, and 2020, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Commitments and Contingencies&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Liabilities for loss contingencies arising from claims, assessments, litigation, fines and penalties and other sources are recorded when it is probable that a liability has been incurred and the amount can be reasonably estimated.  The Company's policy is to accrue for legal costs expected to be incurred in connection with loss contingencies.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Income Taxes&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Deferred tax assets and liabilities are determined based on differences between the financial reporting basis and tax basis of assets and liabilities, and are measured by applying enacted statutory tax rates applicable to the future years in which deferred tax assets or liabilities are expected to be settled or realized. In assessing the realizability of deferred tax assets, management considers whether it is more likely than not that some portion or all of the deferred tax assets will be realized. The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income during the periods in which those temporary differences become deductible. Management considers the scheduled reversals of deferred tax liabilities, projected future taxable income, available tax carrybacks and tax planning strategies in making this assessment other than those which we have reserved. We have elected to treat the global intangible low-taxed income (GILTI) tax as a period expense.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Stock-Based Compensation&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company has granted options to purchase its common stock, restricted stock awards, restricted stock units, and performance stock units to certain employees and directors of the Company and its affiliates under various stock option plans at no less than the fair market value of the underlying stock on the date of grant.&#160; These options are granted for a term not exceeding ten years and are forfeited in the event that the employee or director terminates his or her employment or relationship with the Company or one of its affiliates other than by retirement or death.&#160; These options generally vest over five years.&#160; All option plans contain anti-dilutive provisions that permit an adjustment of the number of shares of the Company&#x2019;s common stock represented by each option for any change in capitalization. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&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 each stock option is estimated on the date of grant using the Black-Scholes valuation method with the following assumptions noted:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;1.&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.67pt"&gt;The risk-free rate is based on the U.S. Treasury rate over the expected life of the option at the time of the grant.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;2.&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.67pt"&gt;The dividend yield is calculated as the ratio of dividends paid per share of common stock to the stock price on the date of the grant.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;3.&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.67pt"&gt;The expected volatility factors are based on the historical movement of the Company&#x2019;s common stock price over the expected life of the option.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;4.&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.67pt"&gt;The expected life is the average length of time in which officers, other employees, and non-employee directors are expected to exercise their options, and which are primarily based on historical experience.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company calculated the fair value for options with the following weighted-average assumptions for 2022, 2021, and 2020:&lt;/span&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:54.455%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.577%"/&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:2.139%"/&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:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.184%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="21" style="border-bottom:1pt solid #000;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;Fair Value Calculation Assumptions for Stock Compensation&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000;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;December 31,&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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="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;2022&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;2021&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;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:9pt"&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:0 1pt"/&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:0 1pt"/&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:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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;Risk-free interest rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1.93&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&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 colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1.25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&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 colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1.22&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&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;/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;Dividend yield&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;0.5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;0.4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;0.5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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;Volatility factors&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;33.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&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 colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;33.9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&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 colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;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;Weighted-average expected life&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.0 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.0 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.0 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Earnings per Common Share (&#x201c;EPS&#x201d;)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Basic EPS is computed using the weighted-average number of common shares outstanding during the year. The treasury stock method is used to compute diluted EPS which gives effect to the potential dilution of earnings that could have occurred if additional shares were issued for awards granted under the Company&#x2019;s incentive stock option plans. The treasury stock method assumes that proceeds obtained upon exercise of awards granted under the incentive stock option plans are used to purchase outstanding common stock at the average market price during the period.&lt;/span&gt;&lt;/div&gt;</us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:NumberOfReportableSegments
      contextRef="ibd895d48ac38440e907abfa04402881f_D20221001-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzUwNQ_b0ee14df-bf01-4dbd-9afb-9a743f26c825"
      unitRef="segment">2</us-gaap:NumberOfReportableSegments>
    <us-gaap:ConsolidationPolicyTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzUw_af6f8988-dbc0-4d4c-b5e0-7fb77766ed7d">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Basis of Presentation and Principles of Consolidation&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The accompanying consolidated financial statements include the accounts of Alamo Group Inc. and its subsidiaries (the &#x201c;Company&#x201d; or &#x201c;Alamo Group&#x201d;), all of which are wholly owned. All intercompany accounts and transactions have been eliminated in consolidation.&lt;/span&gt;&lt;/div&gt;</us-gaap:ConsolidationPolicyTextBlock>
    <us-gaap:UseOfEstimates
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzU4_de52bce2-7d84-4035-852b-01979c00b471">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Use of Estimates&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;The preparation of financial statements in conformity with U.S. Generally Accepted Accounting Principles requires management to make estimates and assumptions that affect the amount of assets, liabilities, revenues, and expenses reported in the financial statements and accompanying notes. Judgments related to asset impairment and certain reserves are particularly subject to change. Actual results could differ from those estimates. Such estimates include, but are not limited to, allowance for doubtful accounts, reserve for sales discounts, estimated realizable value on obsolete and slow-moving inventory, warranty reserve, estimates related to pension accounting, estimates related to fair value for purposes of assessing goodwill, long-lived assets and intangible assets for impairment, estimates related to income taxes, and estimates related to contingencies.&lt;/span&gt;&lt;/div&gt;</us-gaap:UseOfEstimates>
    <us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzU1_aba51eb2-3aa7-4e38-8f97-6edce2c0ce64">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Foreign Currency&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company translates the assets and liabilities of foreign-owned subsidiaries at rates in effect at the end of the year. Revenues and expenses are translated at average rates in effect during the reporting period. Translation adjustments are included in Accumulated other comprehensive income (loss).&lt;/span&gt;&lt;/div&gt;</us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock>
    <us-gaap:CashAndCashEquivalentsPolicyTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzY2_51530417-3fc3-42c7-8aa9-3fb7a35cdc96">Cash EquivalentsThe Company considers all highly liquid investments with original maturities of three months or less from the date of purchase to be cash equivalents.</us-gaap:CashAndCashEquivalentsPolicyTextBlock>
    <us-gaap:RestrictedCash
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzMwNTY_9ff8ac34-4cf5-48a6-a860-31493cdb38d2"
      unitRef="usd">0</us-gaap:RestrictedCash>
    <us-gaap:RestrictedCash
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzMwNTY_e97d4415-a155-41a1-9ccf-d0cf67591c02"
      unitRef="usd">0</us-gaap:RestrictedCash>
    <us-gaap:ConcentrationRiskCreditRisk
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzYw_528274ef-b552-4e7b-8405-e6620e2d78c9">&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Concentrations of Credit Risk&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Financial instruments which potentially subject the Company to concentrations of credit risk consist principally of accounts receivable. The credit risk is limited because of the large numbers and types of customers and their geographic dispersion.&lt;/span&gt;&lt;/div&gt;</us-gaap:ConcentrationRiskCreditRisk>
    <us-gaap:InventoryPolicyTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzQ1_b19c7e76-77c8-452d-a0c0-749a39eff9c8">Inventory ValuationInventories are stated at the lower of cost or net realizable value.</us-gaap:InventoryPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzQ2_f3fe4f1c-84d8-44d9-821f-9de674b51539">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:107%"&gt;Property, Plant and Equipment&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&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 on the basis of cost. Major renewals and betterments are charged to the property accounts, while replacements, maintenance and repairs, which do not improve or extend the lives of the respective assets, are expensed to the current period. Depreciation is provided at amounts calculated to amortize the cost of the assets over their estimated useful economic lives using the straight-line method.&lt;/span&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentPolicyTextBlock>
    <us-gaap:ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzYx_96077ae0-9707-4e95-bba1-84e7da927961">Impairment of Long-Lived AssetsLong-lived assets, such as property, plant and equipment, rental equipment, and purchased intangibles subject to amortization, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not be recoverable.  If circumstances require a long-lived asset or asset group to be tested for possible impairment, the Company first compares non-discounted cash flows expected to be generated by that asset group to its carrying amount.  If the carrying amount of the long-lived asset or asset group is not recoverable on a non-discounted cash flow basis, an impairment is recognized to the extent that the carrying amount exceeds fair value.  Fair value is determined through various valuation techniques including discounted cash flow models, quoted market values and third-party independent appraisals, as considered necessary.</us-gaap:ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock>
    <us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4Nzcw_e9246cfd-bc58-4484-b1cf-5252aba67465">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Goodwill represents the excess of the purchase price over the estimated fair value of the identifiable net assets acquired. Goodwill is not amortized but is instead tested for impairment at least annually, or whenever events or circumstances change between the annual impairment tests that make it likely that an impairment may have occurred, such as a significant adverse change in the business climate or a decision to sell all or a portion of a reporting unit. The Company performs its annual test for goodwill impairment related to its reporting units on October 1 of each fiscal year. Impairment testing for goodwill is done at the reporting unit level.  A reporting unit is an operating segment or one level below an operating segment (also known as a component).  A component of an operating segment is a reporting unit if the component constitutes a business for which discrete financial information is available, and segment management regularly reviews the operating results of that component. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We perform a qualitative assessment for all of our reporting units to determine whether it is more likely than not that an impairment exists.  Factors considered include macroeconomic, industry and competitive conditions, legal and regulatory environment, historical financial performance and significant changes in the reporting unit. If the qualitative assessment indicates that it is more likely than not that an impairment exists, then a quantitative assessment is performed. Alternatively, we may also bypass the qualitative assessment and go ahead and perform step 1 to determine if the carrying amount exceeds the reporting unit&#x2019;s fair value. If the fair value of the reporting unit is lower than its carrying amount, goodwill is written down for the amount by which the carrying amount exceeds the fair value. However, the loss recognized cannot exceed the carrying amount of goodwill. We typically use discounted cash flow models to determine the fair value of a reporting unit. The assumptions used in these models are consistent with those we believe a hypothetical marketplace participant would use.&lt;/span&gt;&lt;/div&gt;</us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy>
    <us-gaap:GoodwillAndIntangibleAssetsIntangibleAssetsPolicy
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4Nzcz_04867662-1a79-4286-ba46-93340ac73e04">Intangible Assets&#160;&#160;&#160;&#160;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has intangible assets with both definite and indefinite useful lives. The definite-lived assets are trade names and trademarks, customer and dealer relationships, and patents and drawings that are subject to amortization with useful lives ranging from 3 years to 25 years. Impairment of definite-lived assets is discussed as part of the &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Impairment of Long-Lived Assets&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; paragraph above.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The indefinite-lived assets not subject to amortization consist of trade names.  The Company tests its indefinite-lived intangible assets for impairment on an annual basis at year-end, 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 amount. The impairment test consists of comparing the fair value of the indefinite-lived intangible asset, &lt;/span&gt;&lt;/div&gt;determined using the relief from royalty method, with its carrying amount. An impairment loss would be recognized for the carrying amount in excess of its fair value.</us-gaap:GoodwillAndIntangibleAssetsIntangibleAssetsPolicy>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="ic45bfdab6e1e4d28a243163b4189686e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzg0ODI_1e292680-d03d-4dad-b925-dc8b00b5e5c6">P3Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="i9f473c4749174271bfd71f93c77ca853_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzg0ODg_89a2bdc9-afa2-491b-b8c2-7d79bbdc20ec">P25Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:LesseeLeasesPolicyTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzUx_99c57512-a5d3-422c-b1f5-3012b703c4ef">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:95%"&gt;Leases&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We determine if an arrangement is a lease at inception. Operating leases are included in other non-current assets, accrued liabilities, and other long-term liabilities on our consolidated balance sheets. Finance leases are included in property, plant and equipment, accrued liabilities, and other long-term liabilities on our consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ROU assets represent our right to use an underlying asset for the lease term and lease liabilities represent our obligation to make lease payments arising from the lease. Operating lease ROU assets and liabilities are recognized at commencement date based on the present value of lease payments over the lease term. As most of our leases do not provide an implicit rate, we use our incremental borrowing rate based on the information available at commencement date in determining the present value of lease payments. The operating lease ROU asset also includes any lease payments made and excludes lease incentives. Our lease terms may include options to extend or terminate the lease when it is reasonably certain that we will exercise that option. Lease expense for lease payments is recognized on a straight-line basis over the lease term. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have elected to not account for the lease and non-lease components separately for most of our asset classes with the exception of real-estate.  We have also elected to exclude all lease agreements with an initial term of 12 months or less from the lease recognition requirements as allowed by ASC.&lt;/span&gt;&lt;/div&gt;Rental EquipmentThe Company enters into operating lease agreements with customers related to the rental of certain equipment.  In accounting for these leases, the cost of the equipment purchased or manufactured by the Company is recorded as an asset, and is depreciated over its estimated useful life.</us-gaap:LesseeLeasesPolicyTextBlock>
    <us-gaap:PensionAndOtherPostretirementPlansPensionsPolicy
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzUy_d88c55eb-2c02-4101-8a22-036290ce5fc5">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Pensions&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company records annual amounts relating to its pension and post-retirement plans based on calculations that incorporate various actuarial and other assumptions, including discount rates, mortality, assumed rates of return, compensation increases, turnover rates and health care cost trend rates. The Company reviews its assumptions on an annual basis and makes modifications to the assumptions based on current rates and trends when it is appropriate to do so. The effect of modifications to those assumptions is recorded in Accumulated other comprehensive income (loss) and amortized to net periodic cost over future periods using the corridor method. The Company believes that the assumptions utilized in recording its obligations under its plans are reasonable based on its experience and market conditions. The net periodic costs are recognized as employees render the services necessary to earn the post-retirement benefits.&lt;/span&gt;&lt;/div&gt;</us-gaap:PensionAndOtherPostretirementPlansPensionsPolicy>
    <us-gaap:RevenueFromContractWithCustomerPolicyTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzY3_c9bdccba-ceeb-4262-9e3a-ff4cd0f6b1eb">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Revenue Recognition&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The majority of the Company's revenue is recognized from product sales under contracts with customers. The Company presents two reportable operating segments within its financial statements: Vegetation Management and Industrial Equipment.  Contract terms and performance obligations within each contractual agreement are generally consistent for both divisions, with small differences that do not have a significant impact on the revenue recognition considerations under Topic 606.  Revenues are recognized when we satisfy our performance obligation to transfer product to our customers, which typically occurs at a point in time upon shipment or delivery of the product, and for an amount that reflects the transaction price that is allocated to the performance obligation.  Our contracts with customers state the final terms of sale, including the description, quantity and price for goods sold.  In the normal course of business, we generally do not accept product returns.  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The transaction price is the consideration that we expect to be entitled to in exchange for our products.  Some of our contracts contain variable consideration in the form of sales incentives to our customers, such as discounts and rebates.  For contracts that include variable consideration, we estimate the factors that determine the variable consideration in order to establish the transaction price. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have elected that any taxes collected from customers and remitted to government authorities (i.e., sales tax, use tax, etc.) are excluded from the measurement of the transaction price and therefore are excluded from net sales in the consolidated statements of operations.&lt;/span&gt;&lt;/div&gt;There are instances where we provide shipping services in relation to the goods sold to our customers.  Shipping and handling costs that occur before the customer obtains control of the goods are deemed to be fulfillment activities and are included in cost of goods sold.  We have elected to account for shipping and handling activities that occur after the customer has obtained control of a good as fulfillment activities (i.e., an expense) rather than as a promised service.</us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <us-gaap:NumberOfReportableSegments
      contextRef="ibd895d48ac38440e907abfa04402881f_D20221001-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzEyMDI5_b0ee14df-bf01-4dbd-9afb-9a743f26c825"
      unitRef="segment">2</us-gaap:NumberOfReportableSegments>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="id956c87fa891446f8832478c415ae209_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE0NDEz_9db3aeba-7fe5-49d8-8fff-d796f3201b21"
      unitRef="usd">22300000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="icc4ff7dd1e9a4f5fbf837842648f304e_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE0NDIw_40797759-3e39-4bcc-bb0b-3b3e46f815d4"
      unitRef="usd">20100000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <alg:RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4Nzcy_701a2765-79f2-4c64-965e-bf5700a42b0d">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Shipping and Handling Costs&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&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 policy is to include shipping and handling costs in costs of goods sold.&lt;/span&gt;&lt;/div&gt;</alg:RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock>
    <us-gaap:AdvertisingCostsPolicyTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzYy_d6fc144c-ba34-4ee1-a847-d95aec45220e">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Advertising&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We charge advertising costs to expense as incurred. Advertising and marketing expense related to operations for fiscal years 2022, 2021, and 2020 was approximately $10.9 million, $10.2 million and $10.1 million, respectively. Advertising and marketing expenses are included in Selling, General and Administrative expenses (&#x201c;SG&amp;amp;A&#x201d;).&lt;/span&gt;&lt;/div&gt;</us-gaap:AdvertisingCostsPolicyTextBlock>
    <us-gaap:AdvertisingExpense
      contextRef="i4a2e4f923a74483fb510a1d4aad2630b_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE0NzQz_87220d8f-599b-48cf-acc9-d9b1e9a3a55e"
      unitRef="usd">10900000</us-gaap:AdvertisingExpense>
    <us-gaap:AdvertisingExpense
      contextRef="i81b7a9ce02d3439b9022865004507986_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE0NzQ3_efffe8c3-8a9a-4a7b-9a5e-3e90d4ac60d1"
      unitRef="usd">10200000</us-gaap:AdvertisingExpense>
    <us-gaap:AdvertisingExpense
      contextRef="ia8717b37bc834a2c90bb4e0d9c8a9ef0_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE0NzU0_c9847c17-ef19-4dc7-8f63-d44ac8fbd918"
      unitRef="usd">10100000</us-gaap:AdvertisingExpense>
    <us-gaap:ResearchAndDevelopmentExpensePolicy
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzUz_e003b1ca-34c4-4ac7-9e4c-418322b051c7">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Research and Development&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Product development and engineering costs charged to SG&amp;amp;A amounted to $14.3 million, $11.7 million, and $12.4 million for the years ended December&#160;31, 2022, 2021, and 2020, respectively.&lt;/span&gt;&lt;/div&gt;</us-gaap:ResearchAndDevelopmentExpensePolicy>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="i4a2e4f923a74483fb510a1d4aad2630b_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE0OTc1_be4875f8-d190-4119-b3da-085d06602e88"
      unitRef="usd">14300000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="i81b7a9ce02d3439b9022865004507986_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE0OTc5_4eddb1a6-1a09-4180-951d-2a09d9113a54"
      unitRef="usd">11700000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="ia8717b37bc834a2c90bb4e0d9c8a9ef0_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE0OTg3_fed66f29-d3ce-4399-9d42-75285b1d8cd1"
      unitRef="usd">12400000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:CommitmentsAndContingenciesPolicyTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzQ3_2257b6f9-4227-4825-a0fb-edd259b27fa6">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Commitments and Contingencies&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Liabilities for loss contingencies arising from claims, assessments, litigation, fines and penalties and other sources are recorded when it is probable that a liability has been incurred and the amount can be reasonably estimated.  The Company's policy is to accrue for legal costs expected to be incurred in connection with loss contingencies.&lt;/span&gt;&lt;/div&gt;</us-gaap:CommitmentsAndContingenciesPolicyTextBlock>
    <us-gaap:IncomeTaxPolicyTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzU5_ec49ab14-aa5c-4fc0-bfba-fcaa0bf7b687">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Income Taxes&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Deferred tax assets and liabilities are determined based on differences between the financial reporting basis and tax basis of assets and liabilities, and are measured by applying enacted statutory tax rates applicable to the future years in which deferred tax assets or liabilities are expected to be settled or realized. In assessing the realizability of deferred tax assets, management considers whether it is more likely than not that some portion or all of the deferred tax assets will be realized. The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income during the periods in which those temporary differences become deductible. Management considers the scheduled reversals of deferred tax liabilities, projected future taxable income, available tax carrybacks and tax planning strategies in making this assessment other than those which we have reserved. We have elected to treat the global intangible low-taxed income (GILTI) tax as a period expense.&lt;/span&gt;&lt;/div&gt;</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzQ4_143e7811-e40e-46a8-ba65-18862219c75d">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Stock-Based Compensation&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company has granted options to purchase its common stock, restricted stock awards, restricted stock units, and performance stock units to certain employees and directors of the Company and its affiliates under various stock option plans at no less than the fair market value of the underlying stock on the date of grant.&#160; These options are granted for a term not exceeding ten years and are forfeited in the event that the employee or director terminates his or her employment or relationship with the Company or one of its affiliates other than by retirement or death.&#160; These options generally vest over five years.&#160; All option plans contain anti-dilutive provisions that permit an adjustment of the number of shares of the Company&#x2019;s common stock represented by each option for any change in capitalization. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&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 each stock option is estimated on the date of grant using the Black-Scholes valuation method with the following assumptions noted:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;1.&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.67pt"&gt;The risk-free rate is based on the U.S. Treasury rate over the expected life of the option at the time of the grant.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;2.&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.67pt"&gt;The dividend yield is calculated as the ratio of dividends paid per share of common stock to the stock price on the date of the grant.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;3.&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.67pt"&gt;The expected volatility factors are based on the historical movement of the Company&#x2019;s common stock price over the expected life of the option.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;4.&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.67pt"&gt;The expected life is the average length of time in which officers, other employees, and non-employee directors are expected to exercise their options, and which are primarily based on historical experience.&lt;/span&gt;&lt;/div&gt;</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod
      contextRef="i9f473c4749174271bfd71f93c77ca853_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE2ODQ3_807c2f91-a6b2-491f-83d9-ef435b970efd">P10Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="ie645f8221895406fbea9037626790faf_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE3MDcy_82beba6b-beb6-4586-81a5-939a72ff6561">P5Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4Nzc0_345598d1-630b-4eca-bcea-c9b00dc02a91">The Company calculated the fair value for options with the following weighted-average assumptions for 2022, 2021, and 2020:&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:54.455%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.577%"/&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:2.139%"/&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:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.184%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="21" style="border-bottom:1pt solid #000;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;Fair Value Calculation Assumptions for Stock Compensation&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000;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;December 31,&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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="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;2022&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;2021&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;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:9pt"&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:0 1pt"/&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:0 1pt"/&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:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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;Risk-free interest rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1.93&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&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 colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1.25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&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 colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1.22&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&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;/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;Dividend yield&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;0.5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;0.4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;0.5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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;Volatility factors&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;33.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&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 colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;33.9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&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 colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;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;Weighted-average expected life&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.0 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.0 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.0 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzQtMi0xLTEtNjM4ODc_6f12c91c-addc-4daf-9da7-8475043d2277"
      unitRef="number">0.0193</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzQtNC0xLTEtNjM4ODc_ea03cfa8-1f1f-4cd0-b122-76bccad7795b"
      unitRef="number">0.0125</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzQtNi0xLTEtNjM4ODc_b6eb5ac4-fdbc-4ae3-ba48-55eb0309fbd4"
      unitRef="number">0.0122</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzUtMi0xLTEtNjM4ODc_77414375-125a-4e2f-b8a5-94771360ea8f"
      unitRef="number">0.005</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzUtNC0xLTEtNjM4ODc_72349529-7617-48ec-99d0-0a29569a1dbd"
      unitRef="number">0.004</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzUtNi0xLTEtNjM4ODc_81adfe91-a2a4-49d7-a92e-11fc9aa73733"
      unitRef="number">0.005</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzYtMi0xLTEtNjM4ODc_b1c441ef-9202-428e-932a-45dde1100ed1"
      unitRef="number">0.332</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzYtNC0xLTEtNjM4ODc_98cf9e46-20bd-4ddd-813d-d29b8c2f74a5"
      unitRef="number">0.339</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzYtNi0xLTEtNjM4ODc_398d0360-5069-41e9-a97f-30781092bf6c"
      unitRef="number">0.300</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzctMi0xLTEtNjM4ODc_07676b60-572c-4048-b7c3-b30f862ef2ec">P8Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzctNC0xLTEtNjM4ODc_0db91bd7-9842-42b9-96ec-fe1dfff785f6">P8Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90YWJsZTplZDk0YzIyOTFkMDQ0ZDA3Yjc5MGY2MjhlYjQxOWU5NC90YWJsZXJhbmdlOmVkOTRjMjI5MWQwNDRkMDdiNzkwZjYyOGViNDE5ZTk0XzctNi0xLTEtNjM4ODc_22600831-74fa-4651-b9db-1049c5883d2d">P8Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:EarningsPerSharePolicyTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjQvZnJhZzplNjhiZDQ2OGRjMzI0ZWUwOWJkZDU3M2I5ZjdhMzk5MS90ZXh0cmVnaW9uOmU2OGJkNDY4ZGMzMjRlZTA5YmRkNTczYjlmN2EzOTkxXzE4NzQ5_5996c41f-571b-4387-b2b2-c2e1d88f6105">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Earnings per Common Share (&#x201c;EPS&#x201d;)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Basic EPS is computed using the weighted-average number of common shares outstanding during the year. The treasury stock method is used to compute diluted EPS which gives effect to the potential dilution of earnings that could have occurred if additional shares were issued for awards granted under the Company&#x2019;s incentive stock option plans. The treasury stock method assumes that proceeds obtained upon exercise of awards granted under the incentive stock option plans are used to purchase outstanding common stock at the average market price during the period.&lt;/span&gt;&lt;/div&gt;</us-gaap:EarningsPerSharePolicyTextBlock>
    <us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjcvZnJhZzo5MWE5ZjMwYzk4NDY0N2IwOTI4ZTZjYjk0ODExOWIyZS90ZXh0cmVnaW9uOjkxYTlmMzBjOTg0NjQ3YjA5MjhlNmNiOTQ4MTE5YjJlXzExNTI_1ab94e17-ef47-4425-820d-20f727d9e9f3">ACCOUNTING PRONOUNCEMENTS&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:107%"&gt;Accounting Pronouncements Not Yet Adopted&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;In September 2022, the FASB issues ASU No. 2022-04, &#x201c;Liabilities&#x2014;Supplier Finance Programs (Subtopic 405-50): Disclosure of Supplier Finance Program Obligations&#x201d;.  The amendments in this Update are effective for are effective for fiscal years beginning after December 15, 202 and require that a buyer in a supplier finance program disclose sufficient information about the program to allow a user of financial statements to understand the program&#x2019;s nature, activity during the period, changes from period to period, and potential magnitude. To achieve this objective, the Company will disclose qualitative and quantitative information about its supplier finance programs.&lt;/span&gt;&lt;/div&gt;</us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMjcvZnJhZzo5MWE5ZjMwYzk4NDY0N2IwOTI4ZTZjYjk0ODExOWIyZS90ZXh0cmVnaW9uOjkxYTlmMzBjOTg0NjQ3YjA5MjhlNmNiOTQ4MTE5YjJlXzExNTQ_9b1b8404-ba46-4561-8b3c-7e5792bc2b2f">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:107%"&gt;Accounting Pronouncements Not Yet Adopted&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;In September 2022, the FASB issues ASU No. 2022-04, &#x201c;Liabilities&#x2014;Supplier Finance Programs (Subtopic 405-50): Disclosure of Supplier Finance Program Obligations&#x201d;.  The amendments in this Update are effective for are effective for fiscal years beginning after December 15, 202 and require that a buyer in a supplier finance program disclose sufficient information about the program to allow a user of financial statements to understand the program&#x2019;s nature, activity during the period, changes from period to period, and potential magnitude. To achieve this objective, the Company will disclose qualitative and quantitative information about its supplier finance programs.&lt;/span&gt;&lt;/div&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:BusinessCombinationDisclosureTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzAvZnJhZzphZmM4NGNhMDhmYWE0N2JlYWZiYWUyYjZlMGUzYzM4ZS90ZXh0cmVnaW9uOmFmYzg0Y2EwOGZhYTQ3YmVhZmJhZTJiNmUwZTNjMzhlXzcyNg_ef594dab-cf7a-45aa-9b41-c69ef4089265">BUSINESS COMBINATIONS&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On October 26, 2021, the Company acquired 100% of the issued and outstanding equity interests of Timberwolf Limited (&#x201c;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Timberwolf&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x201d;). &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt; Timberwolf&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; manufactures a broad range of commercial wood chippers, primarily serving markets in the U.K. and the European Union.  The primary reason for the &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Timberwolf&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; acquisition was to enhance the Company's forestry and tree care platform for growth by increasing both the Company's product portfolio and capabilities in the European market.  The acquisition price was approximately $25.0&#160;million. The Company has included the operating results of &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Timberwolf&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; in its consolidated financial statements since the date of acquisition, these results are considered immaterial.&lt;/span&gt;</us-gaap:BusinessCombinationDisclosureTextBlock>
    <us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired
      contextRef="idbd5d2e161fe40df8aef073e0d3c8443_I20211026"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzAvZnJhZzphZmM4NGNhMDhmYWE0N2JlYWZiYWUyYjZlMGUzYzM4ZS90ZXh0cmVnaW9uOmFmYzg0Y2EwOGZhYTQ3YmVhZmJhZTJiNmUwZTNjMzhlXzcz_dd6666a5-000b-4a09-9423-17de549ce630"
      unitRef="number">1</us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="id62d12deb6a04e47bc668cc97fa66db1_D20211026-20211026"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzAvZnJhZzphZmM4NGNhMDhmYWE0N2JlYWZiYWUyYjZlMGUzYzM4ZS90ZXh0cmVnaW9uOmFmYzg0Y2EwOGZhYTQ3YmVhZmJhZTJiNmUwZTNjMzhlXzU0Nw_3cfd7fa2-6dea-4305-89c0-7e1568c4935d"
      unitRef="usd">25000000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:EarningsPerShareTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90ZXh0cmVnaW9uOjYzY2MxMThmMzljOTQxNTA4MzE0YmQyZGVkYWFjOGY4XzQ1OA_9372472d-a50c-4213-a733-140422ce5ac1">EARNINGS PER SHARE&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;text-indent:18pt"&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 reconciliation from basic to diluted average common shares and the calculations of net income per common share. Net income for basic and diluted calculations does not differ.&lt;/span&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:53.900%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.194%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:5.958%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.194%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:5.958%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.196%"/&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-weight:400;line-height:100%"&gt;(in thousands, except per share amounts)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="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;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: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="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;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:9pt"&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:0 1pt"/&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:0 1pt"/&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:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net income&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;101,928&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;80,245&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;57,804&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Average common shares:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Basic (weighted-average outstanding shares)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,877&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,782&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Dilutive potential common shares from stock&#160;options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;57&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;59&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;63&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Diluted (weighted-average outstanding shares)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;11,934&#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;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;11,896&#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;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;11,845&#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:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Basic earnings per share&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.58&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6.78&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4.91&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Diluted earnings per share&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.54&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6.75&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4.88&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; Stock options totaling 25,610 shares in 2022, 15,586 shares in 2021, and 9,864 shares in 2020 were not included in the diluted earnings per share calculation because the effect would have been anti-dilutive.&lt;/span&gt;&lt;/div&gt;</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90ZXh0cmVnaW9uOjYzY2MxMThmMzljOTQxNTA4MzE0YmQyZGVkYWFjOGY4XzQ2MA_de01980a-f3e3-4607-8b0d-815e81cf05dd">The following table sets forth the reconciliation from basic to diluted average common shares and the calculations of net income per common share. Net income for basic and diluted calculations does not differ.&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:53.900%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.194%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:5.958%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.194%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:5.958%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.196%"/&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-weight:400;line-height:100%"&gt;(in thousands, except per share amounts)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="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;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: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="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;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:9pt"&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:0 1pt"/&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:0 1pt"/&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:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net income&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;101,928&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;80,245&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;57,804&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Average common shares:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Basic (weighted-average outstanding shares)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,877&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,782&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Dilutive potential common shares from stock&#160;options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;57&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;59&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;63&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Diluted (weighted-average outstanding shares)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;11,934&#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;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;11,896&#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;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;11,845&#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:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Basic earnings per share&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.58&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6.78&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4.91&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Diluted earnings per share&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.54&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6.75&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4.88&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzItMS0xLTEtNjM4ODc_c685709a-052b-4d45-86d6-2bc9249847d4"
      unitRef="usd">101928000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzItMy0xLTEtNjM4ODc_59576dbd-4f49-4bd9-b1d6-8dee5858bbf2"
      unitRef="usd">80245000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzItNS0xLTEtNjM4ODc_6112817b-81f7-4c04-b4ad-ef25dd5a876b"
      unitRef="usd">57804000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzUtMS0xLTEtNjM4ODc_c52e511e-0874-437d-ab2a-c1323200fbed"
      unitRef="shares">11877000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzUtMy0xLTEtNjM4ODc_3a29c59c-2f7b-44c5-9f64-e040c6782a2f"
      unitRef="shares">11837000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzUtNS0xLTEtNjM4ODc_7c770988-b2dc-4cc1-96fd-6da0a1162c4e"
      unitRef="shares">11782000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzYtMS0xLTEtNjM4ODc_5723fe25-4d08-4dd2-8999-38c5e1df4ed9"
      unitRef="shares">57000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzYtMy0xLTEtNjM4ODc_e8fabd99-5e15-4452-8920-76374d4f837c"
      unitRef="shares">59000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzYtNS0xLTEtNjM4ODc_35ee2b7d-ef55-4045-908b-26d549ce9616"
      unitRef="shares">63000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzctMS0xLTEtNjM4ODc_c5bf7c85-14fa-43b1-b645-48369ee4703d"
      unitRef="shares">11934000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzctMy0xLTEtNjM4ODc_31617641-3509-418f-8847-0c1f336ce92a"
      unitRef="shares">11896000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzctNS0xLTEtNjM4ODc_d6b1dd7d-bc95-4511-aeb6-b8ddcae0ebb3"
      unitRef="shares">11845000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzktMS0xLTEtNjM4ODc_c9c00776-3c92-498c-8701-141090aefb68"
      unitRef="usdPerShare">8.58</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzktMy0xLTEtNjM4ODc_67c4b3d0-8294-457a-b79b-379caf6c59a9"
      unitRef="usdPerShare">6.78</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzktNS0xLTEtNjM4ODc_e5d3aab0-dc33-4e53-84a2-8d6dfd9fc24d"
      unitRef="usdPerShare">4.91</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzExLTEtMS0xLTYzODg3_89c4bf6c-7218-4422-bcac-20f193963056"
      unitRef="usdPerShare">8.54</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzExLTMtMS0xLTYzODg3_3365ef31-c072-478c-b6c6-22da28021e7e"
      unitRef="usdPerShare">6.75</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90YWJsZTo4NTlhNWRlM2IxMjM0NWQ5ODA0YWIyOTE1NWFjMjEyNy90YWJsZXJhbmdlOjg1OWE1ZGUzYjEyMzQ1ZDk4MDRhYjI5MTU1YWMyMTI3XzExLTUtMS0xLTYzODg3_f42712df-a94c-4bc9-853d-311cc44487b9"
      unitRef="usdPerShare">4.88</us-gaap:EarningsPerShareDiluted>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90ZXh0cmVnaW9uOjYzY2MxMThmMzljOTQxNTA4MzE0YmQyZGVkYWFjOGY4XzI2OA_0a7a22a0-3e2c-4841-a7a7-8d534e4a9204"
      unitRef="shares">25610</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90ZXh0cmVnaW9uOjYzY2MxMThmMzljOTQxNTA4MzE0YmQyZGVkYWFjOGY4XzI4NQ_c03168e2-ba86-4775-b7c5-bea1c9110542"
      unitRef="shares">15586</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzMvZnJhZzo2M2NjMTE4ZjM5Yzk0MTUwODMxNGJkMmRlZGFhYzhmOC90ZXh0cmVnaW9uOjYzY2MxMThmMzljOTQxNTA4MzE0YmQyZGVkYWFjOGY4XzMwNg_e3f5a445-5577-41f7-8b12-45c9c3a1926f"
      unitRef="shares">9864</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzMwNjU_6f7c6178-f3f9-44ab-8aff-a4929097b802">VALUATION AND QUALIFYING ACCOUNTS&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Valuation and qualifying accounts included the following:&lt;/span&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:30.186%"/&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:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.431%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.133%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.431%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.016%"/&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;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="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:9pt;font-weight:700;line-height:100%"&gt;Balance&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:700;line-height:100%"&gt;Beginning of&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:700;line-height:100%"&gt;Year&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="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:9pt;font-weight:700;line-height:100%"&gt;Net&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:700;line-height:100%"&gt;Charged to&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:700;line-height:100%"&gt;Costs and&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:700;line-height:100%"&gt;Expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="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:9pt;font-weight:700;line-height:100%"&gt;&#160;Translations,&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:700;line-height:100%"&gt;Reclassifications&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:700;line-height:100%"&gt;and Acquisitions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="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:9pt;font-weight:700;line-height:100%"&gt;&#160;Net Write-Offs or&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:700;line-height:100%"&gt;Discounts Taken&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="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:9pt;font-weight:700;line-height:100%"&gt;Balance&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:700;line-height:100%"&gt;End of&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:700;line-height:100%"&gt;Year&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="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:9pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="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:9pt;font-weight:400;line-height:100%"&gt;&#160;&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:#def3c0;padding: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;Reserve for sales discounts&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;12,567&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;137,553&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;(21)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;(130,238)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;19,861&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:9pt;font-weight:400;line-height:100%"&gt;Reserve for inventory obsolescence&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;12,908&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;6,998&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;(277)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;(6,420)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;13,209&#160;&lt;/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:#def3c0;padding: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;Reserve for warranty&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;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,953&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;11,290&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(244)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(11,659)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,340&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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;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:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&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:#def3c0;padding: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;Reserve for sales discounts&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;13,549&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;116,114&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;(688)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;(116,408)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;12,567&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:9pt;font-weight:400;line-height:100%"&gt;Reserve for inventory obsolescence&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;12,027&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;6,531&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;(146)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;(5,504)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,908&#160;&lt;/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:#def3c0;padding: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;Reserve for warranty&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;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,096&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;10,727&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,738)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,953&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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;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:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&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:#def3c0;padding: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;Reserve for sales discounts&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;16,883&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;93,398&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;(96,747)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;13,549&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:9pt;font-weight:400;line-height:100%"&gt;Reserve for inventory obsolescence&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;8,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;4,609&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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,471&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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,286)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,027&#160;&lt;/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:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%"&gt;Reserve for warranty&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%"&gt;10,249&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%"&gt;8,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%"&gt;247&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%"&gt;(9,866)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%"&gt;9,096&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom: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&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Sales Discounts&lt;/span&gt;&lt;/div&gt;&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%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;On December&#160;31, 2022, the Company had $19.9 million in reserves for sales discounts compared to $12.6 million on December&#160;31, 2021 on product shipped to our customers under various promotional programs. The most common programs provide a discount when the customer pays within a specified period of time. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The Company reviews the reserve quarterly based on analysis made on each program outstanding at the time. The cost of these discounts is estimated based on historical experience and known changes in promotional programs and is reported as a reduction to sales when the product sale is recognized. The reserve is adjusted if discounts paid differ from those estimated. Historically, those adjustments have not been material.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Reserve for Inventory Obsolescence &lt;/span&gt;&lt;/div&gt;&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%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="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:112%"&gt;We value inventories at the lower of the cost of inventory or net realizable value. As needed, we record an inventory valuation adjustment for excess, slow moving, and obsolete inventory that is equal to the excess of the cost of the inventory over the estimated net realizable value. The inventory valuation adjustment to net realizable value establishes a new cost basis of the inventory that cannot be subsequently reversed. Such inventory valuation adjustments for excess, obsolete, and slow moving inventory are not reduced or removed until the product is sold or disposed of.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company had a reserve of $13.2 million on December&#160;31, 2022 and $12.9 million on December&#160;31, 2021 to cover obsolete and slow moving inventory. The increase in the reserve was primarily attributable to the Company's Industrial Equipment Division. The reserve for inventory obsolescence  is calculated as follows: 1) no inventory usage over a three-year period is deemed obsolete and reserved at 100%; and 2) slow moving inventory with little usage requires a 100% reserve on items that have a quantity greater than a three-year supply. There are exceptions to the obsolete and slow moving classifications if approved by an officer of the Company, based on specific identification of an item or items that are deemed to be either included or excluded from this classification. In cases where there is no historical data, management makes a judgment based on a specific review of the inventory in question to determine what reserves, if any, are appropriate. New products or parts are generally excluded from the reserve until a three-year history has been established.&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;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Warranty&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&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 warranty policy is generally to provide its customers warranty for up to one year on all wholegood units and 90 days on parts, though some components can have warranty for longer terms.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Warranty reserve, as a percentage of sales, is generally calculated by looking at the current twelve months&#x2019; expenses and prorating that amount based on twelve months&#x2019; sales with a &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI3OTQ_46274a57-12b5-4685-a7f7-b0ac8eb30cb6"&gt;three&lt;/span&gt; to six month lag period. The Company&#x2019;s historical experience is that an end-user takes approximately &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI4OTc_461d3e84-85a1-4af0-9172-95baabe6f27b"&gt;three&lt;/span&gt; to six months from the receipt of the unit to file a warranty claim.&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;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The current liability warranty reserve balance was $9.3 million on December&#160;31, 2022 and $10.0 million on December&#160;31, 2021 and is included in &lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&lt;a href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_157" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Note 11&lt;/a&gt;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;.&lt;/span&gt;&lt;/div&gt;</us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock>
    <alg:ScheduleOfValuationAndQualifyingAccountsTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzMwNjg_061f5ab0-d363-4bda-a80c-69b76fe6d36a">&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Valuation and qualifying accounts included the following:&lt;/span&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:30.186%"/&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:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.431%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.133%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.431%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.016%"/&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;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="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:9pt;font-weight:700;line-height:100%"&gt;Balance&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:700;line-height:100%"&gt;Beginning of&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:700;line-height:100%"&gt;Year&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="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:9pt;font-weight:700;line-height:100%"&gt;Net&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:700;line-height:100%"&gt;Charged to&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:700;line-height:100%"&gt;Costs and&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:700;line-height:100%"&gt;Expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="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:9pt;font-weight:700;line-height:100%"&gt;&#160;Translations,&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:700;line-height:100%"&gt;Reclassifications&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:700;line-height:100%"&gt;and Acquisitions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="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:9pt;font-weight:700;line-height:100%"&gt;&#160;Net Write-Offs or&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:700;line-height:100%"&gt;Discounts Taken&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="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:9pt;font-weight:700;line-height:100%"&gt;Balance&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:700;line-height:100%"&gt;End of&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:700;line-height:100%"&gt;Year&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="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:9pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="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:9pt;font-weight:400;line-height:100%"&gt;&#160;&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:#def3c0;padding: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;Reserve for sales discounts&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;12,567&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;137,553&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;(21)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;(130,238)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;19,861&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:9pt;font-weight:400;line-height:100%"&gt;Reserve for inventory obsolescence&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;12,908&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;6,998&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;(277)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;(6,420)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;13,209&#160;&lt;/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:#def3c0;padding: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;Reserve for warranty&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;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,953&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;11,290&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(244)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(11,659)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,340&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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;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:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&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:#def3c0;padding: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;Reserve for sales discounts&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;13,549&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;116,114&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;(688)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;(116,408)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;12,567&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:9pt;font-weight:400;line-height:100%"&gt;Reserve for inventory obsolescence&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;12,027&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;6,531&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;(146)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;(5,504)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,908&#160;&lt;/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:#def3c0;padding: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;Reserve for warranty&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;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,096&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;10,727&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,738)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,953&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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;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:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&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:#def3c0;padding: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;Reserve for sales discounts&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;16,883&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;93,398&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;(96,747)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;13,549&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:9pt;font-weight:400;line-height:100%"&gt;Reserve for inventory obsolescence&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;8,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;4,609&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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,471&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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,286)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,027&#160;&lt;/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:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%"&gt;Reserve for warranty&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%"&gt;10,249&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%"&gt;8,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%"&gt;247&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%"&gt;(9,866)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom: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:9pt;font-weight:400;line-height:100%"&gt;9,096&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</alg:ScheduleOfValuationAndQualifyingAccountsTableTextBlock>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="ia9823408724d4000926edbb1d190feae_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzMtMS0xLTEtNjM4ODc_fa7c2afd-d49c-4a4a-9b67-78f619a76bcd"
      unitRef="usd">12567000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="ifb1091d992d44cf0b0f9802926f1c066_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzMtMy0xLTEtNjM4ODc_3c8683b1-ffcf-463a-9ddb-3a860084984d"
      unitRef="usd">137553000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesAdjustments
      contextRef="ifb1091d992d44cf0b0f9802926f1c066_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzMtNi0xLTEtNjM4ODc_2f3f7ae5-1661-4050-8c33-5197b028934d"
      unitRef="usd">-21000</us-gaap:ValuationAllowancesAndReservesAdjustments>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="ifb1091d992d44cf0b0f9802926f1c066_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzMtOS0xLTEtNjM4ODc_3a4abc21-8a91-4335-861c-c27ac5951020"
      unitRef="usd">130238000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="ibd755e8236cd4991b0c03464ecd075e5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzMtMTEtMS0xLTYzODg3_830720b8-81b0-4be6-b48d-b6511441aa71"
      unitRef="usd">19861000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i2c251835505847ab9f8b8275a364aaf6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzQtMS0xLTEtNjM4ODc_9b08cf4b-d86a-47ff-b5a4-5cddec1e3d5a"
      unitRef="usd">12908000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="i0877b31f3bfe4be2940855869417e0ff_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzQtMy0xLTEtNjM4ODc_8cf961de-6d4f-491e-9ed9-73a6daf5deec"
      unitRef="usd">6998000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesAdjustments
      contextRef="i0877b31f3bfe4be2940855869417e0ff_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzQtNi0xLTEtNjM4ODc_777eb942-fab2-4685-a350-925a081ddffb"
      unitRef="usd">-277000</us-gaap:ValuationAllowancesAndReservesAdjustments>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="i0877b31f3bfe4be2940855869417e0ff_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzQtOS0xLTEtNjM4ODc_54f34219-a4fb-4db5-a367-4ed8efdea681"
      unitRef="usd">6420000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i6e0321a33def419ba2273d3fe76c9e9a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzQtMTEtMS0xLTYzODg3_afaceede-0c53-489b-a38c-c18d98c83eb7"
      unitRef="usd">13209000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i7fc12cd1cf6643658925beb572783f63_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzUtMS0xLTEtNjM4ODc_39a1f767-d129-46ce-a9e5-dd93ddd411e8"
      unitRef="usd">9953000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="i278b14acd71a4ef888de09487a900f94_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzUtMy0xLTEtNjM4ODc_9c571519-9157-4ebd-955c-c04fd8de7b57"
      unitRef="usd">11290000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesAdjustments
      contextRef="i278b14acd71a4ef888de09487a900f94_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzUtNi0xLTEtNjM4ODc_6783afcc-df8a-4492-9b87-f7481f7832ed"
      unitRef="usd">-244000</us-gaap:ValuationAllowancesAndReservesAdjustments>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="i278b14acd71a4ef888de09487a900f94_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzUtOS0xLTEtNjM4ODc_5e823e42-39ed-4416-bcec-d2633d27c1fe"
      unitRef="usd">11659000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i327013052a5348e58d6206072d5a7c00_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzUtMTEtMS0xLTYzODg3_7e5350b7-406f-4d51-af43-067650e256e7"
      unitRef="usd">9340000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i10fd44437faf49d8a71d549da1958cff_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzgtMS0xLTEtNjM4ODc_2dbc26da-53b3-4166-92f5-8d7829fe52d9"
      unitRef="usd">13549000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="i628b14e273ef4667875cefb44919b448_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzgtMy0xLTEtNjM4ODc_e235d217-2819-4be9-a329-5fc531c9d756"
      unitRef="usd">116114000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesAdjustments
      contextRef="i628b14e273ef4667875cefb44919b448_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzgtNi0xLTEtNjM4ODc_b43c0ae8-4470-49c5-9d5d-efdeb78fa35a"
      unitRef="usd">-688000</us-gaap:ValuationAllowancesAndReservesAdjustments>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="i628b14e273ef4667875cefb44919b448_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzgtOS0xLTEtNjM4ODc_f0a3253f-9ce0-4c4c-bbb3-33c3efaa7972"
      unitRef="usd">116408000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="ia9823408724d4000926edbb1d190feae_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzgtMTEtMS0xLTYzODg3_f9293794-f511-4423-b3bb-ad1f9db2dcc6"
      unitRef="usd">12567000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="ieab4254aff3642bbadde2c564b0a85f4_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzktMS0xLTEtNjM4ODc_dc39d15d-f17f-4385-837d-50d4e1a17b33"
      unitRef="usd">12027000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="i68d46899feed46e9a18669d1773b0388_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzktMy0xLTEtNjM4ODc_852b6379-1714-4e88-a4f5-90b799c7ee4a"
      unitRef="usd">6531000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesAdjustments
      contextRef="i68d46899feed46e9a18669d1773b0388_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzktNi0xLTEtNjM4ODc_97d0ddf4-00b8-4314-8f63-eba6c4a3a924"
      unitRef="usd">-146000</us-gaap:ValuationAllowancesAndReservesAdjustments>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="i68d46899feed46e9a18669d1773b0388_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzktOS0xLTEtNjM4ODc_6f1860d5-81ad-4b96-8d6b-142413a4b284"
      unitRef="usd">5504000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i2c251835505847ab9f8b8275a364aaf6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzktMTEtMS0xLTYzODg3_54f26d97-83b1-469e-b78f-33a148cec297"
      unitRef="usd">12908000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="if474962fab4a4030b9eb991b08ecfdf2_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzEwLTEtMS0xLTYzODg3_197e98ca-1172-42e0-8fb6-d4265134c657"
      unitRef="usd">9096000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="i3ed7c8ddc75c4302a5a683b9a5d47274_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzEwLTMtMS0xLTYzODg3_7bc68bbe-6939-46fa-997b-2aa722988b78"
      unitRef="usd">10727000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesAdjustments
      contextRef="i3ed7c8ddc75c4302a5a683b9a5d47274_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzEwLTYtMS0xLTYzODg3_243843bb-ebca-4a71-85dc-f46d3889ec6c"
      unitRef="usd">-132000</us-gaap:ValuationAllowancesAndReservesAdjustments>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="i3ed7c8ddc75c4302a5a683b9a5d47274_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzEwLTktMS0xLTYzODg3_7d365a18-6fab-42ae-8bae-a9947b3d3062"
      unitRef="usd">9738000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i7fc12cd1cf6643658925beb572783f63_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzEwLTExLTEtMS02Mzg4Nw_5739512a-a226-4cfb-84e6-70f1a1ab086d"
      unitRef="usd">9953000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i21f9273d6b3548fa8973dee9a48f69e0_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzEzLTEtMS0xLTYzODg3_6411bc2a-27bc-44c8-8696-f6b237965e94"
      unitRef="usd">16883000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="i22c526cb7bc2454ebb5a249fde941e9c_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzEzLTMtMS0xLTYzODg3_909e8a45-8a2c-40eb-b266-598689e41b84"
      unitRef="usd">93398000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesAdjustments
      contextRef="i22c526cb7bc2454ebb5a249fde941e9c_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzEzLTYtMS0xLTYzODg3_be489e43-585e-4e6b-99fb-4bd453949bdd"
      unitRef="usd">15000</us-gaap:ValuationAllowancesAndReservesAdjustments>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="i22c526cb7bc2454ebb5a249fde941e9c_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzEzLTktMS0xLTYzODg3_6e006b88-896a-4ef2-abdf-19cf153523c5"
      unitRef="usd">96747000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i10fd44437faf49d8a71d549da1958cff_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzEzLTExLTEtMS02Mzg4Nw_58eb5c9c-3d69-4b60-bfb0-636ff34c38ab"
      unitRef="usd">13549000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i1cd0e52666304b0cb6d2e91288aad69e_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzE0LTEtMS0xLTYzODg3_c1841698-757b-4a37-807c-c6067d1d436c"
      unitRef="usd">8233000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="i77e23cfd658449999ef76db76a8fabe0_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzE0LTMtMS0xLTYzODg3_de3b1951-e326-4307-ad0f-1d8429a17087"
      unitRef="usd">4609000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesAdjustments
      contextRef="i77e23cfd658449999ef76db76a8fabe0_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzE0LTYtMS0xLTYzODg3_ea217091-3361-4ebc-b29b-8f20145ecfdf"
      unitRef="usd">1471000</us-gaap:ValuationAllowancesAndReservesAdjustments>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="i77e23cfd658449999ef76db76a8fabe0_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzE0LTktMS0xLTYzODg3_36c1c468-52eb-45ac-8abb-643547924bff"
      unitRef="usd">2286000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="ieab4254aff3642bbadde2c564b0a85f4_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzE0LTExLTEtMS02Mzg4Nw_590f5b4c-a437-4c7a-9664-706e9d17e353"
      unitRef="usd">12027000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i9e13101fce0c40dea862f82c5b2403e3_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzE1LTEtMS0xLTYzODg3_eebb9270-5899-4886-9488-c0b5b21768bf"
      unitRef="usd">10249000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="i9d7480f64a314da1ab83562492ffc296_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzE1LTMtMS0xLTYzODg3_70935e65-0298-44f0-98af-311be6fb0040"
      unitRef="usd">8466000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesAdjustments
      contextRef="i9d7480f64a314da1ab83562492ffc296_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzE1LTYtMS0xLTYzODg3_8b1bc2df-5c22-48a6-b91e-ba6d41dd8e9a"
      unitRef="usd">247000</us-gaap:ValuationAllowancesAndReservesAdjustments>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="i9d7480f64a314da1ab83562492ffc296_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzE1LTktMS0xLTYzODg3_b75993e2-3aee-409b-b422-32c5045c6d70"
      unitRef="usd">9866000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="if474962fab4a4030b9eb991b08ecfdf2_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90YWJsZTowYzViNzdmMWY0YTc0MWI3OWNjYjI0Mzg4MWYwOWI4OC90YWJsZXJhbmdlOjBjNWI3N2YxZjRhNzQxYjc5Y2NiMjQzODgxZjA5Yjg4XzE1LTExLTEtMS02Mzg4Nw_1bfce168-586c-4ff1-b685-7f8b6e095f81"
      unitRef="usd">9096000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="ibd755e8236cd4991b0c03464ecd075e5_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzE0NQ_d2163ed5-b03d-4f49-b24b-9985d4979857"
      unitRef="usd">19900000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="ia9823408724d4000926edbb1d190feae_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzE5Mg_ccfb88ea-af02-4b2f-b903-b6d33d3c886e"
      unitRef="usd">12600000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:InventoryImpairmentPolicy
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzMwNjk_ebdb4c24-7a48-4932-a204-a4a1e5f9f1d7">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Reserve for Inventory Obsolescence &lt;/span&gt;&lt;/div&gt;&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%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="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:112%"&gt;We value inventories at the lower of the cost of inventory or net realizable value. As needed, we record an inventory valuation adjustment for excess, slow moving, and obsolete inventory that is equal to the excess of the cost of the inventory over the estimated net realizable value. The inventory valuation adjustment to net realizable value establishes a new cost basis of the inventory that cannot be subsequently reversed. Such inventory valuation adjustments for excess, obsolete, and slow moving inventory are not reduced or removed until the product is sold or disposed of.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company had a reserve of $13.2 million on December&#160;31, 2022 and $12.9 million on December&#160;31, 2021 to cover obsolete and slow moving inventory. The increase in the reserve was primarily attributable to the Company's Industrial Equipment Division. The reserve for inventory obsolescence  is calculated as follows: 1) no inventory usage over a three-year period is deemed obsolete and reserved at 100%; and 2) slow moving inventory with little usage requires a 100% reserve on items that have a quantity greater than a three-year supply. There are exceptions to the obsolete and slow moving classifications if approved by an officer of the Company, based on specific identification of an item or items that are deemed to be either included or excluded from this classification. In cases where there is no historical data, management makes a judgment based on a specific review of the inventory in question to determine what reserves, if any, are appropriate. New products or parts are generally excluded from the reserve until a three-year history has been established.&lt;/span&gt;&lt;/div&gt;</us-gaap:InventoryImpairmentPolicy>
    <us-gaap:InventoryValuationReserves
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzE0NTM_7418a713-e82b-4322-8613-0a5dee42bbd9"
      unitRef="usd">13200000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryValuationReserves
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzE0NjY_ee603e31-bf6e-49f8-af4f-a52d641a1dc4"
      unitRef="usd">12900000</us-gaap:InventoryValuationReserves>
    <alg:InventoryUsagePeriod
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzMwNjc_12fa177d-6a0d-4034-a698-17d54ab641a3">P3Y</alg:InventoryUsagePeriod>
    <alg:InventoryReservePercentage
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzE3Njg_42a5e18c-90c0-4c6f-9dd7-3805552208f7"
      unitRef="number">1</alg:InventoryReservePercentage>
    <alg:InventoryReservePercentage
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzE4MzA_d121e66b-f729-44de-bd8f-52ea7495db37"
      unitRef="number">1</alg:InventoryReservePercentage>
    <alg:InventoryUsagePeriod
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzMwNzA_57d30fbf-a505-45b5-bf36-8b67cc053cd5">P3Y</alg:InventoryUsagePeriod>
    <us-gaap:StandardProductWarrantyPolicy
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzMwNzE_df95da20-cc0f-4273-8aed-07c8a57cae13">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Warranty&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&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 warranty policy is generally to provide its customers warranty for up to one year on all wholegood units and 90 days on parts, though some components can have warranty for longer terms.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Warranty reserve, as a percentage of sales, is generally calculated by looking at the current twelve months&#x2019; expenses and prorating that amount based on twelve months&#x2019; sales with a &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI3OTQ_46274a57-12b5-4685-a7f7-b0ac8eb30cb6"&gt;three&lt;/span&gt; to six month lag period. The Company&#x2019;s historical experience is that an end-user takes approximately &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI4OTc_461d3e84-85a1-4af0-9172-95baabe6f27b"&gt;three&lt;/span&gt; to six months from the receipt of the unit to file a warranty claim.&lt;/span&gt;&lt;/div&gt;</us-gaap:StandardProductWarrantyPolicy>
    <alg:ProductWarrantyPeriod
      contextRef="i2ec5941998b24e159ba1077cecd2e60e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI1MzE_216c667c-f89e-4236-902e-c7c4bc123469">P1Y</alg:ProductWarrantyPeriod>
    <alg:ProductWarrantyPeriod
      contextRef="i72a1ba6068504c79a2fd7f8558bca6f2_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI1NjE_365e5adf-0461-42ee-a141-9d330eb6360f">P90D</alg:ProductWarrantyPeriod>
    <alg:ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI3Mjk_42889ff9-7e10-46e1-b497-cf21e455ef85">P12M</alg:ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation>
    <alg:ProductWarrantyAccrualPeriodForSalesUsedInCalculation
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI3Nzc_d4083c83-b16c-4acd-9f62-9152d85c7e99">P12M</alg:ProductWarrantyAccrualPeriodForSalesUsedInCalculation>
    <alg:ProductWarrantyAccrualLagPeriod
      contextRef="i9f473c4749174271bfd71f93c77ca853_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzMwNzI_8bae3ca2-aa4a-4811-89b8-77f7d2044e7d">P6M</alg:ProductWarrantyAccrualLagPeriod>
    <alg:ProductWarrantyAccrualLagPeriod
      contextRef="i9f473c4749174271bfd71f93c77ca853_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzI5MDM_ea112ce1-8c91-4f97-bb7d-294cf076d7da">P6M</alg:ProductWarrantyAccrualLagPeriod>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzMwMTQ_29a02a00-7abe-4865-aaec-90d9ae0a45bf"
      unitRef="usd">9300000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzYvZnJhZzowZTJhOGU0NDE1YzE0NGI0Yjg4OTNkNTIxNzMxNjNkYi90ZXh0cmVnaW9uOjBlMmE4ZTQ0MTVjMTQ0YjRiODg5M2Q1MjE3MzE2M2RiXzMwMjc_fbc87d47-0a23-498e-bfd4-65f35874b7d9"
      unitRef="usd">10000000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:InventoryDisclosureTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzkvZnJhZzo3NWI3YTE5ODE1YzI0NjljYTE3ZmUyMGM5OThjZWYyMi90ZXh0cmVnaW9uOjc1YjdhMTk4MTVjMjQ2OWNhMTdmZTIwYzk5OGNlZjIyXzY3_da96e6e5-b8a5-47e5-941f-95e24e63abbc">INVENTORIES&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Inventories consisted of the following:&lt;/span&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.350%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:3.139%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:3.432%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.206%"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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="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;2022&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;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Finished goods and parts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;312,726&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;277,760&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Work in process&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;22,273&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,895&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Raw materials&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17,554&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,262&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Inventory, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;352,553&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;320,917&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzkvZnJhZzo3NWI3YTE5ODE1YzI0NjljYTE3ZmUyMGM5OThjZWYyMi90ZXh0cmVnaW9uOjc1YjdhMTk4MTVjMjQ2OWNhMTdmZTIwYzk5OGNlZjIyXzY1_01a4a5d4-4622-48fa-925e-3183026c537c">&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Inventories consisted of the following:&lt;/span&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.350%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:3.139%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:3.432%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.206%"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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="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;2022&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;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Finished goods and parts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;312,726&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;277,760&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Work in process&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;22,273&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,895&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Raw materials&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17,554&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,262&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Inventory, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;352,553&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;320,917&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzkvZnJhZzo3NWI3YTE5ODE1YzI0NjljYTE3ZmUyMGM5OThjZWYyMi90YWJsZTpiMWFlMzNkNDVjYjU0Yjk5OGFhNjcxN2I4MDRjMDVhZC90YWJsZXJhbmdlOmIxYWUzM2Q0NWNiNTRiOTk4YWE2NzE3YjgwNGMwNWFkXzItMi0xLTEtNjM4ODc_e34d2725-3b0d-4643-a112-5cb06ae39350"
      unitRef="usd">312726000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzkvZnJhZzo3NWI3YTE5ODE1YzI0NjljYTE3ZmUyMGM5OThjZWYyMi90YWJsZTpiMWFlMzNkNDVjYjU0Yjk5OGFhNjcxN2I4MDRjMDVhZC90YWJsZXJhbmdlOmIxYWUzM2Q0NWNiNTRiOTk4YWE2NzE3YjgwNGMwNWFkXzItNC0xLTEtNjM4ODc_ab7a9d2b-48a1-40ec-9f1d-4d8a216d80c2"
      unitRef="usd">277760000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzkvZnJhZzo3NWI3YTE5ODE1YzI0NjljYTE3ZmUyMGM5OThjZWYyMi90YWJsZTpiMWFlMzNkNDVjYjU0Yjk5OGFhNjcxN2I4MDRjMDVhZC90YWJsZXJhbmdlOmIxYWUzM2Q0NWNiNTRiOTk4YWE2NzE3YjgwNGMwNWFkXzMtMi0xLTEtNjM4ODc_9c7a98c7-aae7-4a0c-b1ce-0d4b76d687d1"
      unitRef="usd">22273000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzkvZnJhZzo3NWI3YTE5ODE1YzI0NjljYTE3ZmUyMGM5OThjZWYyMi90YWJsZTpiMWFlMzNkNDVjYjU0Yjk5OGFhNjcxN2I4MDRjMDVhZC90YWJsZXJhbmdlOmIxYWUzM2Q0NWNiNTRiOTk4YWE2NzE3YjgwNGMwNWFkXzMtNC0xLTEtNjM4ODc_a3a651ae-be03-4860-b978-25fa96b18783"
      unitRef="usd">24895000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzkvZnJhZzo3NWI3YTE5ODE1YzI0NjljYTE3ZmUyMGM5OThjZWYyMi90YWJsZTpiMWFlMzNkNDVjYjU0Yjk5OGFhNjcxN2I4MDRjMDVhZC90YWJsZXJhbmdlOmIxYWUzM2Q0NWNiNTRiOTk4YWE2NzE3YjgwNGMwNWFkXzQtMi0xLTEtNjM4ODc_afda5038-fa04-4631-ba7c-101de7d1c532"
      unitRef="usd">17554000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzkvZnJhZzo3NWI3YTE5ODE1YzI0NjljYTE3ZmUyMGM5OThjZWYyMi90YWJsZTpiMWFlMzNkNDVjYjU0Yjk5OGFhNjcxN2I4MDRjMDVhZC90YWJsZXJhbmdlOmIxYWUzM2Q0NWNiNTRiOTk4YWE2NzE3YjgwNGMwNWFkXzQtNC0xLTEtNjM4ODc_ca76fefd-7bb2-4187-83e5-4bea31473c86"
      unitRef="usd">18262000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryNet
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzkvZnJhZzo3NWI3YTE5ODE1YzI0NjljYTE3ZmUyMGM5OThjZWYyMi90YWJsZTpiMWFlMzNkNDVjYjU0Yjk5OGFhNjcxN2I4MDRjMDVhZC90YWJsZXJhbmdlOmIxYWUzM2Q0NWNiNTRiOTk4YWE2NzE3YjgwNGMwNWFkXzUtMi0xLTEtNjM4ODc_0ad81d04-7349-4c80-8247-ad39319f9401"
      unitRef="usd">352553000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xMzkvZnJhZzo3NWI3YTE5ODE1YzI0NjljYTE3ZmUyMGM5OThjZWYyMi90YWJsZTpiMWFlMzNkNDVjYjU0Yjk5OGFhNjcxN2I4MDRjMDVhZC90YWJsZXJhbmdlOmIxYWUzM2Q0NWNiNTRiOTk4YWE2NzE3YjgwNGMwNWFkXzUtNC0xLTEtNjM4ODc_d9b78ef2-831b-41f9-9745-ba1504092e37"
      unitRef="usd">320917000</us-gaap:InventoryNet>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90ZXh0cmVnaW9uOjU3YTM3ZTRkNzA3MDQ4M2U4ODk3ZjAzYjYwZDdmMmQ0XzEwNg_dfe85a44-9143-4c72-8700-f7b03f8e00cf">PROPERTY, PLANT AND EQUIPMENT&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Property, plant and equipment consist of the following:&lt;/span&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:46.560%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:3.139%"/&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:1.0%"/&gt;&lt;td style="width:3.724%"/&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:1.0%"/&gt;&lt;td style="width:3.724%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.501%"/&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-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:9pt;font-weight:700;line-height:100%"&gt;December 31,&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;&#160;&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;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&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;2022&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;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:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Useful&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:700;line-height:100%"&gt;Lives&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Land&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,792&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,838&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Buildings and improvements&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;145,616&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;145,086&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&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:100%"&gt;5-20 yrs.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Machinery and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;140,252&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;129,901&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&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:100%"&gt;3-10 yrs.&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Office furniture and equipment&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,270&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,291&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&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:100%"&gt;3-7 yrs.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Computer software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,551&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,384&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&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:100%"&gt;3-7 yrs.&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Transportation equipment&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,597&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,363&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&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:100%"&gt;3 yrs.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Property, plant and equipment, at cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;335,078&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;321,863&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accumulated depreciation&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(180,071)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(169,372)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;155,007&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;152,491&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90ZXh0cmVnaW9uOjU3YTM3ZTRkNzA3MDQ4M2U4ODk3ZjAzYjYwZDdmMmQ0XzEwNw_67bf329a-f667-4b72-b4b9-26cd7dc580ac">&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Property, plant and equipment consist of the following:&lt;/span&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:46.560%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:3.139%"/&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:1.0%"/&gt;&lt;td style="width:3.724%"/&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:1.0%"/&gt;&lt;td style="width:3.724%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.501%"/&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-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:9pt;font-weight:700;line-height:100%"&gt;December 31,&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;&#160;&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;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&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;2022&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;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:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Useful&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:700;line-height:100%"&gt;Lives&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Land&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,792&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,838&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Buildings and improvements&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;145,616&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;145,086&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&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:100%"&gt;5-20 yrs.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Machinery and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;140,252&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;129,901&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&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:100%"&gt;3-10 yrs.&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Office furniture and equipment&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,270&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,291&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&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:100%"&gt;3-7 yrs.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Computer software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,551&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,384&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&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:100%"&gt;3-7 yrs.&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Transportation equipment&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,597&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,363&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&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:100%"&gt;3 yrs.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Property, plant and equipment, at cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;335,078&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;321,863&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accumulated depreciation&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(180,071)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(169,372)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;155,007&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;152,491&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i3348296671fa487a884971b97eb216d2_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzItMi0xLTEtNjM4ODc_80d3a6d3-a112-4fa3-81c4-9307c0d2a7b4"
      unitRef="usd">12792000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i249e2e9ad69844859b9656f0380afb9e_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzItNC0xLTEtNjM4ODc_227d7303-007b-40c6-a0d2-963850c6a82a"
      unitRef="usd">12838000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i122eac470b9c48329a774c3e3bcded96_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzMtMi0xLTEtNjM4ODc_5fa8908e-949b-4904-8786-263c29c41bcb"
      unitRef="usd">145616000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="iad324c38f2e34c1f9ded6165b72b2375_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzMtNC0xLTEtNjM4ODc_6dcb735c-80c2-49ec-852c-5fc791836371"
      unitRef="usd">145086000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i95aa30d2c7224485a374de947f8e7755_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzMtNi0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo1NzU5ZDg2Nzg2Njc0NTQ1YTMwMWRjMzQ3ODI0MWRiOV81_7107e96b-cc3b-4f90-860c-2cb1589d0b4e">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i36b0126f5a16463bbe27a370ace65833_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzMtNi0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo1NzU5ZDg2Nzg2Njc0NTQ1YTMwMWRjMzQ3ODI0MWRiOV84_e14c593e-1f9d-4bcc-bfeb-1574cb096a41">P20Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i77a694f6bf444184afdfc6dc4a57c372_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzQtMi0xLTEtNjM4ODc_f646ae26-52ef-4819-b30e-a9913c68d663"
      unitRef="usd">140252000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="ic49da4abfe964d918d3cc823a356905f_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzQtNC0xLTEtNjM4ODc_66c3c0f1-6d8b-4a97-87f6-02c628b9f5ef"
      unitRef="usd">129901000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i00b8ba35ccec46dc9f5c29a4e5a91143_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzQtNi0xLTEtNjM4ODcvdGV4dHJlZ2lvbjoyZjUzOTQwNWI0YTg0Mjg4OTUzYTU4ZmZhODc4MzQyMl81_59765396-d5eb-4996-9959-bb1651ed158c">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="icb424d7932f448c89223aa3397e280e9_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzQtNi0xLTEtNjM4ODcvdGV4dHJlZ2lvbjoyZjUzOTQwNWI0YTg0Mjg4OTUzYTU4ZmZhODc4MzQyMl84_5d7676a2-60f8-400c-b48d-0d6cd445f263">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="id99a7e4f4e834539b17bffb1ca230dd7_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzUtMi0xLTEtNjM4ODc_5f168e99-97df-4840-8151-b48da9d27191"
      unitRef="usd">13270000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="id56c89efa1f343888b0c50ebff7d1899_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzUtNC0xLTEtNjM4ODc_60d9d2a8-9f77-4597-9f23-35f1d817b721"
      unitRef="usd">13291000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="ie25d80ccacf9429992256251efa00407_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzUtNi0xLTEtNjM4ODcvdGV4dHJlZ2lvbjpkMmQ3N2NiZjRkNTE0ZjlkODY0Y2M4MzM3NWY3NzJlYl81_0e62823b-8a24-471b-9222-9d0cbcc0be2e">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="iaa9e5101517947619a1354bfee65e555_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzUtNi0xLTEtNjM4ODcvdGV4dHJlZ2lvbjpkMmQ3N2NiZjRkNTE0ZjlkODY0Y2M4MzM3NWY3NzJlYl84_77a3dfa3-8263-431a-b36a-b9d5009d0f19">P7Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i86aa6d9413174db0a6c0a14c0845700d_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzYtMi0xLTEtNjM4ODc_870949b8-9c9b-4bc2-be84-ef2735b57923"
      unitRef="usd">13551000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="ic8fdf016860e4a6eaadd0501b7c4cce8_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzYtNC0xLTEtNjM4ODc_e7727c2b-c174-40e8-8daf-53e1607a8383"
      unitRef="usd">12384000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i3e80469457664043b7fa8c3e73b6786a_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzYtNi0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo5OTU0ZWQ2NTQyMWI0MTI1OGVkZjFlNTVmMjM4NDgwZV81_185bdccf-eded-47e5-9e18-0dfb0946fdfb">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i7533dbd0266540ad9432641845a22e51_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzYtNi0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo5OTU0ZWQ2NTQyMWI0MTI1OGVkZjFlNTVmMjM4NDgwZV84_a554e249-2de2-495f-982c-87fa11df13ac">P7Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i69f6c89be1a144e883096028fa26b0da_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzctMi0xLTEtNjM4ODc_e42a62e1-0322-4efa-aa5e-0f18cc822c34"
      unitRef="usd">9597000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="ib8393b9f33594e8dba986d7172143777_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzctNC0xLTEtNjM4ODc_ad3d3d93-a527-4b57-baaf-d470c5f33bcc"
      unitRef="usd">8363000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="ib99b82b5a9c64c95a4bfe92aec5e613b_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzctNi0xLTEtNjM4ODcvdGV4dHJlZ2lvbjozYWQ5NzE5MTMzOGI0YzBjOTA4ZjIzODQ2MDI4NGY0ZV81_d264035d-c13e-4767-8c73-2ca4e3b6fdc5">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzgtMi0xLTEtNjM4ODc_02e7b3a0-1b22-4a6f-93cd-716dbf482a65"
      unitRef="usd">335078000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzgtNC0xLTEtNjM4ODc_071bf7a4-f85d-435e-81b0-690ed93b0ce0"
      unitRef="usd">321863000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzktMi0xLTEtNjM4ODc_7ea4f1bd-962f-497a-90ca-eaa9b9e49f7e"
      unitRef="usd">180071000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzktNC0xLTEtNjM4ODc_b25a1c4b-0f8f-4669-b78b-6b309c052c4d"
      unitRef="usd">169372000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzEwLTItMS0xLTYzODg3_27a6577b-a69f-44fc-88c3-6b9724a86c62"
      unitRef="usd">155007000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDIvZnJhZzo1N2EzN2U0ZDcwNzA0ODNlODg5N2YwM2I2MGQ3ZjJkNC90YWJsZTplZDdhY2RlYjIyMjU0N2Y5OGE0NDI1OGI3MWUzOGI0YS90YWJsZXJhbmdlOmVkN2FjZGViMjIyNTQ3Zjk4YTQ0MjU4YjcxZTM4YjRhXzEwLTQtMS0xLTYzODg3_69277170-f4eb-4c1c-9e39-d04ca8e7149b"
      unitRef="usd">152491000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization>
    <us-gaap:GoodwillDisclosureTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90ZXh0cmVnaW9uOjk0NzJkMzVkNWRhYzRkOTRhOTNjMGY3YzIyYmJhMjlhXzExOA_9aee14ec-7b88-40fa-a577-261067bb86b3">GOODWILL&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&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 year ended December&#160;31, 2020, 2021, and 2022 are as follows:&lt;/span&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:54.309%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:1.970%"/&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:1.0%"/&gt;&lt;td style="width:1.970%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:1.970%"/&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:1.0%"/&gt;&lt;td style="width:1.970%"/&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 style="width:1.0%"/&gt;&lt;td style="width:2.262%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.137%"/&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="9" style="padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Vegetation Management&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Industrial Equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:700;line-height:100%"&gt;Consolidated&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&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:0 1pt"/&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:0 1pt"/&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: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="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;126,894&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;71,128&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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="display:none"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;198,022&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Translation adjustment&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;132&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,036&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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="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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Goodwill adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(2,045)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(2,013)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(4,058)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"&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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;124,981&#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:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"&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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;70,151&#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:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;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="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"&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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;195,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:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Translation adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,510)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(708)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(2,218)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Goodwill acquired&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&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:middle"/&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="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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;132,963&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;69,443&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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="display:none"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;202,406&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Translation adjustment&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,882)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,147)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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="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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3,029)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Goodwill adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3,519)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3,519)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;127,562&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;68,296&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;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="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;195,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:GoodwillDisclosureTextBlock>
    <us-gaap:ScheduleOfGoodwillTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90ZXh0cmVnaW9uOjk0NzJkMzVkNWRhYzRkOTRhOTNjMGY3YzIyYmJhMjlhXzExOQ_4140ebe5-dd31-46dc-9f16-68abe90484b5">&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 year ended December&#160;31, 2020, 2021, and 2022 are as follows:&lt;/span&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:54.309%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:1.970%"/&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:1.0%"/&gt;&lt;td style="width:1.970%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:1.970%"/&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:1.0%"/&gt;&lt;td style="width:1.970%"/&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 style="width:1.0%"/&gt;&lt;td style="width:2.262%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.137%"/&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="9" style="padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Vegetation Management&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Industrial Equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:700;line-height:100%"&gt;Consolidated&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&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:0 1pt"/&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:0 1pt"/&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: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="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;126,894&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;71,128&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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="display:none"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;198,022&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Translation adjustment&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;132&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,036&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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="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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Goodwill adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(2,045)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(2,013)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(4,058)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"&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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;124,981&#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:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"&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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;70,151&#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:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;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="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"&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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;195,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:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Translation adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,510)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(708)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(2,218)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Goodwill acquired&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&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:middle"/&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="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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;132,963&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;69,443&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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="display:none"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;202,406&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Translation adjustment&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,882)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,147)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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="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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3,029)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Goodwill adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3,519)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3,519)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;127,562&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;68,296&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;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="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;195,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfGoodwillTextBlock>
    <us-gaap:Goodwill
      contextRef="iedfcf9c8e2264240a132e99838accd6d_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzItMi0xLTEtNjM4ODc_23ccd60a-197f-4625-99b3-499bd86ec3bd"
      unitRef="usd">126894000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="iabfb89696316430eafcf64baede0be8b_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzItNS0xLTEtNjM4ODc_f9094b5b-1f24-4b8c-8133-f850f0da5f43"
      unitRef="usd">71128000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i418e1db8b7e1486ea4572f36257de9de_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzItMTEtMS0xLTYzODg3_ad7f23ff-8919-4aca-a09e-61190bcd34e3"
      unitRef="usd">198022000</us-gaap:Goodwill>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i513fb2f7accf49ecacbc7116eafbe588_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzMtMi0xLTEtNjM4ODc_14a3e3e8-a6f0-4615-8766-c728a23bb435"
      unitRef="usd">132000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i36cdf5e00a0245ce92a15de38f5924f4_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzMtNS0xLTEtNjM4ODc_c4a215e7-37f7-4b26-b383-fbc6e370f3ea"
      unitRef="usd">1036000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzMtMTEtMS0xLTYzODg3_71e2cc24-b2eb-4555-abe6-d86cd6ee2f47"
      unitRef="usd">1168000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="i513fb2f7accf49ecacbc7116eafbe588_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzQtMi0xLTEtNjM4ODc_1f0dfc8e-5964-44fa-8b3a-aa5b0e4d0ae9"
      unitRef="usd">-2045000</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="i36cdf5e00a0245ce92a15de38f5924f4_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzQtNS0xLTEtNjM4ODc_dd3f4114-13c9-49c2-8f5e-10845a103542"
      unitRef="usd">-2013000</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzQtMTEtMS0xLTYzODg3_4971c2f1-60ce-45db-ae56-a8727a8b762c"
      unitRef="usd">-4058000</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:Goodwill
      contextRef="i9b9aaca501be4ac2a3e9953b36156442_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzUtMi0xLTEtNjM4ODc_0240908d-1851-4e4e-8fe5-55638150abeb"
      unitRef="usd">124981000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i5bb51e7640b046fcbb14996aa5001c29_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzUtNS0xLTEtNjM4ODc_707b98f9-1606-4652-a0c9-24113d039ba7"
      unitRef="usd">70151000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i5d74fc3138934e70861715f06fa062c7_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzUtMTEtMS0xLTYzODg3_1dd9e05a-2e50-49de-b577-f3d4b9abb8f6"
      unitRef="usd">195132000</us-gaap:Goodwill>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="if77ec05e8b684280b18475c39a8bf482_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzYtMi0xLTEtNjM4ODc_30f35053-5840-47a3-8d48-9abd9dd49d4e"
      unitRef="usd">-1510000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i3182e3589e3647f599dbed14ec3a5afe_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzYtNS0xLTEtNjM4ODc_0bdee14e-a120-477b-914a-e3cde2af05d2"
      unitRef="usd">-708000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzYtMTEtMS0xLTYzODg3_60aadac8-a249-446c-bd94-bfe2de193000"
      unitRef="usd">-2218000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="if77ec05e8b684280b18475c39a8bf482_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzctMi0xLTEtNjM4ODc_9c22b1da-0df4-485e-bbca-c97af039283b"
      unitRef="usd">9492000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i3182e3589e3647f599dbed14ec3a5afe_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzctNS0xLTEtNjM4ODc_08410397-4c78-40d4-9b0d-bea694428d16"
      unitRef="usd">0</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzctMTEtMS0xLTYzODg3_fcfce1d4-5e32-47df-9b10-5bc4ba0bc324"
      unitRef="usd">9492000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:Goodwill
      contextRef="ifabd95c5636e4ae29d276ed3df2f04aa_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzgtMi0xLTEtNjM4ODc_53aea828-3243-48b5-bd62-d4264c519843"
      unitRef="usd">132963000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="ib5cd129a56a24fffb8578ab324d3ad87_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzgtNS0xLTEtNjM4ODc_af1df521-1122-4578-b9e2-9715628589b9"
      unitRef="usd">69443000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzgtMTEtMS0xLTYzODg3_9e1fe3c2-1229-49d0-9077-8ebb65112f07"
      unitRef="usd">202406000</us-gaap:Goodwill>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i0ff65971f8a344f3afdf75aa25d869f1_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzktMi0xLTEtNjM4ODc_c432d91d-e39e-4e9f-a9be-e9b5212f235f"
      unitRef="usd">-1882000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="ibaa2c0aa8b8145e0846cbc65655c330c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzktNS0xLTEtNjM4ODc_97b41f36-bf49-4703-affe-9da2445a38c5"
      unitRef="usd">-1147000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzktMTEtMS0xLTYzODg3_4e995c8d-ff5e-4721-8608-d4c704353216"
      unitRef="usd">-3029000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="i0ff65971f8a344f3afdf75aa25d869f1_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzEwLTItMS0xLTYzODg3_1e025453-eb3d-4c4e-b5e8-06316952038e"
      unitRef="usd">-3519000</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="ibaa2c0aa8b8145e0846cbc65655c330c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzEwLTUtMS0xLTYzODg3_190d62ff-f001-43a0-b697-5019de8e7c31"
      unitRef="usd">0</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzEwLTExLTEtMS02Mzg4Nw_2edf5afb-b63d-434c-82ef-dfde0f99e06a"
      unitRef="usd">-3519000</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:Goodwill
      contextRef="i803060fc3e714dea8c404e56b28916c4_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzExLTItMS0xLTYzODg3_121e12f3-6a04-471f-9328-f777b15b8492"
      unitRef="usd">127562000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i3d862a4e890749ffb9f5627adbe5ad23_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzExLTUtMS0xLTYzODg3_453f1ce6-814c-4b6c-8b87-355a887590bd"
      unitRef="usd">68296000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDUvZnJhZzo5NDcyZDM1ZDVkYWM0ZDk0YTkzYzBmN2MyMmJiYTI5YS90YWJsZTo1YWU1ODVkNTk3MDQ0YjViYTcwODIyOTNjZDUxNTBkYi90YWJsZXJhbmdlOjVhZTU4NWQ1OTcwNDRiNWJhNzA4MjI5M2NkNTE1MGRiXzExLTExLTEtMS02Mzg4Nw_00dadb2d-41db-44b9-aca8-30781cfff451"
      unitRef="usd">195858000</us-gaap:Goodwill>
    <us-gaap:IntangibleAssetsDisclosureTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzg3Mg_ee310c54-ebf6-45b2-9d4a-90e7f67701a5">INTANGIBLE ASSETS&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following is a summary of the Company's intangible assets net of the accumulated amortization:&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:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&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.755%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.419%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:1.974%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.002%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.289%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:1.974%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.027%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.560%"/&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-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="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;Estimated Useful Lives&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:9pt;font-weight:700;line-height:100%"&gt;December 31, 2022&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:9pt;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:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Definite:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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;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;&#160;&#160;&#160;Trade names and trademarks&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;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15-25 years&lt;/span&gt;&lt;/div&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: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;68,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;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;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;68,321&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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:#def3c0;padding: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;&#160;&#160;&#160;Customer and dealer relationships&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;8-15 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;129,338&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;126,104&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Patents and developed technologies&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;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3-12 years&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;28,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;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="2" style="background-color:#ffffff;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;29,338&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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:#def3c0;padding: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;&#160;&#160;&#160;Favorable leasehold interests&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;7 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;4,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;4,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;&#160;Total at cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;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:9pt;font-weight:400;line-height:100%"&gt;230,772&#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;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;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:9pt;font-weight:400;line-height:100%"&gt;227,963&#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;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;&#160;&#160;&#160;Less accumulated amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(64,931)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(49,997)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;165,841&#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;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;177,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;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Indefinite:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Trade names and trademarks&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="2" style="background-color:#ffffff;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;5,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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;5,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total Intangible Assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;171,341&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;183,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company's net carrying value at December&#160;31, 2022 of intangible assets with definite useful lives consists of trade names and trademarks at $54.9 million, customer and dealer relationships at $90.2 million, patents and drawings at $18.5 million, and favorable leasehold interests at $2.3 million.  As of December&#160;31, 2022, the related accumulated amortization balance for the definite-lived assets were $13.9 million for trade names and trademarks, $39.2 million for customer and dealer relationships, $9.9 million for patents and drawings, and $1.9 million for favorable leasehold interests.  The Company estimates amortization expense to be $15.3 million for each of the next five years.&lt;/span&gt;&lt;/div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Indefinite-lived trade names and trademarks consisted of the &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Gradall &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;trade name with a carrying value of $3.6 million and the &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Bush Hog &lt;/span&gt;trade name with a carrying value of $1.9 million.</us-gaap:IntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzg3MQ_62472651-0c74-4f55-a9d4-3cd60acbdf87">&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following is a summary of the Company's intangible assets net of the accumulated amortization:&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:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&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.755%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.419%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:1.974%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.002%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.289%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:1.974%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.027%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.560%"/&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-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="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;Estimated Useful Lives&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:9pt;font-weight:700;line-height:100%"&gt;December 31, 2022&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:9pt;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:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Definite:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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;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;&#160;&#160;&#160;Trade names and trademarks&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;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15-25 years&lt;/span&gt;&lt;/div&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: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;68,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;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;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;68,321&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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:#def3c0;padding: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;&#160;&#160;&#160;Customer and dealer relationships&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;8-15 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;129,338&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;126,104&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Patents and developed technologies&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;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3-12 years&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;28,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;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="2" style="background-color:#ffffff;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;29,338&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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:#def3c0;padding: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;&#160;&#160;&#160;Favorable leasehold interests&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;7 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;4,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;4,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;&#160;Total at cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;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:9pt;font-weight:400;line-height:100%"&gt;230,772&#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;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;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:9pt;font-weight:400;line-height:100%"&gt;227,963&#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;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;&#160;&#160;&#160;Less accumulated amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(64,931)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(49,997)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;165,841&#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;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;177,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;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Indefinite:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Trade names and trademarks&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="2" style="background-color:#ffffff;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;5,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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;5,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total Intangible Assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;171,341&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;183,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzg3MQ_a6cfe115-5ae5-4cc7-9731-414da3927cce">&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following is a summary of the Company's intangible assets net of the accumulated amortization:&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:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&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.755%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.419%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:1.974%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.002%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.289%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:1.974%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.027%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.560%"/&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-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="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;Estimated Useful Lives&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:9pt;font-weight:700;line-height:100%"&gt;December 31, 2022&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:9pt;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:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Definite:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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;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;&#160;&#160;&#160;Trade names and trademarks&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;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15-25 years&lt;/span&gt;&lt;/div&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: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;68,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;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;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;68,321&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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:#def3c0;padding: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;&#160;&#160;&#160;Customer and dealer relationships&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;8-15 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;129,338&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;126,104&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Patents and developed technologies&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;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3-12 years&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;28,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;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="2" style="background-color:#ffffff;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;29,338&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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:#def3c0;padding: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;&#160;&#160;&#160;Favorable leasehold interests&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;7 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;4,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;4,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;&#160;Total at cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;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:9pt;font-weight:400;line-height:100%"&gt;230,772&#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;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;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:9pt;font-weight:400;line-height:100%"&gt;227,963&#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;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;&#160;&#160;&#160;Less accumulated amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(64,931)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(49,997)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;165,841&#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;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;177,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;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Indefinite:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Trade names and trademarks&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="2" style="background-color:#ffffff;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;5,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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;5,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total Intangible Assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;171,341&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;183,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="i68a256c1723d43dbb5df670bc790f863_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzItMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo4YTgwNmQ5NmJiMDY0MDcxYmI0YTI2ZDQ2Zjg2MjU1OF80_0da4fd1d-5af1-46ac-bbba-7cae57bf095d">P15Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="icbd1c5e5e7eb47c3958b7b85bf0d081c_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzItMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo4YTgwNmQ5NmJiMDY0MDcxYmI0YTI2ZDQ2Zjg2MjU1OF83_7dac10b6-eea7-4aa1-9649-97ede602a403">P25Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="iadf14f0daee54087a5b649d24234dac0_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzItMy0xLTEtNjM4ODc_48c82008-fa06-45b3-8914-030267be8b96"
      unitRef="usd">68797000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i95178ffe330d48fcb4637fc13250db52_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzItNi0xLTEtNjM4ODc_4318394b-29d6-4558-a578-0b919263bd1a"
      unitRef="usd">68321000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="ib292af5aee0b48b289a81b72eca38568_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzMtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjoxZGYyMzRiMDRhYzg0YTRiYjFiMGE2ZmFiZmE2MjljYl80_d5cf5211-9642-4708-8882-cc15f1d32bbc">P8Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="iee07aec1619645a0ae8b12bd11a69963_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzMtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjoxZGYyMzRiMDRhYzg0YTRiYjFiMGE2ZmFiZmE2MjljYl83_baaa2565-dd6e-4704-a9cc-220becec3f94">P15Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i435e4507e6da42a3a9932ae15da0534c_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzMtMy0xLTEtNjM4ODc_f006f19a-0f9d-49bc-a7d6-cee85b7f4c4d"
      unitRef="usd">129338000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="id92355343cac46968b239cfc5b441c9e_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzMtNi0xLTEtNjM4ODc_71b50f05-1b1e-42af-b812-e632f06fd13b"
      unitRef="usd">126104000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="ifc03ad598ec34d0a9d6718b3661fd473_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzQtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjphZTliNmVjODJlM2M0M2NlYWIyM2E4YWRiYjg2YjFiNF80_c1f05ed9-5e16-4998-b905-4efd4d7d1d1b">P3Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="i9c308d2b36ab400a8412ea7aeb29b0ad_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzQtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjphZTliNmVjODJlM2M0M2NlYWIyM2E4YWRiYjg2YjFiNF83_042ce0a6-bc74-4191-b84d-d3af265dfd58">P12Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i83a283f3498f4b0fbfc99e5b21267cb7_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzQtMy0xLTEtNjM4ODc_cf897c47-6cb1-4007-abc9-f609224cc0c6"
      unitRef="usd">28437000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i71cdbdff48c64bc382792b93bb428b29_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzQtNi0xLTEtNjM4ODc_a8af76f6-6a69-4c0f-a4e9-5411a017ea4b"
      unitRef="usd">29338000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="i5c7c231201cc4d7f849189db8e3482d7_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzUtMS0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo4ZWJkMGQwNGE3YTM0ZjA0OWE3YTUwMjM3YWYwZWMzOF80_d2c6e29c-64d9-4e5e-9797-9032f42014a6">P7Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i55ac1b87fd0140a5bea90053aada53dc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzUtMy0xLTEtNjM4ODc_8c9413c7-1cb3-4a44-9608-88cb5c4ad864"
      unitRef="usd">4200000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i470fd970d74c412eb3030b333e36860e_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzUtNi0xLTEtNjM4ODc_7efa742b-1067-4d91-8ed1-94345b7a4382"
      unitRef="usd">4200000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzYtMy0xLTEtNjM4ODc_858fb263-70b8-4e2e-8fb7-32f95ab28e12"
      unitRef="usd">230772000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzYtNi0xLTEtNjM4ODc_6674140c-8f16-4958-abe6-b8d4b668ded8"
      unitRef="usd">227963000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzctMy0xLTEtNjM4ODc_7533d20d-dea9-45a9-a9d1-a41ec32aaec5"
      unitRef="usd">64931000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzctNi0xLTEtNjM4ODc_ba551b8d-7bbb-4764-8291-66373e0e247e"
      unitRef="usd">49997000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzgtMy0xLTEtNjM4ODc_17c53c39-14af-4b8e-a255-e321ad31e863"
      unitRef="usd">165841000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzgtNi0xLTEtNjM4ODc_2c7a03e8-ef45-4f65-aa66-7a26459e4b45"
      unitRef="usd">177966000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="i1a039da70c38475196938960bb28c546_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzEwLTMtMS0xLTYzODg3_3144cd82-5157-4aae-930f-d226f8f723c6"
      unitRef="usd">5500000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="i857f1683f4514f1c9ef93bf8aebe3446_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzEwLTYtMS0xLTYzODg3_2be8382a-72e0-40f5-96d8-7b225767aa6e"
      unitRef="usd">5500000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzExLTMtMS0xLTYzODg3_0e60e74d-700a-406c-b099-714e8be39fe8"
      unitRef="usd">171341000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90YWJsZTo3NDllMjE1NzdkMDU0NWMyOGRmYjM0NmRjZGQ0YTAzOC90YWJsZXJhbmdlOjc0OWUyMTU3N2QwNTQ1YzI4ZGZiMzQ2ZGNkZDRhMDM4XzExLTYtMS0xLTYzODg3_472ed2b8-6daf-4c2d-94c3-790779412239"
      unitRef="usd">183466000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="iadf14f0daee54087a5b649d24234dac0_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzI2MA_335bf366-f984-45f9-9feb-95a056f95148"
      unitRef="usd">54900000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i435e4507e6da42a3a9932ae15da0534c_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzMwMQ_45cfed6c-a474-4e18-8a24-04d0ea35fbf6"
      unitRef="usd">90200000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i83a283f3498f4b0fbfc99e5b21267cb7_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzMyOQ_153e06be-b571-4b39-88bc-0d2717be3c34"
      unitRef="usd">18500000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i55ac1b87fd0140a5bea90053aada53dc_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzM3MA_491cc1fd-8872-421a-afd4-5cd40d53a197"
      unitRef="usd">2300000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="iadf14f0daee54087a5b649d24234dac0_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzQ2NQ_a20539c2-9919-4784-b1a8-0873c7f3edea"
      unitRef="usd">13900000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i435e4507e6da42a3a9932ae15da0534c_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzUwMA_e82b79d6-dfae-44ca-906e-c81bdd1ea00a"
      unitRef="usd">39200000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i83a283f3498f4b0fbfc99e5b21267cb7_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzU0Mg_c68ab203-4408-4467-9279-4e5493602d86"
      unitRef="usd">9900000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i55ac1b87fd0140a5bea90053aada53dc_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzU3NQ_d4660430-0003-4e02-8f2e-237c7f7c33e7"
      unitRef="usd">1900000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzY2Mw_00fb45c4-eabc-4503-8ec4-da411cee2421"
      unitRef="usd">15300000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzY2Mw_3aa9c210-26e0-46e7-9228-374fa97b705c"
      unitRef="usd">15300000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzY2Mw_f72b87a1-c018-4b24-941c-fc6b41818e9e"
      unitRef="usd">15300000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzY2Mw_fb06b8c1-1380-44fe-ab23-8c14f0b6a3af"
      unitRef="usd">15300000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzY2Mw_fc20f52f-d813-446a-9207-3b8fab2fb1fb"
      unitRef="usd">15300000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="i609e1a9b7ab549e796bb32b09b753415_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzgwNQ_cf550c29-a88b-46a1-851c-c8a4f461b60b"
      unitRef="usd">3600000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="i9bfa2e1d27b04dd59a40d79958302b94_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNDgvZnJhZzozMzc4YjE4N2ExZjY0YTlmODUxODZkNjdhYmRhOGE5Mi90ZXh0cmVnaW9uOjMzNzhiMTg3YTFmNjRhOWY4NTE4NmQ2N2FiZGE4YTkyXzg2MQ_ada008ee-c9ad-4424-b061-a6c02439e163"
      unitRef="usd">1900000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:LesseeOperatingLeasesTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90ZXh0cmVnaW9uOjAyZjdiZjllYzliYTRjYTRhYTNhYmI3ZDdhMGQ0YzZiXzc0OA_3ec76aed-293c-4d72-9d31-ff55fe3ecb82">LEASES &lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Leases&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company leases office space and equipment under various operating and capital leases, which generally are expected to be renewed or replaced by other leases.  As of December&#160;31, 2022, the components of lease cost were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&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:61.911%"/&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:15.420%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.262%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.423%"/&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;/tr&gt;&lt;tr&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:10pt;font-weight:700;line-height:100%"&gt;Components of Lease Cost&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="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;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;Twelve Months Ended December 31,&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:9pt;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="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;2022&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;2021&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Finance lease cost:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;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;/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:9pt;font-weight:400;line-height:100%"&gt;Amortization of right-of-use assets&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: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;30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 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;67&#160;&lt;/span&gt;&lt;/td&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Interest on lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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="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:9pt;font-weight:400;line-height:100%"&gt;Operating lease cost&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:9pt;font-weight:400;line-height:100%"&gt;5,783&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;5,571&#160;&lt;/span&gt;&lt;/td&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,033&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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="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:9pt;font-weight:400;line-height:100%"&gt;Variable lease cost&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:9pt;font-weight:400;line-height:100%"&gt;348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;410&#160;&lt;/span&gt;&lt;/td&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="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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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:9pt;font-weight:400;line-height:100%"&gt;Total lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;7,559&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;7,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;text-indent:18pt"&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, future minimum lease payments under these non-cancelable leases are:&lt;/span&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:70.245%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.110%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.345%"/&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="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;Future Minimum Lease Payments&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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:9pt;font-weight:700;line-height:100%"&gt;Operating&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:700;line-height:100%"&gt;Leases&lt;/span&gt;&lt;/div&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:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,177&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,099&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,294&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2026&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,728&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,780&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Thereafter&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,743&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total minimum lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,821&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:9pt;font-weight:400;line-height:100%"&gt;Less imputed interest&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,287)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;Total lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17,534&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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;/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;/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;/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;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&#160;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Rental expense for operating leases was $7.5 million for 2022, $7.0 million for 2021, and $6.1 million for 2020.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Future Lease Commencements&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify;text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;text-indent:18pt"&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, we have additional operating leases that have not yet commenced in the amount of $3.1 million. These operating leases will commence in fiscal year 2023.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental balance sheet information related to leases was as follows:&lt;/span&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:60.888%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.992%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.420%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.577%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.423%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="15" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;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;December 31,&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:9pt;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="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;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-right:-30pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtMC0xLTEtNjM4ODc_519b9153-1678-4ae1-96d9-ece32fbc6c3b"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtMC0xLTEtNjM4ODc_5e442bd9-e082-43f6-86fc-6dbc895fe9ba"&gt;Other non-current assets&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;17,249&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;16,744&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;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;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:#def3c0;padding: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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtMC0xLTEtNjM4ODc_54be147c-36db-432e-8216-c265a23c942d"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtMC0xLTEtNjM4ODc_82079088-df46-459e-bc9c-032b93ad004c"&gt;Accrued liabilities&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;4,685&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;4,655&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:9pt;font-weight:400;line-height:100%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtMC0xLTEtNjM4ODc_152d7955-5136-4b3a-93f9-0d42b9c326e3"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtMC0xLTEtNjM4ODc_39316545-72e7-4e77-b63e-2caddc622e2e"&gt;Other long-term liabilities&lt;/span&gt;&lt;/span&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:9pt;font-weight:400;line-height:100%"&gt;12,849&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,237&#160;&lt;/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:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Total operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;17,534&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;16,892&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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;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:9pt;font-weight:400;line-height:100%"&gt;Weighted average remaining lease term&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;4.66 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;5.14 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Weighted average discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;3.30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 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;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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.83&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 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;%&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;/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;/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;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Supplemental cash flow information related to leases was as follows:&lt;/span&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.057%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.554%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.847%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.523%"/&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="9" 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;Twelve Months Ended December 31,&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:9pt;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="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;2022&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 #000;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;/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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Cash paid for amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;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;/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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;Operating cash flows from operating leases &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: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;5,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 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;5,013&#160;&lt;/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;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:LesseeFinanceLeasesTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90ZXh0cmVnaW9uOjAyZjdiZjllYzliYTRjYTRhYTNhYmI3ZDdhMGQ0YzZiXzc0OA_784afc69-1c8e-4d05-a351-67642c15f804">LEASES &lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Leases&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company leases office space and equipment under various operating and capital leases, which generally are expected to be renewed or replaced by other leases.  As of December&#160;31, 2022, the components of lease cost were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&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:61.911%"/&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:15.420%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.262%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.423%"/&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;/tr&gt;&lt;tr&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:10pt;font-weight:700;line-height:100%"&gt;Components of Lease Cost&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="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;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;Twelve Months Ended December 31,&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:9pt;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="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;2022&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;2021&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Finance lease cost:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;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;/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:9pt;font-weight:400;line-height:100%"&gt;Amortization of right-of-use assets&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: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;30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 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;67&#160;&lt;/span&gt;&lt;/td&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Interest on lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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="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:9pt;font-weight:400;line-height:100%"&gt;Operating lease cost&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:9pt;font-weight:400;line-height:100%"&gt;5,783&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;5,571&#160;&lt;/span&gt;&lt;/td&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,033&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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="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:9pt;font-weight:400;line-height:100%"&gt;Variable lease cost&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:9pt;font-weight:400;line-height:100%"&gt;348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;410&#160;&lt;/span&gt;&lt;/td&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="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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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:9pt;font-weight:400;line-height:100%"&gt;Total lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;7,559&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;7,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;text-indent:18pt"&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, future minimum lease payments under these non-cancelable leases are:&lt;/span&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:70.245%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.110%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.345%"/&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="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;Future Minimum Lease Payments&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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:9pt;font-weight:700;line-height:100%"&gt;Operating&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:700;line-height:100%"&gt;Leases&lt;/span&gt;&lt;/div&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:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,177&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,099&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,294&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2026&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,728&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,780&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Thereafter&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,743&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total minimum lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,821&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:9pt;font-weight:400;line-height:100%"&gt;Less imputed interest&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,287)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;Total lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17,534&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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;/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;/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;/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;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&#160;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Rental expense for operating leases was $7.5 million for 2022, $7.0 million for 2021, and $6.1 million for 2020.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Future Lease Commencements&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify;text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;text-indent:18pt"&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, we have additional operating leases that have not yet commenced in the amount of $3.1 million. These operating leases will commence in fiscal year 2023.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental balance sheet information related to leases was as follows:&lt;/span&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:60.888%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.992%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.420%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.577%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.423%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="15" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;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;December 31,&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:9pt;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="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;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-right:-30pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtMC0xLTEtNjM4ODc_519b9153-1678-4ae1-96d9-ece32fbc6c3b"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtMC0xLTEtNjM4ODc_5e442bd9-e082-43f6-86fc-6dbc895fe9ba"&gt;Other non-current assets&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;17,249&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;16,744&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;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;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:#def3c0;padding: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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtMC0xLTEtNjM4ODc_54be147c-36db-432e-8216-c265a23c942d"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtMC0xLTEtNjM4ODc_82079088-df46-459e-bc9c-032b93ad004c"&gt;Accrued liabilities&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;4,685&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;4,655&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:9pt;font-weight:400;line-height:100%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtMC0xLTEtNjM4ODc_152d7955-5136-4b3a-93f9-0d42b9c326e3"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtMC0xLTEtNjM4ODc_39316545-72e7-4e77-b63e-2caddc622e2e"&gt;Other long-term liabilities&lt;/span&gt;&lt;/span&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:9pt;font-weight:400;line-height:100%"&gt;12,849&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,237&#160;&lt;/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:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Total operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;17,534&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;16,892&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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;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:9pt;font-weight:400;line-height:100%"&gt;Weighted average remaining lease term&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;4.66 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;5.14 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Weighted average discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;3.30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 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;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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.83&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 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;%&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;/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;/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;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Supplemental cash flow information related to leases was as follows:&lt;/span&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.057%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.554%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.847%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.523%"/&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="9" 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;Twelve Months Ended December 31,&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:9pt;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="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;2022&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 #000;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;/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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Cash paid for amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;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;/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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;Operating cash flows from operating leases &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: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;5,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 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;5,013&#160;&lt;/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;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeFinanceLeasesTextBlock>
    <us-gaap:LeaseCostTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90ZXh0cmVnaW9uOjAyZjdiZjllYzliYTRjYTRhYTNhYmI3ZDdhMGQ0YzZiXzc0Mg_a304fbba-2561-4885-9154-0ad93b992b6e">As of December&#160;31, 2022, the components of lease cost were as follows:&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:61.911%"/&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:15.420%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.262%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.423%"/&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;/tr&gt;&lt;tr&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:10pt;font-weight:700;line-height:100%"&gt;Components of Lease Cost&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="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;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;Twelve Months Ended December 31,&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:9pt;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="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;2022&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;2021&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Finance lease cost:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;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;/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:9pt;font-weight:400;line-height:100%"&gt;Amortization of right-of-use assets&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: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;30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 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;67&#160;&lt;/span&gt;&lt;/td&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Interest on lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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="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:9pt;font-weight:400;line-height:100%"&gt;Operating lease cost&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:9pt;font-weight:400;line-height:100%"&gt;5,783&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;5,571&#160;&lt;/span&gt;&lt;/td&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,033&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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="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:9pt;font-weight:400;line-height:100%"&gt;Variable lease cost&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:9pt;font-weight:400;line-height:100%"&gt;348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;410&#160;&lt;/span&gt;&lt;/td&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="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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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:9pt;font-weight:400;line-height:100%"&gt;Total lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;7,559&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;7,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:LeaseCostTableTextBlock>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzQtMi0xLTEtNjM4ODc_ae4a1ad2-e9b6-4eee-aae6-7ac37fe5e27b"
      unitRef="usd">30000</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzQtNC0xLTEtNjM4ODc_10c60909-5537-4b8c-82b8-f1a1b8aaa2fd"
      unitRef="usd">67000</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <us-gaap:FinanceLeaseInterestExpense
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzUtMi0xLTEtNjM4ODc_087b08ff-3d57-4c42-bfeb-0dc1c44607d7"
      unitRef="usd">1000</us-gaap:FinanceLeaseInterestExpense>
    <us-gaap:FinanceLeaseInterestExpense
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzUtNC0xLTEtNjM4ODc_8a65aad8-86fd-4d73-90b4-dd208f505412"
      unitRef="usd">3000</us-gaap:FinanceLeaseInterestExpense>
    <us-gaap:OperatingLeaseCost
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzYtMi0xLTEtNjM4ODc_7f307640-c575-4ca4-a38c-cd536bf51f5c"
      unitRef="usd">5783000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzYtNC0xLTEtNjM4ODc_dab4bab9-c65b-4918-9697-2686c6e6b8c7"
      unitRef="usd">5571000</us-gaap:OperatingLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzctMi0xLTEtNjM4ODc_691afac3-eba3-4645-bcec-fe57a343afb5"
      unitRef="usd">1397000</us-gaap:ShortTermLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzctNC0xLTEtNjM4ODc_21be4462-5084-4851-8ad5-58ff704cb78f"
      unitRef="usd">1033000</us-gaap:ShortTermLeaseCost>
    <us-gaap:VariableLeaseCost
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzgtMi0xLTEtNjM4ODc_6f83dedd-8d63-4314-a8e3-ff5ed5954485"
      unitRef="usd">348000</us-gaap:VariableLeaseCost>
    <us-gaap:VariableLeaseCost
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzgtNC0xLTEtNjM4ODc_916fe6e9-f5a4-4042-8e50-fbbfd665e9d7"
      unitRef="usd">410000</us-gaap:VariableLeaseCost>
    <us-gaap:LeaseCost
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzEwLTItMS0xLTYzODg3_dff9fcd5-0b67-4813-85c5-e11fa0eb1477"
      unitRef="usd">7559000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo4MzRmY2ZjYjhjZTQ0NTg2YWVlOWZmN2NjZTE0NWM0OC90YWJsZXJhbmdlOjgzNGZjZmNiOGNlNDQ1ODZhZWU5ZmY3Y2NlMTQ1YzQ4XzEwLTQtMS0xLTYzODg3_0b97e97f-14ad-4690-870b-1a84ef5d4445"
      unitRef="usd">7084000</us-gaap:LeaseCost>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90ZXh0cmVnaW9uOjAyZjdiZjllYzliYTRjYTRhYTNhYmI3ZDdhMGQ0YzZiXzc0NQ_219b59f1-9753-4fdd-90c9-766d812be467">&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, future minimum lease payments under these non-cancelable leases are:&lt;/span&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:70.245%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.110%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.345%"/&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="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;Future Minimum Lease Payments&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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:9pt;font-weight:700;line-height:100%"&gt;Operating&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:700;line-height:100%"&gt;Leases&lt;/span&gt;&lt;/div&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:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,177&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,099&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,294&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2026&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,728&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,780&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Thereafter&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,743&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total minimum lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,821&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:9pt;font-weight:400;line-height:100%"&gt;Less imputed interest&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,287)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;Total lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17,534&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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;/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;/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;/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;/tr&gt;&lt;/table&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo3NTI3ZmZlMTUzMmI0ZmM4YmEwOTY2YWJlNThlOTZjNy90YWJsZXJhbmdlOjc1MjdmZmUxNTMyYjRmYzhiYTA5NjZhYmU1OGU5NmM3XzItMi0xLTEtNjM4ODc_99a7a259-2f83-4d67-b7da-b7332d0b10f8"
      unitRef="usd">5177000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo3NTI3ZmZlMTUzMmI0ZmM4YmEwOTY2YWJlNThlOTZjNy90YWJsZXJhbmdlOjc1MjdmZmUxNTMyYjRmYzhiYTA5NjZhYmU1OGU5NmM3XzMtMi0xLTEtNjM4ODc_417632b7-0a7e-4065-b9e9-16cf93d9086e"
      unitRef="usd">4099000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo3NTI3ZmZlMTUzMmI0ZmM4YmEwOTY2YWJlNThlOTZjNy90YWJsZXJhbmdlOjc1MjdmZmUxNTMyYjRmYzhiYTA5NjZhYmU1OGU5NmM3XzQtMi0xLTEtNjM4ODc_4e4f6926-cc83-4f1d-a4ba-77335bb243f8"
      unitRef="usd">3294000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo3NTI3ZmZlMTUzMmI0ZmM4YmEwOTY2YWJlNThlOTZjNy90YWJsZXJhbmdlOjc1MjdmZmUxNTMyYjRmYzhiYTA5NjZhYmU1OGU5NmM3XzUtMi0xLTEtNjM4ODc_d5119dd6-9388-4114-8f70-d2eb37b4e1af"
      unitRef="usd">2728000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo3NTI3ZmZlMTUzMmI0ZmM4YmEwOTY2YWJlNThlOTZjNy90YWJsZXJhbmdlOjc1MjdmZmUxNTMyYjRmYzhiYTA5NjZhYmU1OGU5NmM3XzYtMi0xLTEtNjM4ODc_144ba141-9704-42d4-a3ca-90625fdb3dc0"
      unitRef="usd">1780000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo3NTI3ZmZlMTUzMmI0ZmM4YmEwOTY2YWJlNThlOTZjNy90YWJsZXJhbmdlOjc1MjdmZmUxNTMyYjRmYzhiYTA5NjZhYmU1OGU5NmM3XzctMi0xLTEtNjM4ODc_5f21fdad-7b1b-4503-85f4-45508a437209"
      unitRef="usd">1743000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo3NTI3ZmZlMTUzMmI0ZmM4YmEwOTY2YWJlNThlOTZjNy90YWJsZXJhbmdlOjc1MjdmZmUxNTMyYjRmYzhiYTA5NjZhYmU1OGU5NmM3XzgtMi0xLTEtNjM4ODc_effcbc67-fd04-4935-bd64-a11663b4b3a1"
      unitRef="usd">18821000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo3NTI3ZmZlMTUzMmI0ZmM4YmEwOTY2YWJlNThlOTZjNy90YWJsZXJhbmdlOjc1MjdmZmUxNTMyYjRmYzhiYTA5NjZhYmU1OGU5NmM3XzktMi0xLTEtNjM4ODc_b7485895-654a-4155-8122-cba868dc9963"
      unitRef="usd">1287000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTo3NTI3ZmZlMTUzMmI0ZmM4YmEwOTY2YWJlNThlOTZjNy90YWJsZXJhbmdlOjc1MjdmZmUxNTMyYjRmYzhiYTA5NjZhYmU1OGU5NmM3XzEwLTItMS0xLTYzODg3_a7a4663f-3cf7-4118-9e68-7798f891d370"
      unitRef="usd">17534000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseExpense
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90ZXh0cmVnaW9uOjAyZjdiZjllYzliYTRjYTRhYTNhYmI3ZDdhMGQ0YzZiXzM3Ng_2b5be8f4-c1fc-4fb0-b5d7-1da61cbd1da5"
      unitRef="usd">7500000</us-gaap:OperatingLeaseExpense>
    <us-gaap:OperatingLeaseExpense
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90ZXh0cmVnaW9uOjAyZjdiZjllYzliYTRjYTRhYTNhYmI3ZDdhMGQ0YzZiXzM4Nw_ec23664c-3994-4aa2-b91f-0c76e0fc00f7"
      unitRef="usd">7000000</us-gaap:OperatingLeaseExpense>
    <us-gaap:OperatingLeaseExpense
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90ZXh0cmVnaW9uOjAyZjdiZjllYzliYTRjYTRhYTNhYmI3ZDdhMGQ0YzZiXzQwMg_bca690cf-48b6-4ba5-8a09-19e45b34e656"
      unitRef="usd">6100000</us-gaap:OperatingLeaseExpense>
    <alg:LesseeOperatingLeaseLeaseNotYetCommencedAmount
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90ZXh0cmVnaW9uOjAyZjdiZjllYzliYTRjYTRhYTNhYmI3ZDdhMGQ0YzZiXzUzMw_68b744fb-dab7-48c6-bd33-8f393534a6c1"
      unitRef="usd">3100000</alg:LesseeOperatingLeaseLeaseNotYetCommencedAmount>
    <alg:AssetsAndLiabilitiesLesseeTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90ZXh0cmVnaW9uOjAyZjdiZjllYzliYTRjYTRhYTNhYmI3ZDdhMGQ0YzZiXzc0Ng_704227dd-bf42-4abf-9270-655d6e6327ac">&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental balance sheet information related to leases was as follows:&lt;/span&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:60.888%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.992%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.420%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.577%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.423%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="15" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;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;December 31,&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:9pt;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="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;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-right:-30pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtMC0xLTEtNjM4ODc_519b9153-1678-4ae1-96d9-ece32fbc6c3b"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtMC0xLTEtNjM4ODc_5e442bd9-e082-43f6-86fc-6dbc895fe9ba"&gt;Other non-current assets&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;17,249&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;16,744&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;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;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:#def3c0;padding: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 style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtMC0xLTEtNjM4ODc_54be147c-36db-432e-8216-c265a23c942d"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtMC0xLTEtNjM4ODc_82079088-df46-459e-bc9c-032b93ad004c"&gt;Accrued liabilities&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;4,685&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;4,655&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:9pt;font-weight:400;line-height:100%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtMC0xLTEtNjM4ODc_152d7955-5136-4b3a-93f9-0d42b9c326e3"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtMC0xLTEtNjM4ODc_39316545-72e7-4e77-b63e-2caddc622e2e"&gt;Other long-term liabilities&lt;/span&gt;&lt;/span&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:9pt;font-weight:400;line-height:100%"&gt;12,849&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,237&#160;&lt;/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:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Total operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;17,534&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;16,892&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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;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:9pt;font-weight:400;line-height:100%"&gt;Weighted average remaining lease term&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;4.66 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;5.14 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Weighted average discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;3.30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 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;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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.83&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 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;%&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;/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;/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;/tr&gt;&lt;/table&gt;</alg:AssetsAndLiabilitiesLesseeTableTextBlock>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtMi0xLTEtNjM4ODc_85eee0b7-19f0-4d4f-8f15-7f5eab5067d6"
      unitRef="usd">17249000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzMtNC0xLTEtNjM4ODc_7d585d02-d41e-4c2d-bedc-008ef5994c89"
      unitRef="usd">16744000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtMi0xLTEtNjM4ODc_3c6d346b-779b-4d6e-9ae8-98e8c813b0af"
      unitRef="usd">4685000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzUtNC0xLTEtNjM4ODc_0351f6fa-6860-4786-a8d8-ba1a85f31e40"
      unitRef="usd">4655000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtMi0xLTEtNjM4ODc_0d179e05-8e49-4996-9f8d-e2e7d7fbf897"
      unitRef="usd">12849000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzYtNC0xLTEtNjM4ODc_ba3a80fe-af3f-42e7-8799-ddcec9916c35"
      unitRef="usd">12237000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiability
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzctMi0xLTEtNjM4ODc_ec80b55d-e3a9-44e9-b4cd-6e798ecc670d"
      unitRef="usd">17534000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiability
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzctNC0xLTEtNjM4ODc_87d1be31-e7e5-4284-90a7-8c42c633b183"
      unitRef="usd">16892000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzgtMi0xLTEtNjM4ODc_b9862b99-e342-41a1-931b-d6d3d0e03698">P4Y7M28D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzgtNC0xLTEtNjM4ODc_51b808e0-a8e7-4fac-aa6a-41367a0a8b40">P5Y1M20D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzktMi0xLTEtNjM4ODc_1ba218c7-339c-4c77-87ea-21ff327c923d"
      unitRef="number">0.0330</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTozNGM5ODI0MTdmY2E0NTg4YmVlNGIyMzFkMTZhNGE0ZS90YWJsZXJhbmdlOjM0Yzk4MjQxN2ZjYTQ1ODhiZWU0YjIzMWQxNmE0YTRlXzktNC0xLTEtNjM4ODc_ba3e154e-5afe-47e2-a716-90364deed1d7"
      unitRef="number">0.0283</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <alg:SupplementalCashFlowInformationRelatedToLeasesTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90ZXh0cmVnaW9uOjAyZjdiZjllYzliYTRjYTRhYTNhYmI3ZDdhMGQ0YzZiXzc0Nw_2ca90c55-b60c-43b4-9698-0a9478cb6b5a">&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Supplemental cash flow information related to leases was as follows:&lt;/span&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.057%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.554%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.847%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.523%"/&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="9" 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;Twelve Months Ended December 31,&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:9pt;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="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;2022&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 #000;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;/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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Cash paid for amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;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;/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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;Operating cash flows from operating leases &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: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;5,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 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;5,013&#160;&lt;/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;/tr&gt;&lt;/table&gt;</alg:SupplementalCashFlowInformationRelatedToLeasesTableTextBlock>
    <us-gaap:OperatingLeasePayments
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTpjMDg1NjQwOGM0M2E0MjMzYTFiNzdkMGFmM2MyOWM1NC90YWJsZXJhbmdlOmMwODU2NDA4YzQzYTQyMzNhMWI3N2QwYWYzYzI5YzU0XzUtMi0xLTEtNjM4ODc_0843084b-576e-4b79-ab60-54cac9787ae9"
      unitRef="usd">5246000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTEvZnJhZzowMmY3YmY5ZWM5YmE0Y2E0YWEzYWJiN2Q3YTBkNGM2Yi90YWJsZTpjMDg1NjQwOGM0M2E0MjMzYTFiNzdkMGFmM2MyOWM1NC90YWJsZXJhbmdlOmMwODU2NDA4YzQzYTQyMzNhMWI3N2QwYWYzYzI5YzU0XzUtNC0xLTEtNjM4ODc_23596c6b-73a5-4ce5-82b4-75288142801c"
      unitRef="usd">5013000</us-gaap:OperatingLeasePayments>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90ZXh0cmVnaW9uOjEyOWI3M2FjZWExMTQyYTBiZTg5ODczODk0MjhiNDM5Xzg3_b3fc34f6-3a7b-4a52-8019-cbc59e3d993f">ACCRUED LIABILITIES&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accrued liabilities consist of the following balances:&lt;/span&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.028%"/&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.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.847%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.499%"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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="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;2022&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;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Salaries, wages and bonuses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;37,590&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;37,462&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Lease liability&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,685&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,655&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Taxes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,426&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,902&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Warranty&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,340&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,953&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Retirement provision&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,588&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,967&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Customer deposits&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,197&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,383&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,542&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,201&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accrued liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;71,368&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;73,523&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock>
    <us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90ZXh0cmVnaW9uOjEyOWI3M2FjZWExMTQyYTBiZTg5ODczODk0MjhiNDM5Xzg5_cb52158f-862a-4125-9b02-17d9afe0ecda">&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accrued liabilities consist of the following balances:&lt;/span&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.028%"/&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.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.847%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.499%"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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="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;2022&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;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Salaries, wages and bonuses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;37,590&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;37,462&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Lease liability&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,685&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,655&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Taxes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,426&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,902&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Warranty&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,340&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,953&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Retirement provision&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,588&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,967&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Customer deposits&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,197&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,383&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,542&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,201&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accrued liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;71,368&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;73,523&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock>
    <us-gaap:AccruedEmployeeBenefitsCurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzItMi0xLTEtNjM4ODc_6d86061c-03a5-4c23-893e-4e7e3e3a0c67"
      unitRef="usd">37590000</us-gaap:AccruedEmployeeBenefitsCurrent>
    <us-gaap:AccruedEmployeeBenefitsCurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzItNC0xLTEtNjM4ODc_30987d90-06f3-419f-865d-92039615a154"
      unitRef="usd">37462000</us-gaap:AccruedEmployeeBenefitsCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzMtMi0xLTEtNjM4ODc_a8daa139-2b2a-4964-9131-b2eceba6eab0"
      unitRef="usd">4685000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzMtNC0xLTEtNjM4ODc_989e292c-337b-485f-9b99-fde064bd04f0"
      unitRef="usd">4655000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:TaxesPayableCurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzQtMi0xLTEtNjM4ODc_843ff345-a0b2-4a1a-85ec-fd6da402103c"
      unitRef="usd">2426000</us-gaap:TaxesPayableCurrent>
    <us-gaap:TaxesPayableCurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzQtNC0xLTEtNjM4ODc_ac191bb7-c5e4-49a6-8f8d-2bb305026903"
      unitRef="usd">1902000</us-gaap:TaxesPayableCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzUtMi0xLTEtNjM4ODc_2c5375bf-ac12-4e1d-9353-f98eb888f295"
      unitRef="usd">9340000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzUtNC0xLTEtNjM4ODc_95ef326e-2800-43d5-b254-e4d3510f230e"
      unitRef="usd">9953000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzYtMi0xLTEtNjM4ODc_336f6545-0215-402b-b719-6360603272ae"
      unitRef="usd">2588000</us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities>
    <us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzYtNC0xLTEtNjM4ODc_79e0e65a-de52-4754-8364-0e9ab3be3603"
      unitRef="usd">2967000</us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzctMi0xLTEtNjM4ODc_fd449cfb-cb94-455a-9758-c2c1350fb69a"
      unitRef="usd">5197000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzctNC0xLTEtNjM4ODc_022d1714-9397-4908-aa08-f20dad3cc285"
      unitRef="usd">6383000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzgtMi0xLTEtNjM4ODc_f9ff7924-a000-437b-969e-c384684efd20"
      unitRef="usd">9542000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzgtNC0xLTEtNjM4ODc_dc07e361-bf9c-47d8-9136-06569ad3fab6"
      unitRef="usd">10201000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzktMi0xLTEtNjM4ODc_597be378-e413-4693-b487-764693cd4e0d"
      unitRef="usd">71368000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNTcvZnJhZzoxMjliNzNhY2VhMTE0MmEwYmU4OTg3Mzg5NDI4YjQzOS90YWJsZTo5YmM4ZTk4YjgxZTU0NTM1OWViNTMwOTBiMjZjMzhjZC90YWJsZXJhbmdlOjliYzhlOThiODFlNTQ1MzU5ZWI1MzA5MGIyNmMzOGNkXzktNC0xLTEtNjM4ODc_75883dfa-4e07-4b42-b9a8-6f5f77dec61f"
      unitRef="usd">73523000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:FairValueDisclosuresTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjAvZnJhZzphMTIyNjQ0MDc5NDk0ODg0YTdlZjU2ZGVjMWI0NWExMS90ZXh0cmVnaW9uOmExMjI2NDQwNzk0OTQ4ODRhN2VmNTZkZWMxYjQ1YTExXzMwNDg_7b3b8559-97a2-4c58-bc63-db95232d082e">FAIR VALUE OF FINANCIAL INSTRUMENTS &lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;U.S. GAAP requires or permits certain assets or liabilities to be measured at fair value on a recurring or non- recurring basis in our balance sheets. U.S. GAAP also requires the disclosure of the fair values of financial instruments when an option to elect fair value accounting has been provided but such election has not been made.  A debt obligation is an example of such a financial instrument.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&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 exchange price that would be received for an asset or paid to transfer a liability (an exit price) in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants. There is a three-tier fair value hierarchy based upon the observability of inputs used in valuation techniques. Observable inputs (highest level) reflect market data obtained from independent sources, while &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;unobservable inputs (lowest level) reflect internally developed market assumptions. In fair value, measurements are classified under the following hierarchy:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Level 1&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &#x2013; Quoted prices for identical assets or liabilities in active markets.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:81pt;text-indent:-45pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Level 2&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &#x2013; Quoted prices for similar instruments in active markets; quoted prices for identical or similar instruments in markets that are not active; and model-derived valuations in which all significant inputs or significant value-drivers are observable in active markets.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:81pt;text-indent:-45pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Level 3&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &#x2013; Model-derived valuations in which one or more significant inputs or significant value-drivers are unobservable.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-right:16pt;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;When measuring fair value, the Company maximizes use of observable inputs and minimizes the use of unobservable inputs.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:6pt;padding-right:16pt;text-indent:36pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:0.4pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;       Fair value measurements are classified to the lowest level input or value-driver that is significant to the valuation. A measurement may therefore be classified within Level 3 even though there may be significant inputs that are readily observable.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The carrying values of certain financial instruments, including cash and cash equivalents, accounts receivable, accounts payable, and accrued expenses, approximate fair value because of the short-term nature of these items. The carrying value of our debt approximates the fair value as of December&#160;31, 2022 and 2021, as the floating rates on our outstanding balances approximate current market rates. This conclusion was made based on Level 2 inputs.   Fair values determined by Level 2 utilize inputs that are observable for the asset or liability, either directly or indirectly. These include quoted prices for similar assets or liabilities in active markets and quoted prices for identical or similar assets or liabilities in markets that are not active. Other than the investments held by the retirement benefit plans, as described in &lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&lt;a href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_175" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Note 17&lt;/a&gt;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; to the Consolidated Financial Statements, the Company does not have any other significant financial assets or liabilities measured at fair value on a recurring basis. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The Company has no recurring or nonrecurring valuations that fall under Level 3 of the fair value hierarchy as of December&#160;31, 2022 and 2021.&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:FairValueOfFinancialInstrumentsPolicy
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjAvZnJhZzphMTIyNjQ0MDc5NDk0ODg0YTdlZjU2ZGVjMWI0NWExMS90ZXh0cmVnaW9uOmExMjI2NDQwNzk0OTQ4ODRhN2VmNTZkZWMxYjQ1YTExXzMwNDk_ab1ffaab-6218-42dd-9bbe-4ee2ffc35feb">&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;U.S. GAAP requires or permits certain assets or liabilities to be measured at fair value on a recurring or non- recurring basis in our balance sheets. U.S. GAAP also requires the disclosure of the fair values of financial instruments when an option to elect fair value accounting has been provided but such election has not been made.  A debt obligation is an example of such a financial instrument.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&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 exchange price that would be received for an asset or paid to transfer a liability (an exit price) in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants. There is a three-tier fair value hierarchy based upon the observability of inputs used in valuation techniques. Observable inputs (highest level) reflect market data obtained from independent sources, while &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;unobservable inputs (lowest level) reflect internally developed market assumptions. In fair value, measurements are classified under the following hierarchy:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Level 1&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &#x2013; Quoted prices for identical assets or liabilities in active markets.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:81pt;text-indent:-45pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Level 2&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &#x2013; Quoted prices for similar instruments in active markets; quoted prices for identical or similar instruments in markets that are not active; and model-derived valuations in which all significant inputs or significant value-drivers are observable in active markets.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:81pt;text-indent:-45pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Level 3&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &#x2013; Model-derived valuations in which one or more significant inputs or significant value-drivers are unobservable.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-right:16pt;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;When measuring fair value, the Company maximizes use of observable inputs and minimizes the use of unobservable inputs.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:6pt;padding-right:16pt;text-indent:36pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:0.4pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;       Fair value measurements are classified to the lowest level input or value-driver that is significant to the valuation. A measurement may therefore be classified within Level 3 even though there may be significant inputs that are readily observable.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The carrying values of certain financial instruments, including cash and cash equivalents, accounts receivable, accounts payable, and accrued expenses, approximate fair value because of the short-term nature of these items. The carrying value of our debt approximates the fair value as of December&#160;31, 2022 and 2021, as the floating rates on our outstanding balances approximate current market rates. This conclusion was made based on Level 2 inputs.   Fair values determined by Level 2 utilize inputs that are observable for the asset or liability, either directly or indirectly. These include quoted prices for similar assets or liabilities in active markets and quoted prices for identical or similar assets or liabilities in markets that are not active. Other than the investments held by the retirement benefit plans, as described in &lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&lt;a href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_175" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Note 17&lt;/a&gt;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; to the Consolidated Financial Statements, the Company does not have any other significant financial assets or liabilities measured at fair value on a recurring basis. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The Company has no recurring or nonrecurring valuations that fall under Level 3 of the fair value hierarchy as of December&#160;31, 2022 and 2021.&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueOfFinancialInstrumentsPolicy>
    <us-gaap:DebtDisclosureTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzIzNjk_230910db-5e66-40e0-98ac-23000849f930">LONG-TERM DEBT&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of long-term debt are as follows:&lt;/span&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: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:1.0%"/&gt;&lt;td style="width:4.747%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.330%"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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="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;2022&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;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Bank revolving credit facility&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;52,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Term debt&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;249,928&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;265,498&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_9b1bfaa9-100d-4705-a145-bc36daae463f"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_c663b58e-5137-4e83-8879-5ba725887654"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_fdd87ed0-80b6-4669-a105-d27b4fbd2dac"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_ffc75352-7531-4c29-bdca-e32d1f2af6f6"&gt;Capital lease obligations&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;56&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total debt&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;301,952&#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:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;269,554&#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:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less current maturities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15,009&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15,032&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total long-term debt&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;286,943&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;254,522&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="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:115%"&gt;On October 28, 2022, the Company, as Borrower, and each of its domestic subsidiaries as guarantors, entered into a Third Amended and Restated Credit Agreement (the &#x201c;2022 Credit Agreement&#x201d;) with Bank of America, N.A., as Administrative Agent.  The 2022 Credit Agreement provides Borrower with the ability to request loans and other financial obligations in an aggregate amount of up to $655.0 million. Under the 2022 Credit Agreement, the Company has borrowed $255.0 million pursuant to a Term Facility, while up to $400.0 million is available to the Company pursuant to a Revolver Facility which terminates in 5 years. The Term Facility requires the Company to make equal quarterly principal payments of $3,750,000 over the term of the loan, with the final payment of any outstanding principal amount, plus interest, due at the end of the five year term. Borrowings under the 2022 Credit Agreement bear interest, at the Company&#x2019;s option, at a Term Secured Overnight Financing Rate (&#x201c;SOFR&#x201d;) or a Base Rate (each as defined in the 2022 Credit Agreement), plus, in each case, an applicable margin. The applicable margin ranges from 1.25% to 2.50% for Term SOFR borrowings and from .25% to 1.50% for Base Rate borrowings with the margin percentage based upon the Company's consolidated leverage ratio. The Company must also pay a commitment fee to the lenders ranging between 0.15% to 0.30% on any unused portion of the $400,000,000 Revolver Facility.&lt;/span&gt;&lt;/div&gt;&lt;div style="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:115%"&gt;The 2022 Credit Agreement requires the Company to maintain two financial covenants, namely, a maximum consolidated leverage ratio and a minimum consolidated fixed charge coverage ratio. The Agreement also contains various covenants relating to limitations on indebtedness, limitations on investments and acquisitions, limitations on the sale of properties and limitations on liens and capital expenditures. The Agreement also contains other customary covenants, representations and events of defaults.  The expiration date of the 2022 Credit Agreement, including the Term Facility and the Revolver Facility, is October&#160;28, 2027.  &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify;text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="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:115%"&gt;As of December&#160;31, 2022, $301.9 million was outstanding under the Credit Agreement. Of the total outstanding, $249.9 million was on the Term Facility at a rate of 6.17% and $52.0 million was on the Revolver Facility at a rate of 6.25%. On December&#160;31, 2022, $2.8 million of the revolver capacity was committed to irrevocable standby letters of credit issued in the ordinary course of business as required by vendors' contracts resulting in $295.2 million in available borrowings. The Company is in compliance with the covenants under the Credit Agreement.&lt;/span&gt;&lt;/div&gt;&lt;div style="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:115%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;The aggregate maturities of long-term debt, as of December&#160;31, 2022, are as follows: $15.0 million in 2023; $15.0 million in 2024; $15.0 million in 2025; $15.0 million in 2026; $241.9 in 2027; and zero thereafter.</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:ScheduleOfDebtInstrumentsTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzIzNzA_97dcb1d1-6620-414d-807f-b62dbc185e50">&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of long-term debt are as follows:&lt;/span&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: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:1.0%"/&gt;&lt;td style="width:4.747%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.330%"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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="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;2022&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;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Bank revolving credit facility&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;52,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Term debt&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;249,928&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;265,498&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_9b1bfaa9-100d-4705-a145-bc36daae463f"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_c663b58e-5137-4e83-8879-5ba725887654"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_fdd87ed0-80b6-4669-a105-d27b4fbd2dac"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMC0xLTEtNjM4ODc_ffc75352-7531-4c29-bdca-e32d1f2af6f6"&gt;Capital lease obligations&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;56&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total debt&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;301,952&#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:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;269,554&#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:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less current maturities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15,009&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15,032&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total long-term debt&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;286,943&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;254,522&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfDebtInstrumentsTextBlock>
    <us-gaap:LongTermDebt
      contextRef="i424fb85a13d04e37be619989350f15bf_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzItMi0xLTEtNjM4ODc_7ef461d2-23c2-4a20-b5ba-4549e9a78b78"
      unitRef="usd">52000000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="i91573b62aa034f839c16b96542b20382_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzItNC0xLTEtNjM4ODc_e5073fa6-e2b6-455e-9fea-c567ab801138"
      unitRef="usd">4000000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="ia1bd7756203d4a66b543323629c2482c_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzMtMi0xLTEtNjM4ODc_cb40efd8-6d18-4469-8ae1-2fcf905725c0"
      unitRef="usd">249928000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="i675eae9488b54f378ef618ba956ab83c_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzMtNC0xLTEtNjM4ODc_77891ec3-345b-4462-98d7-6c21b924c384"
      unitRef="usd">265498000</us-gaap:LongTermDebt>
    <us-gaap:FinanceLeaseLiability
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtMi0xLTEtNjM4ODc_a767acd3-2f97-4741-9531-80ff46fa6380"
      unitRef="usd">24000</us-gaap:FinanceLeaseLiability>
    <us-gaap:FinanceLeaseLiability
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzQtNC0xLTEtNjM4ODc_b22efee9-a3c0-48ae-b6b1-bcd4dab53563"
      unitRef="usd">56000</us-gaap:FinanceLeaseLiability>
    <us-gaap:LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzYtMi0xLTEtNjM4ODc_8784bbeb-489f-48f4-a25c-5519ebd74306"
      unitRef="usd">301952000</us-gaap:LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities>
    <us-gaap:LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzYtNC0xLTEtNjM4ODc_651fca47-303a-479d-bf89-73dce384ac76"
      unitRef="usd">269554000</us-gaap:LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities>
    <us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzctMi0xLTEtNjM4ODc_2db745ac-fc1e-4ff3-b293-1f754683874b"
      unitRef="usd">15009000</us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzctNC0xLTEtNjM4ODc_f6fb4cc7-bb13-4437-bff7-8ca7fdf0402b"
      unitRef="usd">15032000</us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzgtMi0xLTEtNjM4ODc_2199c823-b5f7-4642-b8db-b3808e695b21"
      unitRef="usd">286943000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90YWJsZTpiMzNhMjc2OGZmOGE0Y2Y5OTM0OGMxMGZjZWZiMDg2Ny90YWJsZXJhbmdlOmIzM2EyNzY4ZmY4YTRjZjk5MzQ4YzEwZmNlZmIwODY3XzgtNC0xLTEtNjM4ODc_725e0be8-a73e-4500-be9b-38dc660ccd65"
      unitRef="usd">254522000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="ia7571866d7ef4d27a8e9a1abed0c52c3_I20221028"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzQ1NA_96b42513-dba0-48db-a8da-0fd89408d0c4"
      unitRef="usd">655000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i0e92704c63dd44fd966d6fae8d0d8e53_I20221028"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzY1NA_f578f2a7-a582-4b77-9dc2-858990fbbb2e"
      unitRef="usd">255000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i9a6b48d630e74ce9aef9f9eb731b3006_I20221028"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0Xzg1MA_641a462c-255a-4841-9555-9bb23967c2c7"
      unitRef="usd">400000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityExpirationPeriod
      contextRef="ie04bb4cb3a604fbd98c2353b6aa9d56e_D20221028-20221028"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0Xzk0NQ_f752ff33-90b7-4c90-aa6c-25a1381a0311">P5Y</us-gaap:LineOfCreditFacilityExpirationPeriod>
    <us-gaap:DebtInstrumentPeriodicPayment
      contextRef="i9b6e8624e81943d4beae545861849ec0_D20221028-20221028"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzYwNDczMTM5NjQwMDg_1e5052cb-4840-4724-b81a-79863a68d96d"
      unitRef="usd">3750000</us-gaap:DebtInstrumentPeriodicPayment>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="idfac62871e4a40fd93ae3475d46cc451_I20221028"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzYwNDczMTM5NjQwMjA_5b343329-f251-4372-bb53-3925165b00ab"
      unitRef="number">0.0125</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="ia094bf88179843b3a2e0b1221fc54927_I20221028"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzYwNDczMTM5NjQwMjc_8a1ee0bf-fa27-4cbb-8f95-ad6480ac420b"
      unitRef="number">0.025</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="iacedc088100e4e3cab47bb79b4393b39_I20221028"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzYwNDczMTM5NjQwMzQ_7e02be3b-bd0d-4719-b5a1-92dc33c86138"
      unitRef="number">0.0025</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="ib5a844e3ed8648eab740d6b4a8340cf8_I20221028"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzYwNDczMTM5NjQwNDA_e9260118-1b4d-4520-a886-799702c68635"
      unitRef="number">0.015</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage
      contextRef="ia90d069988524b79a36aa083c4b5ea7f_D20221028-20221028"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzYwNDczMTM5NjQwNjE_5d44d24c-180e-4462-902d-1f9215528822"
      unitRef="number">0.0015</us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage>
    <us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage
      contextRef="i57683f616816455b9d2d3f82dfee4e7e_D20221028-20221028"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzYwNDczMTM5NjQwNjg_74352d13-1751-4a9a-a9a6-2a2e478b745f"
      unitRef="number">0.003</us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage>
    <us-gaap:DebtInstrumentUnusedBorrowingCapacityAmount
      contextRef="ia7571866d7ef4d27a8e9a1abed0c52c3_I20221028"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzYwNDczMTM5NjQwNDc_776528e1-43e4-41cb-b6f2-381618da37d2"
      unitRef="usd">400000000</us-gaap:DebtInstrumentUnusedBorrowingCapacityAmount>
    <alg:DebtInstrumentNumberOfCovenants
      contextRef="i5d9b8bb0d7d046279d8250520b65cd6c_I20191024"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzEzMDE_6755046d-43bb-4d69-b555-13d3d3923b95"
      unitRef="covenant">2</alg:DebtInstrumentNumberOfCovenants>
    <us-gaap:LineOfCreditFacilityFairValueOfAmountOutstanding
      contextRef="iafdae17ff83f451d8586288de3217a60_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzE3ODQ_b0063a22-8014-40a5-be29-71de70cf66e2"
      unitRef="usd">301900000</us-gaap:LineOfCreditFacilityFairValueOfAmountOutstanding>
    <us-gaap:LineOfCreditFacilityFairValueOfAmountOutstanding
      contextRef="i974fb1cfb185413eb7f81ef329347fe1_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzE4NTg_f758c6ba-e4e4-4ca5-b1e9-60267944d893"
      unitRef="usd">249900000</us-gaap:LineOfCreditFacilityFairValueOfAmountOutstanding>
    <us-gaap:LongtermDebtWeightedAverageInterestRate
      contextRef="i974fb1cfb185413eb7f81ef329347fe1_I20221231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzE2NDkyNjc0NTI4OTU_48e179ad-25a4-48ce-b5a7-468359a9e7ba"
      unitRef="number">0.0617</us-gaap:LongtermDebtWeightedAverageInterestRate>
    <us-gaap:LineOfCreditFacilityFairValueOfAmountOutstanding
      contextRef="i19738afad34c4dc5a87ec2fe8156ed18_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzE5MDY_be4efdf1-fe56-4664-a944-f6bcee237909"
      unitRef="usd">52000000</us-gaap:LineOfCreditFacilityFairValueOfAmountOutstanding>
    <us-gaap:LongtermDebtWeightedAverageInterestRate
      contextRef="i19738afad34c4dc5a87ec2fe8156ed18_I20221231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzE2NDkyNjc0NTI5MDE_f7733f87-bde8-45ee-8e40-be0d84a49693"
      unitRef="number">0.0625</us-gaap:LongtermDebtWeightedAverageInterestRate>
    <us-gaap:LineOfCreditFacilityCapacityAvailableForTradePurchases
      contextRef="i19738afad34c4dc5a87ec2fe8156ed18_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzE5NjI_d4b8f792-a8a1-49fe-a035-0e7739b3318b"
      unitRef="usd">2800000</us-gaap:LineOfCreditFacilityCapacityAvailableForTradePurchases>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity
      contextRef="i19738afad34c4dc5a87ec2fe8156ed18_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzIxMzQ_1da765e4-9b93-408e-bd96-e8a1cac8556a"
      unitRef="usd">295200000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzIzMTA_1a467abd-e01f-4f6a-8d74-e714e6e0629d"
      unitRef="usd">15000000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzIzMjA_8d4290fc-0189-4b9f-b192-4076e95ec6a5"
      unitRef="usd">15000000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzIzMzA_0e864eee-b5e9-4d7b-801b-4fce4e3bfbcc"
      unitRef="usd">15000000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzIzNDA_e9740447-fe10-41f1-a148-34038c1d2309"
      unitRef="usd">15000000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzE2NDkyNjc0NDQwMzk_dbc30048-fe30-4894-910c-e14b765363e3"
      unitRef="usd">241900000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjMvZnJhZzpkOWI3MDkzMmMxYTI0YjQ3OTg0NWZlMjgyN2ExNWEwNC90ZXh0cmVnaW9uOmQ5YjcwOTMyYzFhMjRiNDc5ODQ1ZmUyODI3YTE1YTA0XzIzNTQ_c630c76d-12f2-4f20-8ff4-5674968531fa"
      unitRef="usd">0</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90ZXh0cmVnaW9uOmVhNTJlMzUwZjkwOTRkZjZiNTRmZDE0NDRhODAwNDQ3XzIwOTg_c58fedbb-1d87-42da-94a5-e788ec4e0ed5">INCOME TAXES&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Income Statement Components&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Earnings before income taxes were as follows:&lt;/span&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.648%"/&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:1.992%"/&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:1.846%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.332%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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="15" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&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="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:top"&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="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:top"&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="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income before income taxes:&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:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Domestic&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;86,680&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;74,070&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;50,977&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;47,630&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;35,428&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,780&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;134,310&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;109,498&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;79,757&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;text-indent:18pt"&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 tax expense (benefit) were as follows:&lt;/span&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:53.285%"/&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:1.0%"/&gt;&lt;td style="width:2.701%"/&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:1.0%"/&gt;&lt;td style="width:2.701%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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="15" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&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="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:top"&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="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:top"&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="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Current:&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:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Domestic&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;19,197&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16,846&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,823&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,848&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,646&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,759&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,674&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,943&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,226&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;34,719&#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:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30,435&#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:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;22,808&#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:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Deferred:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Domestic&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(2,246)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(679)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,238&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(51)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(274)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1199)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;State&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(40)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(229)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(894)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(2,337)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,182)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(855)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total income taxes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,382&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;29,253&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;21,953&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&#160;&#160;&#160;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A reconciliation of the income tax at the Company&#x2019;s U.S. statutory federal income tax rate to the provision for income tax follows: &#160;&lt;/span&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:53.285%"/&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:1.0%"/&gt;&lt;td style="width:2.701%"/&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:1.0%"/&gt;&lt;td style="width:2.701%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.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:'Times New Roman',sans-serif;font-size:9pt;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="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;December 31,&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:9pt;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="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;2022&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;2021&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;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income tax expense at statutory rates&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;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:#def3c0;border-top:1pt 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;28,205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;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:#def3c0;border-top:1pt 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;22,995&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;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:#def3c0;border-top:1pt 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;16,749&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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 7pt;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;Increase (reduction) from:&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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;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;Jurisdictional rate differences&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,989&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,599&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,034&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Executive compensation limitation&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:9pt;font-weight:400;line-height:100%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;1,314&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;170&#160;&lt;/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;/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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;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;Stock based compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;122&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(322)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(366)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;U.S. state taxes&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:9pt;font-weight:400;line-height:100%"&gt;2,632&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;3,724&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,556&#160;&lt;/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:#def3c0;padding:2px 1pt 2px 19pt;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;Foreign tax expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;267&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;704&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;R&amp;amp;D credit &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:9pt;font-weight:400;line-height:100%"&gt;(1,645)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;(670)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;(415)&lt;/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:#def3c0;padding:2px 1pt 2px 19pt;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;GILTI&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Previously unrecognized tax (benefit)/expense&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:9pt;font-weight:400;line-height:100%"&gt;51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;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;Other, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(220)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;605&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(748)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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;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:9pt;font-weight:400;line-height:100%"&gt;Provision for income taxes &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;32,382&#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;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;29,253&#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;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;21,953&#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:#def3c0;border-top:2pt solid #000000;padding: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;Effective tax rate &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:2pt 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;24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:2pt 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:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:2pt 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;27&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:2pt 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:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:2pt 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;28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:2pt 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:9pt;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;/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;/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;/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;/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;/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;/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;/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;/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;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Deferred Income Tax Assets and Liabilities&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;The components of the Company&#x2019;s deferred income tax assets and liabilities were as follows. Certain prior year deferred tax component amounts have been reclassified to conform to the current year presentation. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:112%"&gt; &lt;/span&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:58.110%"/&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:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:4.747%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.330%"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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="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;2022&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;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;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:700;line-height:100%"&gt;Deferred income tax assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Inventory basis difference&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: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;3,459&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 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;1,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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;&#160;Accounts receivable reserve&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;334&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;270&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Rental equipment and Property, plant and equipment &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:9pt;font-weight:400;line-height:100%"&gt;347&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;201&#160;&lt;/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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;&#160;Stock based compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;826&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;754&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Pension liability&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:9pt;font-weight:400;line-height:100%"&gt;2,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="2" style="background-color:#ffffff;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;3,351&#160;&lt;/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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;&#160;Employee benefit accrual&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,451&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;3,070&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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;/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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Product liability and warranty 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:9pt;font-weight:400;line-height:100%"&gt;2,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="2" style="background-color:#ffffff;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,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;/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;/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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;&#160;Foreign net operating loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;3,078&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;3,764&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Lease liability&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:9pt;font-weight:400;line-height:100%"&gt;4,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;4,221&#160;&lt;/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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;&#160;Capitalized R&amp;amp;D costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;4,230&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;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;/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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Other&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:9pt;font-weight:400;line-height:100%"&gt;1,635&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,415&#160;&lt;/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 style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total deferred income tax assets&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: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;26,175&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 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;20,646&#160;&lt;/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:#def3c0;padding: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;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Less: Valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(3,637)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(4,129)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding: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;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Net deferred income tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:2pt solid #000000;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:#def3c0;border-top:2pt 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;22,538&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:2pt solid #000000;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:#def3c0;border-top:2pt 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;16,517&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:2pt 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;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Deferred income tax liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Inventory basis differences&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: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;(264)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 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;(283)&lt;/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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;&#160;Rental equipment and Property, plant and equipment &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,373)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(13,253)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Lease asset&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:9pt;font-weight:400;line-height:100%"&gt;(4,637)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;(4,149)&lt;/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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;&#160;Intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(19,301)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(18,041)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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;/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;/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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Expenses not currently deductible for book purposes&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:9pt;font-weight:400;line-height:100%"&gt;(1,244)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,139)&lt;/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 style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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 13pt;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;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total deferred income tax liabilities&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: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;(39,819)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 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;(36,865)&lt;/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 style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;padding: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;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Net deferred income taxes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt 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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000;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;(17,281)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt 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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000;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;(20,348)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt 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&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&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, the Company had foreign deferred tax assets consisting of foreign net operating losses and other tax benefits available to reduce future taxable income in a foreign jurisdiction. These foreign jurisdictions&#x2019; net operating loss carry-forwards are approximately $10.1 million with an unlimited carry-forward period. The Company also has U.S. state net operating loss carry-forwards in the amount of $0.2 million which will expire between 2036 and 2042.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company's valuation allowances as of December&#160;31, 2022 and 2021 related primarily to foreign net operating losses and foreign tax credits.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Unrecognized Tax Benefits&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A reconciliation of the beginning and ending amount of unrecognized tax benefits is as follows. The Company does not expect the unrecognized tax benefits to change significantly over the next 12 months.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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: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:1.0%"/&gt;&lt;td style="width:4.747%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.330%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="15" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Unrecognized Tax Benefits&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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="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;2022&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;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of beginning of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;270&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;262&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Increases for tax positions related to the current year&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;156&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;82&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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;/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;/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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Decreases due to lapse of statute of limitations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(105)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(74)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;321&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;270&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has adopted the policy to include interest and penalty expense related to income taxes as interest and other expense, respectively. As of December&#160;31, 2022, no interest or penalties have accrued.  With few exceptions, the Company&#x2019;s open tax years for its federal and state income tax returns are for the tax years ended 2017 through 2022, and for tax years ended 2016 through 2022 for its foreign income tax returns.  &lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company currently intends to permanently reinvest its earnings in certain foreign subsidiaries. No U.S. corporate income taxes or foreign withholding taxes should be imposed on future distributions of the earnings not permanently reinvested.  If the amounts asserted as permanent reinvestment were distributed, the Company would be subject to approximately $4.8 million in withholding taxes.&lt;/span&gt;&lt;/div&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90ZXh0cmVnaW9uOmVhNTJlMzUwZjkwOTRkZjZiNTRmZDE0NDRhODAwNDQ3XzIwOTk_47c7d52d-7899-40de-a25d-0b8a6de23ab1">&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Earnings before income taxes were as follows:&lt;/span&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.648%"/&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:1.992%"/&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:1.846%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.332%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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="15" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&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="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:top"&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="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:top"&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="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income before income taxes:&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:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Domestic&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;86,680&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;74,070&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;50,977&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;47,630&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;35,428&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,780&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;134,310&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;109,498&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;79,757&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpjMzgzZTY2OGMxNjU0NDU1YjY0ZGM0MWQ1YjFjZjI3ZS90YWJsZXJhbmdlOmMzODNlNjY4YzE2NTQ0NTViNjRkYzQxZDViMWNmMjdlXzMtMi0xLTEtNjM4ODc_0b28ac73-82db-4945-ae31-3a6d00469c4b"
      unitRef="usd">86680000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpjMzgzZTY2OGMxNjU0NDU1YjY0ZGM0MWQ1YjFjZjI3ZS90YWJsZXJhbmdlOmMzODNlNjY4YzE2NTQ0NTViNjRkYzQxZDViMWNmMjdlXzMtNC0xLTEtNjM4ODc_2e82407a-3bf5-4281-a22e-581f45cbb049"
      unitRef="usd">74070000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpjMzgzZTY2OGMxNjU0NDU1YjY0ZGM0MWQ1YjFjZjI3ZS90YWJsZXJhbmdlOmMzODNlNjY4YzE2NTQ0NTViNjRkYzQxZDViMWNmMjdlXzMtNi0xLTEtNjM4ODc_b9c08b9a-a3ac-4a42-9284-aabb34090855"
      unitRef="usd">50977000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpjMzgzZTY2OGMxNjU0NDU1YjY0ZGM0MWQ1YjFjZjI3ZS90YWJsZXJhbmdlOmMzODNlNjY4YzE2NTQ0NTViNjRkYzQxZDViMWNmMjdlXzQtMi0xLTEtNjM4ODc_5636030f-2901-4b25-9d56-c1f0413fcf79"
      unitRef="usd">47630000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpjMzgzZTY2OGMxNjU0NDU1YjY0ZGM0MWQ1YjFjZjI3ZS90YWJsZXJhbmdlOmMzODNlNjY4YzE2NTQ0NTViNjRkYzQxZDViMWNmMjdlXzQtNC0xLTEtNjM4ODc_b55863d0-404e-4d33-819b-795611e14076"
      unitRef="usd">35428000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpjMzgzZTY2OGMxNjU0NDU1YjY0ZGM0MWQ1YjFjZjI3ZS90YWJsZXJhbmdlOmMzODNlNjY4YzE2NTQ0NTViNjRkYzQxZDViMWNmMjdlXzQtNi0xLTEtNjM4ODc_bf8e3a89-5fab-4500-8d43-eda305f8cedf"
      unitRef="usd">28780000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpjMzgzZTY2OGMxNjU0NDU1YjY0ZGM0MWQ1YjFjZjI3ZS90YWJsZXJhbmdlOmMzODNlNjY4YzE2NTQ0NTViNjRkYzQxZDViMWNmMjdlXzUtMi0xLTEtNjM4ODc_708b383c-4c0b-4e90-8afb-4a4bbf334696"
      unitRef="usd">134310000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpjMzgzZTY2OGMxNjU0NDU1YjY0ZGM0MWQ1YjFjZjI3ZS90YWJsZXJhbmdlOmMzODNlNjY4YzE2NTQ0NTViNjRkYzQxZDViMWNmMjdlXzUtNC0xLTEtNjM4ODc_76d57f85-5a99-442a-a728-691085ceedd7"
      unitRef="usd">109498000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpjMzgzZTY2OGMxNjU0NDU1YjY0ZGM0MWQ1YjFjZjI3ZS90YWJsZXJhbmdlOmMzODNlNjY4YzE2NTQ0NTViNjRkYzQxZDViMWNmMjdlXzUtNi0xLTEtNjM4ODc_1e886dab-c2fd-487b-aefa-bc748e8a9391"
      unitRef="usd">79757000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90ZXh0cmVnaW9uOmVhNTJlMzUwZjkwOTRkZjZiNTRmZDE0NDRhODAwNDQ3XzIxMDY_51c1314e-8745-4a27-852a-b99ec92828c9">&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of income tax expense (benefit) were as follows:&lt;/span&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:53.285%"/&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:1.0%"/&gt;&lt;td style="width:2.701%"/&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:1.0%"/&gt;&lt;td style="width:2.701%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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="15" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&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="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:top"&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="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:top"&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="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Current:&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:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Domestic&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;19,197&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16,846&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,823&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,848&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,646&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,759&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,674&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,943&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,226&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;34,719&#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:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30,435&#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:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;22,808&#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:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Deferred:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Domestic&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(2,246)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(679)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,238&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(51)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(274)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1199)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;State&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(40)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(229)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(894)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(2,337)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,182)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(855)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total income taxes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,382&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;29,253&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;21,953&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzMtMi0xLTEtNjM4ODc_9f3b430d-e3ca-4d7d-8207-055172334f08"
      unitRef="usd">19197000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzMtNC0xLTEtNjM4ODc_1e9f64f6-1f55-41bf-8d40-d588f3732ab2"
      unitRef="usd">16846000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzMtNi0xLTEtNjM4ODc_a499bc1b-68b9-406b-91e3-e9e6a8093879"
      unitRef="usd">10823000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzQtMi0xLTEtNjM4ODc_09322a40-2377-4ee8-97d3-bd3c60e08c25"
      unitRef="usd">11848000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzQtNC0xLTEtNjM4ODc_c4940132-028a-428f-b405-ad9a1a6cb048"
      unitRef="usd">8646000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzQtNi0xLTEtNjM4ODc_5bc5b329-ad7c-4a65-bdcf-8867b55d30af"
      unitRef="usd">8759000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzUtMi0xLTEtNjM4ODc_212c1f3c-c164-44f1-a6c6-2b5a68b3f3fa"
      unitRef="usd">3674000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzUtNC0xLTEtNjM4ODc_b807b1bd-d6b4-4416-8de0-8600c42e2c91"
      unitRef="usd">4943000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzUtNi0xLTEtNjM4ODc_93a22181-85db-47c2-b990-df15682ee7b2"
      unitRef="usd">3226000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzYtMi0xLTEtNjM4ODc_478e3fc1-fcf4-42d6-ae1a-220f31ddcf05"
      unitRef="usd">34719000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzYtNC0xLTEtNjM4ODc_2d4cfe13-2c9c-44a7-8c5f-e34f05ccf828"
      unitRef="usd">30435000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzYtNi0xLTEtNjM4ODc_87b6b6b4-0181-438b-a26e-0e887bc9374e"
      unitRef="usd">22808000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzgtMi0xLTEtNjM4ODc_a64837de-30e8-41aa-9678-db3defa89c18"
      unitRef="usd">-2246000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzgtNC0xLTEtNjM4ODc_d98ee7e1-4a75-49a6-a6b6-cb1270c1c704"
      unitRef="usd">-679000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzgtNi0xLTEtNjM4ODc_93e896d6-712a-4f18-b205-a5d85647cc9e"
      unitRef="usd">1238000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzktMi0xLTEtNjM4ODc_c49d1a9f-08de-4fd3-975e-39f7c2ce58d5"
      unitRef="usd">-51000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzktNC0xLTEtNjM4ODc_9ba5c5e7-5679-4d27-bd09-cacadb29e513"
      unitRef="usd">-274000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzktNi0xLTEtNjM4ODc_b37a9b97-258b-4794-aed6-a368ed76f78b"
      unitRef="usd">-1199000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzEwLTItMS0xLTYzODg3_5916b485-3612-40bc-81e3-286ba54b8255"
      unitRef="usd">-40000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzEwLTQtMS0xLTYzODg3_33279dcb-096f-43f5-86ff-a5ed6cea3aca"
      unitRef="usd">-229000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzEwLTYtMS0xLTYzODg3_e785480d-d7bc-409f-9e93-1f0335cf58d3"
      unitRef="usd">-894000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzExLTItMS0xLTYzODg3_5ce8bab6-1559-4266-992c-ddce27e62d41"
      unitRef="usd">-2337000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzExLTQtMS0xLTYzODg3_741f7eb4-82e4-45ae-81e2-356961617df2"
      unitRef="usd">-1182000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzExLTYtMS0xLTYzODg3_f643fe67-545f-4b9f-a453-8973ea062c07"
      unitRef="usd">-855000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzEyLTItMS0xLTYzODg3_013bcaac-cb53-4d32-a1b1-d973f5637140"
      unitRef="usd">32382000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzEyLTQtMS0xLTYzODg3_c46f4d66-352b-4e91-9190-c96ad264c1d7"
      unitRef="usd">29253000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTplYWZmOGMzNmJkNzY0NTA4OGI4MmU2MGY1ZTZmODM4OC90YWJsZXJhbmdlOmVhZmY4YzM2YmQ3NjQ1MDg4YjgyZTYwZjVlNmY4Mzg4XzEyLTYtMS0xLTYzODg3_eb335542-0e2e-4d76-907d-a32953ca6973"
      unitRef="usd">21953000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90ZXh0cmVnaW9uOmVhNTJlMzUwZjkwOTRkZjZiNTRmZDE0NDRhODAwNDQ3XzIxMDA_839dc20f-7f7a-4cf7-8e5a-ed6d7b807630">&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A reconciliation of the income tax at the Company&#x2019;s U.S. statutory federal income tax rate to the provision for income tax follows: &#160;&lt;/span&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:53.285%"/&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:1.0%"/&gt;&lt;td style="width:2.701%"/&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:1.0%"/&gt;&lt;td style="width:2.701%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.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:'Times New Roman',sans-serif;font-size:9pt;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="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;December 31,&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:9pt;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="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;2022&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;2021&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;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income tax expense at statutory rates&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;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:#def3c0;border-top:1pt 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;28,205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;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:#def3c0;border-top:1pt 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;22,995&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;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:#def3c0;border-top:1pt 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;16,749&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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 7pt;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;Increase (reduction) from:&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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;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;Jurisdictional rate differences&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,989&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,599&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,034&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Executive compensation limitation&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:9pt;font-weight:400;line-height:100%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;1,314&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;170&#160;&lt;/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;/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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;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;Stock based compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;122&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(322)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(366)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;U.S. state taxes&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:9pt;font-weight:400;line-height:100%"&gt;2,632&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;3,724&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,556&#160;&lt;/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:#def3c0;padding:2px 1pt 2px 19pt;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;Foreign tax expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;267&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;704&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;R&amp;amp;D credit &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:9pt;font-weight:400;line-height:100%"&gt;(1,645)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;(670)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;(415)&lt;/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:#def3c0;padding:2px 1pt 2px 19pt;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;GILTI&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Previously unrecognized tax (benefit)/expense&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:9pt;font-weight:400;line-height:100%"&gt;51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;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;Other, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(220)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;605&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(748)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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;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:9pt;font-weight:400;line-height:100%"&gt;Provision for income taxes &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;32,382&#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;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;29,253&#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;border-top:1pt solid #000000;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;21,953&#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:#def3c0;border-top:2pt solid #000000;padding: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;Effective tax rate &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:2pt 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;24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:2pt 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:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:2pt 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;27&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:2pt 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:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:2pt 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;28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:2pt 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:9pt;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;/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;/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;/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;/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;/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;/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;/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;/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;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzItMi0xLTEtNjM4ODc_4274515b-0215-47ec-a886-e32f3bb42cb9"
      unitRef="usd">28205000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzItNC0xLTEtNjM4ODc_f9e51be2-b687-4881-91ce-e6dde696a652"
      unitRef="usd">22995000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzItNi0xLTEtNjM4ODc_ae2cc9e9-b02a-42e2-969b-0ddc427a9701"
      unitRef="usd">16749000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzQtMi0xLTEtNjM4ODc_9783b525-7ad4-42ee-b96f-c7804eddc16d"
      unitRef="usd">1989000</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzQtNC0xLTEtNjM4ODc_41e416db-39b0-4671-8110-93117546603d"
      unitRef="usd">1599000</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzQtNi0xLTEtNjM4ODc_9612f410-0655-4246-b5b7-bd4c6d9bc1bd"
      unitRef="usd">1034000</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <alg:EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzUtMi0xLTEtNjM4ODc_2a99b76c-92ab-4159-b79e-c1115a298adf"
      unitRef="usd">481000</alg:EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount>
    <alg:EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzUtNC0xLTEtNjM4ODc_f0d78241-5c11-41ca-8925-e706f41872ed"
      unitRef="usd">1314000</alg:EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount>
    <alg:EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzUtNi0xLTEtNjM4ODc_c9cac992-8d05-4ee1-8438-3b3835a2c43e"
      unitRef="usd">170000</alg:EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzgtMi0xLTEtNjM4ODc_70664aaa-43a3-4a07-9eff-f780710c4052"
      unitRef="usd">122000</us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzgtNC0xLTEtNjM4ODc_a668f6dd-ce79-463b-8536-33e440930a65"
      unitRef="usd">-322000</us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzgtNi0xLTEtNjM4ODc_6fde12b3-33e5-47f1-adab-d8494f2b6722"
      unitRef="usd">-366000</us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzktMi0xLTEtNjM4ODc_4ac8a26d-72b3-421d-86c0-4218ab9ac560"
      unitRef="usd">2632000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzktNC0xLTEtNjM4ODc_337902ec-6fdd-4754-8096-9a62c01cd458"
      unitRef="usd">3724000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzktNi0xLTEtNjM4ODc_26194d84-cc54-4b69-b0fa-b3b8d1936423"
      unitRef="usd">2556000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <alg:IncomeTaxRateReconciliationForeignTaxExpense
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzEwLTItMS0xLTYzODg3_2bbd8ec3-4878-4541-89cf-527113543cb5"
      unitRef="usd">267000</alg:IncomeTaxRateReconciliationForeignTaxExpense>
    <alg:IncomeTaxRateReconciliationForeignTaxExpense
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzEwLTQtMS0xLTYzODg3_704392c6-6ee2-474b-b122-783390c5074f"
      unitRef="usd">0</alg:IncomeTaxRateReconciliationForeignTaxExpense>
    <alg:IncomeTaxRateReconciliationForeignTaxExpense
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzEwLTYtMS0xLTYzODg3_1146f4a4-3e1f-4252-aff5-3bc2f5678731"
      unitRef="usd">704000</alg:IncomeTaxRateReconciliationForeignTaxExpense>
    <us-gaap:IncomeTaxReconciliationTaxCreditsResearch
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzExLTItMS0xLTYzODg3_3aa14a63-94e7-4221-9b39-b1d3c4cf52a4"
      unitRef="usd">1645000</us-gaap:IncomeTaxReconciliationTaxCreditsResearch>
    <us-gaap:IncomeTaxReconciliationTaxCreditsResearch
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzExLTQtMS0xLTYzODg3_e88921c5-7508-47cb-9498-3e2188dd6d12"
      unitRef="usd">670000</us-gaap:IncomeTaxReconciliationTaxCreditsResearch>
    <us-gaap:IncomeTaxReconciliationTaxCreditsResearch
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzExLTYtMS0xLTYzODg3_83bd63a3-d8ae-4225-9e6c-52a930ed0135"
      unitRef="usd">415000</us-gaap:IncomeTaxReconciliationTaxCreditsResearch>
    <alg:EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzEyLTItMS0xLTYzODg3_1ca76bd6-393d-492f-ba5f-e6e475786f2a"
      unitRef="usd">500000</alg:EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount>
    <alg:EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzEyLTQtMS0xLTYzODg3_a013bc05-086d-4da9-93c6-f37633c89c51"
      unitRef="usd">0</alg:EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount>
    <alg:EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzEyLTYtMS0xLTYzODg3_75e0b146-39a6-41f4-98fb-3bfbef61951f"
      unitRef="usd">50000</alg:EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount>
    <alg:EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzEzLTItMS0xLTYzODg3_3975d564-b241-4aed-adcc-e39036d75118"
      unitRef="usd">-51000</alg:EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount>
    <alg:EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzEzLTQtMS0xLTYzODg3_b5b15f6c-9d64-442b-9185-6b29cfd396ec"
      unitRef="usd">-8000</alg:EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount>
    <alg:EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzEzLTYtMS0xLTYzODg3_81ceb11c-e019-4c5a-9e87-8aaed8a1e4e6"
      unitRef="usd">-2219000</alg:EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzE0LTItMS0xLTYzODg3_d47e7c34-1afa-4407-a1a4-5e26ec061c99"
      unitRef="usd">-220000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzE0LTQtMS0xLTYzODg3_4465de04-24b3-40c2-876c-307eb5637899"
      unitRef="usd">605000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzE0LTYtMS0xLTYzODg3_8979139e-6729-47de-bff4-e3b82b243710"
      unitRef="usd">-748000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <alg:IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzE1LTItMS0xLTYzODg3_a2cd8115-51f3-4434-a57f-9ab2e21dc35d"
      unitRef="usd">32382000</alg:IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017>
    <alg:IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzE1LTQtMS0xLTYzODg3_7d413359-5c5e-4a9b-90fb-a82702f173f9"
      unitRef="usd">29253000</alg:IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017>
    <alg:IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzE1LTYtMS0xLTYzODg3_520936bf-35f2-4e15-8e67-0642abfb0891"
      unitRef="usd">21953000</alg:IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017>
    <alg:EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzE2LTItMS0xLTYzODg3_0a6b5d34-4bfd-44ad-88c8-a8daa31db826"
      unitRef="number">0.24</alg:EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent>
    <alg:EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzE2LTQtMS0xLTYzODg3_3de98aa5-8196-4dbe-a3ba-731c39d27a58"
      unitRef="number">0.27</alg:EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent>
    <alg:EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZToyNThkOThiNDBiYTU0YTA1Yjk3ZGFiYTUxZTZkZWVkNy90YWJsZXJhbmdlOjI1OGQ5OGI0MGJhNTRhMDViOTdkYWJhNTFlNmRlZWQ3XzE2LTYtMS0xLTYzODg3_658f2dfe-2fe2-497a-bebf-4244b27431f7"
      unitRef="number">0.28</alg:EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90ZXh0cmVnaW9uOmVhNTJlMzUwZjkwOTRkZjZiNTRmZDE0NDRhODAwNDQ3XzIxMDM_d1d685b2-f751-425e-9314-ef825d52fa78">&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;The components of the Company&#x2019;s deferred income tax assets and liabilities were as follows. Certain prior year deferred tax component amounts have been reclassified to conform to the current year presentation. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:112%"&gt; &lt;/span&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:58.110%"/&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:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:4.747%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.330%"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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="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;2022&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;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;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:700;line-height:100%"&gt;Deferred income tax assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Inventory basis difference&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: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;3,459&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 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;1,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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;&#160;Accounts receivable reserve&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;334&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;270&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Rental equipment and Property, plant and equipment &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:9pt;font-weight:400;line-height:100%"&gt;347&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;201&#160;&lt;/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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;&#160;Stock based compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;826&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;754&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Pension liability&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:9pt;font-weight:400;line-height:100%"&gt;2,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="2" style="background-color:#ffffff;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;3,351&#160;&lt;/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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;&#160;Employee benefit accrual&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,451&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;3,070&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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;/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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Product liability and warranty 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:9pt;font-weight:400;line-height:100%"&gt;2,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="2" style="background-color:#ffffff;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,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;/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;/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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;&#160;Foreign net operating loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;3,078&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;3,764&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Lease liability&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:9pt;font-weight:400;line-height:100%"&gt;4,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;4,221&#160;&lt;/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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;&#160;Capitalized R&amp;amp;D costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;4,230&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;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;/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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Other&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:9pt;font-weight:400;line-height:100%"&gt;1,635&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,415&#160;&lt;/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 style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total deferred income tax assets&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: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;26,175&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 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;20,646&#160;&lt;/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:#def3c0;padding: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;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Less: Valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(3,637)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(4,129)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding: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;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Net deferred income tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:2pt solid #000000;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:#def3c0;border-top:2pt 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;22,538&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:2pt solid #000000;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:#def3c0;border-top:2pt 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;16,517&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:2pt 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;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Deferred income tax liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Inventory basis differences&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: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;(264)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 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;(283)&lt;/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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;&#160;Rental equipment and Property, plant and equipment &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,373)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(13,253)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Lease asset&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:9pt;font-weight:400;line-height:100%"&gt;(4,637)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;(4,149)&lt;/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:#def3c0;padding:2px 1pt 2px 13pt;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;&#160;&#160;Intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(19,301)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(18,041)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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;/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;/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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Expenses not currently deductible for book purposes&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:9pt;font-weight:400;line-height:100%"&gt;(1,244)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,139)&lt;/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 style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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 13pt;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;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total deferred income tax liabilities&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: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;(39,819)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 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;(36,865)&lt;/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 style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;padding: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;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Net deferred income taxes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt 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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000;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;(17,281)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt 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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000;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;(20,348)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <us-gaap:DeferredTaxAssetsInventory
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzMtMi0xLTEtNjM4ODc_19a13316-4f99-4668-b87a-1cac125cf6d6"
      unitRef="usd">3459000</us-gaap:DeferredTaxAssetsInventory>
    <us-gaap:DeferredTaxAssetsInventory
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzMtNC0xLTEtNjM4ODc_e49331e3-8b0e-4abe-8dc4-e81bdf562e51"
      unitRef="usd">1136000</us-gaap:DeferredTaxAssetsInventory>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzQtMi0xLTEtNjM4ODc_2f8d704f-daef-4be9-b431-d9d58b128255"
      unitRef="usd">334000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzQtNC0xLTEtNjM4ODc_40227da5-334a-4e95-bd1a-165db7199976"
      unitRef="usd">270000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts>
    <us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzUtMi0xLTEtNjM4ODc_af2f4630-14ba-4605-9537-57f8094a1fe0"
      unitRef="usd">347000</us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzUtNC0xLTEtNjM4ODc_0ddc8837-421b-4477-993a-5348d8bbb165"
      unitRef="usd">201000</us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzYtMi0xLTEtNjM4ODc_be9033ec-b344-4b0e-a95c-d72f3d1dc1af"
      unitRef="usd">826000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzYtNC0xLTEtNjM4ODc_5c5574a3-573e-4148-9e8e-2c2a15d20875"
      unitRef="usd">754000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzctMi0xLTEtNjM4ODc_0b82d3ae-6e74-4e32-86f1-3b4e3c4a3125"
      unitRef="usd">2900000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzctNC0xLTEtNjM4ODc_6835e2c9-d309-40d7-9c89-60b007d95581"
      unitRef="usd">3351000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzgtMi0xLTEtNjM4ODc_2fd17010-e78c-4b21-ac84-c7e5098fcd90"
      unitRef="usd">2451000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzgtNC0xLTEtNjM4ODc_0e8b294c-0297-4d4b-a380-bb40dc571a03"
      unitRef="usd">3070000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzEwLTItMS0xLTYzODg3_32bd94a8-d50a-409d-aafc-b232c037c8b1"
      unitRef="usd">2177000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzEwLTQtMS0xLTYzODg3_02a69dd3-499d-4cf8-a273-fe93daf5ec59"
      unitRef="usd">2464000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsForeign
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzEzLTItMS0xLTYzODg3_fe034666-7cbb-4a7c-9a46-9d6265a68f50"
      unitRef="usd">3078000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsForeign>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsForeign
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzEzLTQtMS0xLTYzODg3_c9b280ab-ca65-4fb6-9b06-bfae033ca276"
      unitRef="usd">3764000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsForeign>
    <alg:DeferredTaxAssetsLeaseLiability
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzE0LTItMS0xLTYzODg3_9f864533-a6a6-42f3-8be6-4f1c8c2f6153"
      unitRef="usd">4738000</alg:DeferredTaxAssetsLeaseLiability>
    <alg:DeferredTaxAssetsLeaseLiability
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzE0LTQtMS0xLTYzODg3_b04a7437-e4d7-4668-9b02-016b3f0cee55"
      unitRef="usd">4221000</alg:DeferredTaxAssetsLeaseLiability>
    <us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzE1LTItMS0xLTYzODg3_38146159-7c7f-4e88-8307-48a04876e94d"
      unitRef="usd">4230000</us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment>
    <us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzE1LTQtMS0xLTYzODg3_ae14fc3b-b7c2-428f-b5e8-1c69a904261f"
      unitRef="usd">0</us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment>
    <us-gaap:DeferredTaxAssetsOther
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzE3LTItMS0xLTYzODg3_b10f3f62-33f2-4f71-aa85-fd2c8dcac07b"
      unitRef="usd">1635000</us-gaap:DeferredTaxAssetsOther>
    <us-gaap:DeferredTaxAssetsOther
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzE3LTQtMS0xLTYzODg3_dacecf5e-a145-412d-9f5e-d565c70798eb"
      unitRef="usd">1415000</us-gaap:DeferredTaxAssetsOther>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzE5LTItMS0xLTYzODg3_0aaaeef7-b580-4928-97c5-4b7e9cb2cc04"
      unitRef="usd">26175000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzE5LTQtMS0xLTYzODg3_e6d98540-955e-4d81-a241-2bc7720e31da"
      unitRef="usd">20646000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzIwLTItMS0xLTYzODg3_b95706af-8cd8-4040-b295-a51167671b81"
      unitRef="usd">3637000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzIwLTQtMS0xLTYzODg3_9c92bfcc-35a5-4b9c-837f-cd957ffe1472"
      unitRef="usd">4129000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzIyLTItMS0xLTYzODg3_ce253a41-db14-4835-b4f9-ac371052a0d5"
      unitRef="usd">22538000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzIyLTQtMS0xLTYzODg3_308ce790-1e86-49a4-b16f-619e97575d80"
      unitRef="usd">16517000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzI1LTItMS0xLTYzODg3_fede7ec0-6781-43f4-b1e5-bcc602c45037"
      unitRef="usd">264000</us-gaap:DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts>
    <us-gaap:DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzI1LTQtMS0xLTYzODg3_dd461f30-69e9-4015-8d33-91438d1bbc83"
      unitRef="usd">283000</us-gaap:DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzI2LTItMS0xLTYzODg3_75f76388-72fb-44a3-ab9d-073d7b47d184"
      unitRef="usd">14373000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzI2LTQtMS0xLTYzODg3_0727760e-ad42-4452-829d-3261333fd76f"
      unitRef="usd">13253000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <alg:DeferredTaxLiabilitiesLeaseAsset
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzI3LTItMS0xLTYzODg3_9060ad1b-027c-490b-9119-59cd0df4d6ff"
      unitRef="usd">4637000</alg:DeferredTaxLiabilitiesLeaseAsset>
    <alg:DeferredTaxLiabilitiesLeaseAsset
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzI3LTQtMS0xLTYzODg3_82a6c1c2-eff6-4cf1-bc40-3c2551524358"
      unitRef="usd">4149000</alg:DeferredTaxLiabilitiesLeaseAsset>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzI4LTItMS0xLTYzODg3_01a5fce0-5673-4cfe-81c9-7d9bd67ebf1b"
      unitRef="usd">19301000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzI4LTQtMS0xLTYzODg3_f3b78667-f194-493b-9df1-d05e3ebf017a"
      unitRef="usd">18041000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesOther
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzMxLTItMS0xLTYzODg3_ed2580c4-4bff-47d1-b718-cf95b4b2dc63"
      unitRef="usd">1244000</us-gaap:DeferredTaxLiabilitiesOther>
    <us-gaap:DeferredTaxLiabilitiesOther
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzMxLTQtMS0xLTYzODg3_cf84d9ca-3dc0-444d-8483-401ccee98cd0"
      unitRef="usd">1139000</us-gaap:DeferredTaxLiabilitiesOther>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzMzLTItMS0xLTYzODg3_e54d2275-3842-4672-a42d-46a3dd4e93ff"
      unitRef="usd">39819000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzMzLTQtMS0xLTYzODg3_c3a0c052-5353-4cb8-b361-c843d8cb5a4f"
      unitRef="usd">36865000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzM1LTItMS0xLTYzODg3_9c0f4cdc-af6f-4e14-b17f-6d57fff8ab11"
      unitRef="usd">17281000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTpiMTBiN2M2ODU2NTg0YWUyOWRjODdhODE0NzhjMWY1Ni90YWJsZXJhbmdlOmIxMGI3YzY4NTY1ODRhZTI5ZGM4N2E4MTQ3OGMxZjU2XzM1LTQtMS0xLTYzODg3_52620e7e-89d7-46f7-9f40-dd0d286f28de"
      unitRef="usd">20348000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration
      contextRef="i4e96c6494cd0405689a6ca0d4e5afaad_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90ZXh0cmVnaW9uOmVhNTJlMzUwZjkwOTRkZjZiNTRmZDE0NDRhODAwNDQ3XzcyMw_27e0fef6-c0df-42e0-b49f-cd8d74d6e60f"
      unitRef="usd">10100000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration>
    <us-gaap:OperatingLossCarryforwards
      contextRef="ib24cead7aa1d453cbb4bc6f47cb17caa_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90ZXh0cmVnaW9uOmVhNTJlMzUwZjkwOTRkZjZiNTRmZDE0NDRhODAwNDQ3Xzg5NQ_f3af9830-e116-4db4-9f7c-3c988c6a46b7"
      unitRef="usd">200000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90ZXh0cmVnaW9uOmVhNTJlMzUwZjkwOTRkZjZiNTRmZDE0NDRhODAwNDQ3XzIxMDE_e75d95e4-0867-482a-9f21-b9648a7cdf41">The Company does not expect the unrecognized tax benefits to change significantly over the next 12 months.&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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: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:1.0%"/&gt;&lt;td style="width:4.747%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.330%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="15" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Unrecognized Tax Benefits&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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="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;2022&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;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of beginning of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;270&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;262&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Increases for tax positions related to the current year&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;156&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;82&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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;/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;/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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Decreases due to lapse of statute of limitations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(105)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(74)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;321&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;270&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTo1ODI5NTZjZGU0YjE0MjhiYWZjOGE2ZjQ0MTU3NjViMC90YWJsZXJhbmdlOjU4Mjk1NmNkZTRiMTQyOGJhZmM4YTZmNDQxNTc2NWIwXzMtMi0xLTEtNjM4ODc_49211fa0-de29-4e51-8de3-4074ddf8833d"
      unitRef="usd">270000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i5d74fc3138934e70861715f06fa062c7_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTo1ODI5NTZjZGU0YjE0MjhiYWZjOGE2ZjQ0MTU3NjViMC90YWJsZXJhbmdlOjU4Mjk1NmNkZTRiMTQyOGJhZmM4YTZmNDQxNTc2NWIwXzMtNC0xLTEtNjM4ODc_4bb868b9-ef7c-4669-9073-6cfecac4ac7d"
      unitRef="usd">262000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTo1ODI5NTZjZGU0YjE0MjhiYWZjOGE2ZjQ0MTU3NjViMC90YWJsZXJhbmdlOjU4Mjk1NmNkZTRiMTQyOGJhZmM4YTZmNDQxNTc2NWIwXzQtMi0xLTEtNjM4ODc_7d18f61d-948d-4ee9-9aa8-94695b4ef19b"
      unitRef="usd">156000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTo1ODI5NTZjZGU0YjE0MjhiYWZjOGE2ZjQ0MTU3NjViMC90YWJsZXJhbmdlOjU4Mjk1NmNkZTRiMTQyOGJhZmM4YTZmNDQxNTc2NWIwXzQtNC0xLTEtNjM4ODc_6b46ee60-92b6-4057-aee7-9f55f125d4ba"
      unitRef="usd">82000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTo1ODI5NTZjZGU0YjE0MjhiYWZjOGE2ZjQ0MTU3NjViMC90YWJsZXJhbmdlOjU4Mjk1NmNkZTRiMTQyOGJhZmM4YTZmNDQxNTc2NWIwXzgtMi0xLTEtNjM4ODc_b9a000c2-1161-437f-9bae-fc2f7866dbb6"
      unitRef="usd">105000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTo1ODI5NTZjZGU0YjE0MjhiYWZjOGE2ZjQ0MTU3NjViMC90YWJsZXJhbmdlOjU4Mjk1NmNkZTRiMTQyOGJhZmM4YTZmNDQxNTc2NWIwXzgtNC0xLTEtNjM4ODc_b1d45b57-cecf-496e-ad2a-0bbde9dfcbe7"
      unitRef="usd">74000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTo1ODI5NTZjZGU0YjE0MjhiYWZjOGE2ZjQ0MTU3NjViMC90YWJsZXJhbmdlOjU4Mjk1NmNkZTRiMTQyOGJhZmM4YTZmNDQxNTc2NWIwXzktMi0xLTEtNjM4ODc_4b503684-517a-49cb-a4bc-aea9bac39b62"
      unitRef="usd">321000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90YWJsZTo1ODI5NTZjZGU0YjE0MjhiYWZjOGE2ZjQ0MTU3NjViMC90YWJsZXJhbmdlOjU4Mjk1NmNkZTRiMTQyOGJhZmM4YTZmNDQxNTc2NWIwXzktNC0xLTEtNjM4ODc_12d910b5-4287-43cd-bbf4-7b2f28a10ef5"
      unitRef="usd">270000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90ZXh0cmVnaW9uOmVhNTJlMzUwZjkwOTRkZjZiNTRmZDE0NDRhODAwNDQ3XzE0NTQ_4f9c0380-0ed1-49f3-b0b6-2b304861fa1b"
      unitRef="usd">0</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued>
    <alg:TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjYvZnJhZzplYTUyZTM1MGY5MDk0ZGY2YjU0ZmQxNDQ0YTgwMDQ0Ny90ZXh0cmVnaW9uOmVhNTJlMzUwZjkwOTRkZjZiNTRmZDE0NDRhODAwNDQ3XzIwNzQ_4decc286-a337-433d-960c-04ccec60a669"
      unitRef="usd">4800000</alg:TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary>
    <us-gaap:StockholdersEquityNoteDisclosureTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjkvZnJhZzoxY2U3YjhhNzViYzg0OTQzOTI4NDdhYzNkYWZmMGVhYy90ZXh0cmVnaW9uOjFjZTdiOGE3NWJjODQ5NDM5Mjg0N2FjM2RhZmYwZWFjXzM3Mg_f325317b-7e17-44d8-9612-a9604edb7f42">COMMON STOCKOn January&#160;3, 2023, the Board of Directors of the Company declared a quarterly dividend of $0.22 per share which was paid on February&#160;1, 2023 to holders of record as of January&#160;18, 2023. The Company also has a share repurchase program under which the Company is authorized to repurchase, in the aggregate, up to $30.0 million of its outstanding common stock. During 2022, the Company purchased zero shares.</us-gaap:StockholdersEquityNoteDisclosureTextBlock>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="id39bf75be2ed41dca0e9d849b8b972d4_D20230201-20230201"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjkvZnJhZzoxY2U3YjhhNzViYzg0OTQzOTI4NDdhYzNkYWZmMGVhYy90ZXh0cmVnaW9uOjFjZTdiOGE3NWJjODQ5NDM5Mjg0N2FjM2RhZmYwZWFjXzEwMQ_db9aebb7-1481-443f-bba0-bb217efcca0d"
      unitRef="usdPerShare">0.22</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="i038226a8b3f3404f98d4ecbbb625c889_D20230103-20230103"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjkvZnJhZzoxY2U3YjhhNzViYzg0OTQzOTI4NDdhYzNkYWZmMGVhYy90ZXh0cmVnaW9uOjFjZTdiOGE3NWJjODQ5NDM5Mjg0N2FjM2RhZmYwZWFjXzEwMQ_e768d9f5-993d-4b6f-aff7-fc222d17a1ad"
      unitRef="usdPerShare">0.22</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:StockRepurchaseProgramAuthorizedAmount1
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjkvZnJhZzoxY2U3YjhhNzViYzg0OTQzOTI4NDdhYzNkYWZmMGVhYy90ZXh0cmVnaW9uOjFjZTdiOGE3NWJjODQ5NDM5Mjg0N2FjM2RhZmYwZWFjXzI5MQ_f7b3c28c-37d3-4d20-a6f3-16107b3a3278"
      unitRef="usd">30000000</us-gaap:StockRepurchaseProgramAuthorizedAmount1>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNjkvZnJhZzoxY2U3YjhhNzViYzg0OTQzOTI4NDdhYzNkYWZmMGVhYy90ZXh0cmVnaW9uOjFjZTdiOGE3NWJjODQ5NDM5Mjg0N2FjM2RhZmYwZWFjXzM2MA_810c496f-dbcb-407d-9c32-356bbe53d179"
      unitRef="shares">0</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ3MzA_241b58a1-9092-4818-b47f-87ac930b6980">STOCK OPTIONS&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Incentive Stock Option Plan&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On May 7, 2015, the stockholders of the Company approved the 2015 Incentive Stock Option Plan (&#x201c;2015 ISO Plan&#x201d;) and the Company reserved 400,000 shares of common stock for options to be issued under the 2015 ISO Plan. Each option becomes vested and exercisable for up to 20% of the total optioned shares one year following the grant of the option and for an additional 20% of the total optioned shares after each succeeding year until the option is fully exercisable at the end of the fifth year.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We also maintain other incentive option plans that have expired, under which previously granted awards remain outstanding. No additional grants may be awarded under these plans.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Following is a summary of activity in the Incentive Stock Option Plans for the periods indicated:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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:32.379%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.402%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.402%"/&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.402%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.402%"/&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.402%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.410%"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" 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;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" 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;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" 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;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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 4pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares&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:left;vertical-align:bottom"&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:100%"&gt;&#160; Exercise&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:100%"&gt;&#160;&#160; Price*&lt;/span&gt;&lt;/div&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 4pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares&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:left;vertical-align:bottom"&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:100%"&gt;&#160;&#160;Exercise&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:100%"&gt;&#160;&#160; Price*&lt;/span&gt;&lt;/div&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 4pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares&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:left;vertical-align:bottom"&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:100%"&gt;&#160;&#160;Exercise&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:100%"&gt;&#160;&#160; Price*&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Options outstanding at beginning of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;87,610&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;91.24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;100,920&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;68.58&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;119,720&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;57.65&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17,625&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;137.93&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;156.38&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,950&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;114.53&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(14,780)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;50.79&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(30,210)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;53.68&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(31,300)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;45.94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Canceled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(5,808)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;114.48&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(2,000)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;130.92&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,450)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;96.97&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Options outstanding at end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;84,647&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;106.43&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;87,610&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;91.24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;100,920&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;68.58&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Options exercisable at end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;43,412&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;78.50&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;49,360&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;61.21&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;67,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;52.60&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Options available for grant at end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;286,033&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;297,850&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;314,750&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%"&gt;*Weighted Averages&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;Options outstanding and exercisable at December&#160;31, 2022 were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.402%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.402%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.402%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:5.625%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.402%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.286%"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Qualified Stock Options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Options Outstanding&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Options Exercisable&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;Remaining Contractual  Life (yrs)*&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:400;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="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:400;line-height:100%"&gt;Shares&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:400;line-height:100%"&gt;Exercise&#160;&#160;&#160;&#160; Price*&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Range of Exercise Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$42.70 - $83.99&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,725&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.32&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;57.89&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,725&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;57.89&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$92.50 - $138.75&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;40,422&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7.57&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:middle"&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;119.34&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,387&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;103.89&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$156.38 - $234.57&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.16&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;156.38&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;156.38&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"&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 colspan="2" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;84,647&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&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;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;43,412&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%"&gt;*Weighted Averages&lt;/span&gt;&lt;/div&gt;&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%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The weighted-average grant-date fair values of options granted during 2022, 2021, and 2020 were $52.70, $59.01 and $38.33, respectively. Stock option expense was $0.6 million, $0.6 million and $0.5 million for years ending 2022, 2021, and 2020, respectively. As of December&#160;31, 2022, there was $1.3 million of total unrecognized compensation cost related to non-vested share-based compensation arrangements granted under the plans. That cost is expected to be recognized over a period of five years.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Equity Incentive Plan&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On May 2, 2019, the stockholders of the Company approved the 2019 Equity Incentive Plan and the Company reserved 500,000 shares of common stock for issuance of equity awards including the issuance of non-qualified options for the purchase of shares of our common stock which may be granted to Company officers and non-employee directors. Options become vested and exercisable for up to 20% of the total optioned shares one year following the grant of the option and for an additional 20% of the total optioned shares after each succeeding year until the option is fully exercisable at the end of the fifth year. &lt;/span&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:66.443%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.718%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.718%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.721%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;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;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;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:9pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;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:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;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:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;Options available for grant at end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:400;line-height:100%"&gt;381,531&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:400;line-height:100%"&gt;423,969&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:400;line-height:100%"&gt;455,549&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="padding-left:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We also maintain other incentive option plans that have expired, under which previously granted awards remain outstanding. No additional grants may be awarded under these plans.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Non-Qualified Options&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Following is a summary of activity in the Non-Qualified Stock Option Plans for the periods indicated:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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:32.184%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.430%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.292%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.430%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.826%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.430%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.292%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.430%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.826%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.430%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.292%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.438%"/&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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" 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;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" 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;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" 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;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:'Times New Roman',sans-serif;font-size:9pt;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:400;line-height:100%"&gt;Shares&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:400;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="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:400;line-height:100%"&gt;Shares&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:400;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="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:400;line-height:100%"&gt;Shares&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:400;line-height:100%"&gt;Exercise Price*&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Options outstanding at beginning of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;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;2,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;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:#def3c0;border-top:1pt 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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;3,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;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:#def3c0;border-top:1pt 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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;5,300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;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:#def3c0;border-top:1pt 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;46.87&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:bottom"&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;&#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;&#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;&#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;&#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;&#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;&#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:#def3c0;padding:2px 1pt 2px 13pt;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;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;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,000)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,000)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,300)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;38.22&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:9pt;font-weight:400;line-height:100%"&gt;Canceled&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;&#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;&#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;&#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;&#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;&#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;&#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:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Options outstanding at end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;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;1,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;2,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;3,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding: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;Options exercisable at end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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;1,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;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:2pt solid #000000;border-top:2pt 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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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:2pt solid #000000;border-top:2pt 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;2,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;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:2pt solid #000000;border-top:2pt 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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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:2pt solid #000000;border-top:2pt 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;3,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;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:2pt solid #000000;border-top:2pt 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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%"&gt;*Weighted Averages&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; Options outstanding and exercisable as of December&#160;31, 2022 were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&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:35.449%"/&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:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.133%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.285%"/&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:1.0%"/&gt;&lt;td style="width:5.917%"/&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:1.846%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.824%"/&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-weight:700;line-height:100%"&gt;Non-Qualified Stock Options&lt;/span&gt;&lt;/td&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;Options Outstanding&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:9pt;font-weight:700;line-height:100%"&gt;Options Exercisable&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:400;line-height:100%"&gt;Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;&#160;&#160; Remaining Contractual Life (yrs)*&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:400;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="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:400;line-height:100%"&gt;Shares&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:400;line-height:100%"&gt;Exercise Price*&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Range of Exercise Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&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;/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;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;$42.70 - $83.99&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:9pt;font-weight:400;line-height:100%"&gt;1,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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:9pt;font-weight:400;line-height:100%"&gt;1.36&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: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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 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;53.51&#160;&lt;/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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 13pt;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;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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;1,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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;1,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%"&gt;*Weighted Averages&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;There were no options granted in 2020&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',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;2021&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',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;or&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',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;2022. Stock option expense was zero for years ending 2022, 2021, and 2020, respectively. As of December&#160;31, 2022, there was zero unrecognized compensation cost related to non-vested share-based compensation arrangements granted under the plans.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During 2022, 2021, and 2020, 1,000, 1,000, and 2,300 non-qualified options were exercised, respectively, $0.1 million, $0.1 million, and $0.1 million of cash receipts were received, respectively. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Restricted Stock Awards/Units&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Following is a summary of activity in the Restricted Stock Awards ("&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;RSA&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;")/Units for the periods indicated:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&#160;&lt;/span&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:31.794%"/&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:2.285%"/&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: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:2.285%"/&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: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:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.846%"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" 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;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" 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;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" 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;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:400;line-height:100%"&gt;Shares&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:400;line-height:100%"&gt;Grant-Date Fair Value*&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:400;line-height:100%"&gt;Shares&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:400;line-height:100%"&gt;Grant-Date Fair Value*&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:400;line-height:100%"&gt;Shares&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:400;line-height:100%"&gt;Grant-Date Fair Value*&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;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;Awards outstanding at beginning of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;80,616&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;129.53&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;91,043&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;104.77&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;78,705&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;94.34&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;48,396&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;133.70&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;35,224&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;157.00&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;44,307&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;111.95&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(29,922)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;122.19&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(45,651)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;101.36&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(31,594)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;88.90&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&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;Canceled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,460)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;143.82&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&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:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&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:top"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(375)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;100.34&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;Awards outstanding at end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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;97,630&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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;133.67&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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;80,616&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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;129.53&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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;91,043&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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;104.77&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%"&gt;*Weighted Averages&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Restricted stock awards vest over a three year period. The weighted-average remaining contractual life in years for 2022, 2021 and 2020 was 1.41, 1.61 and 1.95, respectively. Compensation expense was $4.9 million, $5.4 million and $3.7 million for years ending 2022, 2021, and 2020, respectively. As of December&#160;31, 2022, there was $7.0 million of total unrecognized compensation cost related to non-vested share-based compensation arrangements granted under the plans. That cost is expected to be recognized over a period of three years. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Performance Stock Units&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In 2020, the Company's Board of Directors approved a change to our long-term incentive compensation plan to implement new performance-based equity grants in the form of a Performance Stock Unit ("PSU") award. PSU award vesting and payout amounts are tied to the Company's achievement of certain targeted financial metrics relating to a three-year performance period with the goal of more closely aligning executive compensation with long-term Company performance.&lt;/span&gt;&lt;/div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The 2020 target long-term incentive compensation mix established for the Company's Section 16 filers consists of RSAs and PSUs each representing fifty percent (50%) of the total long-term incentive compensation target value.&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;PSU awards represent a right to receive a certain number of shares of the Company&#x2019;s common stock at the end of the three-year performance period if certain financial or other performance targets/metrics have been met.</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="i1eae38dc9edd48f998885d656ee56f1f_I20150507"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzE5Mg_23760c08-b449-43a6-870e-529eec5f02a0"
      unitRef="shares">400000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="ib57b490f97f0442fa5ebce9384a2da12_D20150507-20150507"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzMyMQ_0084083d-a953-4a72-9488-d8ae87f35f7f"
      unitRef="number">0.20</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="ibb8983f6dca043ffb15dcb9296db84fb_D20150507-20150507"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzM1Mw_352f5272-36b5-4b69-adee-7b5998ec1b43">P1Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="iaf39c77254434dd89c8e34925ee2cbf6_D20150507-20150507"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQxMg_886e2b84-0a94-4ac5-87a2-d691ada035e1"
      unitRef="number">0.20</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i0eeffb1ea1e84e5890830bc854584ac6_D20150507-20150507"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQxMg_a86460a8-fbba-451c-a1b9-21efee1bec5d"
      unitRef="number">0.20</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i8c4050d8889b46eb82ccc74d27f377c8_D20150507-20150507"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQxMg_b0cc0c98-1a84-48e3-bfef-adceecbbc74c"
      unitRef="number">0.20</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i003b20a90fb44ef1bcb77f9b3c6059fc_D20150507-20150507"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQxMg_f872a02c-3cfd-47e9-ba34-cf03dd7a79d7"
      unitRef="number">0.20</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
      contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ3NDQ_3b08246d-c6bc-435c-9490-b931e5208125">&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Following is a summary of activity in the Incentive Stock Option Plans for the periods indicated:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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:32.379%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.402%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.402%"/&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.402%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.402%"/&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.402%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.410%"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" 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;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" 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;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" 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;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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 4pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares&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:left;vertical-align:bottom"&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:100%"&gt;&#160; Exercise&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:100%"&gt;&#160;&#160; Price*&lt;/span&gt;&lt;/div&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 4pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares&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:left;vertical-align:bottom"&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:100%"&gt;&#160;&#160;Exercise&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:100%"&gt;&#160;&#160; Price*&lt;/span&gt;&lt;/div&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 4pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares&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:left;vertical-align:bottom"&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:100%"&gt;&#160;&#160;Exercise&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:100%"&gt;&#160;&#160; Price*&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Options outstanding at beginning of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;87,610&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;91.24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;100,920&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;68.58&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;119,720&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;57.65&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17,625&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;137.93&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;156.38&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,950&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;114.53&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(14,780)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;50.79&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(30,210)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;53.68&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(31,300)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;45.94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Canceled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(5,808)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;114.48&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(2,000)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;130.92&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,450)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;96.97&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Options outstanding at end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;84,647&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;106.43&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;87,610&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;91.24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;100,920&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;68.58&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Options exercisable at end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;43,412&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;78.50&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;49,360&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;61.21&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;67,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;52.60&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Options available for grant at end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;286,033&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;297,850&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;314,750&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%"&gt;*Weighted Averages&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="icd1fb9b0cdab41bd9c168d8388cb4c8d_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzItMS0xLTEtNjM4ODc_aabd0f46-7673-4955-8ab3-fbc1c7fd8955"
      unitRef="shares">87610</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="icd1fb9b0cdab41bd9c168d8388cb4c8d_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzItMy0xLTEtNjM4ODc_3297f318-3f79-4c60-a012-8fd9949ba008"
      unitRef="usdPerShare">91.24</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="ic761a5d8d966472c96815aa37af02a45_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzItNS0xLTEtNjM4ODc_63816b2f-9a30-4271-8ece-1afb26e7264e"
      unitRef="shares">100920</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="ic761a5d8d966472c96815aa37af02a45_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzItNy0xLTEtNjM4ODc_d6264429-cdba-4863-b8ad-859592c48e30"
      unitRef="usdPerShare">68.58</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="id0b7a3a5b4e443538e02d0e614fc830b_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzItOS0xLTEtNjM4ODc_2bfebbd8-5c79-4cf1-a809-17759d5df3b3"
      unitRef="shares">119720</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="id0b7a3a5b4e443538e02d0e614fc830b_I20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzItMTEtMS0xLTYzODg3_9d2941f3-30ec-42a6-9233-8c7551ac1a53"
      unitRef="usdPerShare">57.65</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzMtMS0xLTEtNjM4ODc_d271987b-23b2-4e00-93bc-cbc538e1c7d2"
      unitRef="shares">17625</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzMtMy0xLTEtNjM4ODc_a0c83347-7a7a-4304-88db-5aafb49da4f7"
      unitRef="usdPerShare">137.93</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="i51676da905124b298c0db5d4b498da5c_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzMtNS0xLTEtNjM4ODc_919b998c-e2e3-4b50-b125-c081383115c6"
      unitRef="shares">18900</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="i51676da905124b298c0db5d4b498da5c_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzMtNy0xLTEtNjM4ODc_f234cf3a-747e-4d9b-8cf5-250829e4a8dc"
      unitRef="usdPerShare">156.38</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="i219410650f93481ebd26323b8a832def_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzMtOS0xLTEtNjM4ODc_a3199680-31b2-412e-9288-eb3d1d7b4a05"
      unitRef="shares">13950</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="i219410650f93481ebd26323b8a832def_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzMtMTEtMS0xLTYzODg3_f1a6cb7e-df99-4a90-9176-1d7f9b1a6e15"
      unitRef="usdPerShare">114.53</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzQtMS0xLTEtNjM4ODc_075e9e09-4af0-45af-8d96-b626b5870809"
      unitRef="shares">14780</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzQtMy0xLTEtNjM4ODc_b9325286-288b-4f4a-a706-c21e8c84c56c"
      unitRef="usdPerShare">50.79</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i51676da905124b298c0db5d4b498da5c_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzQtNS0xLTEtNjM4ODc_0ce985ea-7a04-45a7-bf1a-2bb7eedf451b"
      unitRef="shares">30210</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="i51676da905124b298c0db5d4b498da5c_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzQtNy0xLTEtNjM4ODc_907bf6bd-f5e5-4b72-ad68-40840f958e9c"
      unitRef="usdPerShare">53.68</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i219410650f93481ebd26323b8a832def_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzQtOS0xLTEtNjM4ODc_2d476592-2406-43dd-87db-4dbf9c87a950"
      unitRef="shares">31300</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="i219410650f93481ebd26323b8a832def_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzQtMTEtMS0xLTYzODg3_30aadfe3-598c-43a1-8337-68f46e887997"
      unitRef="usdPerShare">45.94</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzUtMS0xLTEtNjM4ODc_4319fd7b-c02a-44bb-9722-b58d001fbe8e"
      unitRef="shares">5808</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzUtMy0xLTEtNjM4ODc_9bc99073-0a26-4151-adc9-173ca6a7347d"
      unitRef="usdPerShare">114.48</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="i51676da905124b298c0db5d4b498da5c_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzUtNS0xLTEtNjM4ODc_9e4f1638-6ecf-437a-ba2f-5440bda894de"
      unitRef="shares">2000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="i51676da905124b298c0db5d4b498da5c_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzUtNy0xLTEtNjM4ODc_1bbfc3ab-faeb-46f6-95f8-3badbe75739c"
      unitRef="usdPerShare">130.92</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="i219410650f93481ebd26323b8a832def_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzUtOS0xLTEtNjM4ODc_c72d5bf1-7e74-46c0-88b1-c5531f3c5c99"
      unitRef="shares">1450</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="i219410650f93481ebd26323b8a832def_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzUtMTEtMS0xLTYzODg3_cf43ed08-e296-496f-bb1c-ebc090a452fa"
      unitRef="usdPerShare">96.97</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i0b10e572815d4913953edd8c1c32efa6_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzYtMS0xLTEtNjM4ODc_35d0676a-7b95-4150-8180-6a48b3443f26"
      unitRef="shares">84647</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i0b10e572815d4913953edd8c1c32efa6_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzYtMy0xLTEtNjM4ODc_c5fea905-f023-48b2-9e54-0e5cbfec0b63"
      unitRef="usdPerShare">106.43</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="icd1fb9b0cdab41bd9c168d8388cb4c8d_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzYtNS0xLTEtNjM4ODc_c1dec989-bda3-4eb6-a27a-ff2ea26abb07"
      unitRef="shares">87610</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="icd1fb9b0cdab41bd9c168d8388cb4c8d_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzYtNy0xLTEtNjM4ODc_3297f318-3f79-4c60-a012-8fd9949ba008"
      unitRef="usdPerShare">91.24</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="ic761a5d8d966472c96815aa37af02a45_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzYtOS0xLTEtNjM4ODc_d1db377f-d52c-41f5-9864-de6c580cbb27"
      unitRef="shares">100920</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="ic761a5d8d966472c96815aa37af02a45_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzYtMTEtMS0xLTYzODg3_c4435450-2474-421a-b7f6-b8374bd9414f"
      unitRef="usdPerShare">68.58</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="i0b10e572815d4913953edd8c1c32efa6_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzctMS0xLTEtNjM4ODc_f79a1fa4-5875-4278-b031-52185ecc88b0"
      unitRef="shares">43412</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="i0b10e572815d4913953edd8c1c32efa6_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzctMy0xLTEtNjM4ODc_68e98d57-bb87-4bf5-8f94-62cb11bd9bcb"
      unitRef="usdPerShare">78.50</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="icd1fb9b0cdab41bd9c168d8388cb4c8d_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzctNS0xLTEtNjM4ODc_3566b24f-4d2c-43ea-b76d-1f38e8ba5cec"
      unitRef="shares">49360</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="icd1fb9b0cdab41bd9c168d8388cb4c8d_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzctNy0xLTEtNjM4ODc_41848f49-be92-4396-b221-96dc119fd916"
      unitRef="usdPerShare">61.21</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="ic761a5d8d966472c96815aa37af02a45_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzctOS0xLTEtNjM4ODc_584d5bfa-08bc-4cca-809d-89b778a9155c"
      unitRef="shares">67700</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="ic761a5d8d966472c96815aa37af02a45_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzctMTEtMS0xLTYzODg3_52af18ea-913b-4916-90ce-4b0d9cf1a49d"
      unitRef="usdPerShare">52.60</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="i0b10e572815d4913953edd8c1c32efa6_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzgtMS0xLTEtNjM4ODc_f84509c5-c5c0-4aa4-b68e-44f5d1661496"
      unitRef="shares">286033</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="icd1fb9b0cdab41bd9c168d8388cb4c8d_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzgtNS0xLTEtNjM4ODc_88805f75-3b7b-4f58-ace8-424402e28738"
      unitRef="shares">297850</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="ic761a5d8d966472c96815aa37af02a45_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphYjY3ZmZlNzJmOTQ0NzkwYTk1ZGJhYTNkYzM5MDBmMS90YWJsZXJhbmdlOmFiNjdmZmU3MmY5NDQ3OTBhOTVkYmFhM2RjMzkwMGYxXzgtOS0xLTEtNjM4ODc_6fe48d0a-229f-4cd5-9ed7-a2112e958c74"
      unitRef="shares">314750</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock
      contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ3Mzc_4e4a2ca8-b848-4d22-b53d-5eee1a710dfd">Options outstanding and exercisable at December&#160;31, 2022 were as follows:&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.402%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.402%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.402%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:5.625%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.402%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.286%"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Qualified Stock Options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Options Outstanding&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Options Exercisable&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;Remaining Contractual  Life (yrs)*&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:400;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="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:400;line-height:100%"&gt;Shares&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:400;line-height:100%"&gt;Exercise&#160;&#160;&#160;&#160; Price*&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Range of Exercise Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$42.70 - $83.99&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,725&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.32&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;57.89&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,725&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;57.89&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$92.50 - $138.75&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;40,422&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7.57&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:middle"&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;119.34&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,387&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;103.89&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$156.38 - $234.57&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.16&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;156.38&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;156.38&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"&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 colspan="2" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;84,647&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&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;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;43,412&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%"&gt;*Weighted Averages&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit
      contextRef="ibee7f745de38423e9660fafdbc60fe1e_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzQtMC0xLTEtNjM4ODcvdGV4dHJlZ2lvbjowOWQzNjQ2NDJlMWE0MDM3YTY0M2UxYzkwMTJjMWJiNF80_f6b0e00c-2864-4407-b9dd-dc317b859488"
      unitRef="usdPerShare">42.7</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit
      contextRef="ibee7f745de38423e9660fafdbc60fe1e_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzQtMC0xLTEtNjM4ODcvdGV4dHJlZ2lvbjowOWQzNjQ2NDJlMWE0MDM3YTY0M2UxYzkwMTJjMWJiNF85_0435fbe5-039e-4fa8-a480-f79242505d56"
      unitRef="usdPerShare">83.99</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
      contextRef="i332b0e139818417a8cd4a2d136b9d52b_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzQtMS0xLTEtNjM4ODc_e3e96c60-0792-41e3-819d-3776c5537a94"
      unitRef="shares">27725</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2
      contextRef="ibee7f745de38423e9660fafdbc60fe1e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzQtMy0xLTEtNjM4ODc_f5a498ef-eb78-44a7-80d1-4a32ca213116">P2Y3M25D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
      contextRef="i332b0e139818417a8cd4a2d136b9d52b_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzQtNS0xLTEtNjM4ODc_75545de0-1e8e-4bdb-aad9-b404461ab184"
      unitRef="usdPerShare">57.89</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
      contextRef="i332b0e139818417a8cd4a2d136b9d52b_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzQtNy0xLTEtNjM4ODc_55d17195-c25e-4654-b706-054f7f3454bc"
      unitRef="shares">27725</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="i332b0e139818417a8cd4a2d136b9d52b_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzQtOS0xLTEtNjM4ODc_0e0c9cb7-f528-4de0-bc0a-c36d7b230dc2"
      unitRef="usdPerShare">57.89</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit
      contextRef="i9ab8ee9172b244a8a8dd397b1dd4f908_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzUtMC0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo3OTQ2N2FjM2YwZmE0ZDQxODMzOTM2M2Y5YzFjZTEyZV80_57615038-370b-4a9b-8e58-1907d3863878"
      unitRef="usdPerShare">92.5</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit
      contextRef="i9ab8ee9172b244a8a8dd397b1dd4f908_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzUtMC0xLTEtNjM4ODcvdGV4dHJlZ2lvbjo3OTQ2N2FjM2YwZmE0ZDQxODMzOTM2M2Y5YzFjZTEyZV85_de4863ce-366b-4591-bf73-46718a23fa79"
      unitRef="usdPerShare">138.75</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
      contextRef="i767a94e19e5e40159ac0157413db98af_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzUtMS0xLTEtNjM4ODc_a55a2aa8-7d9a-40e0-97d3-ac56839a25a5"
      unitRef="shares">40422</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2
      contextRef="i9ab8ee9172b244a8a8dd397b1dd4f908_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzUtMy0xLTEtNjM4ODc_bc1a87d5-abaf-43ad-8665-36767ec5493b">P7Y6M25D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
      contextRef="i767a94e19e5e40159ac0157413db98af_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzUtNS0xLTEtNjM4ODc_23021692-5e73-4fdf-aceb-905426eeea38"
      unitRef="usdPerShare">119.34</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
      contextRef="i767a94e19e5e40159ac0157413db98af_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzUtNy0xLTEtNjM4ODc_5891c0d7-7614-4456-9f68-7b694e16b46a"
      unitRef="shares">12387</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="i767a94e19e5e40159ac0157413db98af_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzUtOS0xLTEtNjM4ODc_bb166d76-13e1-4d69-9dda-1e0d32f50a45"
      unitRef="usdPerShare">103.89</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit
      contextRef="iaf629ab3836645949ab33e5501ca2f6b_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzYtMC0xLTEtNjM4ODcvdGV4dHJlZ2lvbjpkMmE4YmVhY2UyYTg0ODFjOTVlOTcyOWNkMDAxNmM3Zl80_172eb7b1-db6a-4073-a66c-3e4bf0b09da8"
      unitRef="usdPerShare">156.38</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit
      contextRef="iaf629ab3836645949ab33e5501ca2f6b_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzYtMC0xLTEtNjM4ODcvdGV4dHJlZ2lvbjpkMmE4YmVhY2UyYTg0ODFjOTVlOTcyOWNkMDAxNmM3Zl85_124ca3c6-ab36-4947-a688-9de6ee07017c"
      unitRef="usdPerShare">234.57</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
      contextRef="i9b3455aa56ab4d2a8a3dd620f413fe46_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzYtMS0xLTEtNjM4ODc_6f833c79-5f56-4698-9797-831c9240689c"
      unitRef="shares">16500</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2
      contextRef="iaf629ab3836645949ab33e5501ca2f6b_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzYtMy0xLTEtNjM4ODc_82478849-dbb4-43cc-a377-9e2029d83f31">P8Y1M28D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
      contextRef="i9b3455aa56ab4d2a8a3dd620f413fe46_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzYtNS0xLTEtNjM4ODc_7594c784-45ea-4fd6-a649-97b2de224dde"
      unitRef="usdPerShare">156.38</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
      contextRef="i9b3455aa56ab4d2a8a3dd620f413fe46_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzYtNy0xLTEtNjM4ODc_5deb87c8-1fb5-4843-aa62-045a44dae68f"
      unitRef="shares">3300</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="i9b3455aa56ab4d2a8a3dd620f413fe46_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzYtOS0xLTEtNjM4ODc_533ccf91-5e4a-4b28-8fce-0e50362bbd83"
      unitRef="usdPerShare">156.38</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i0b10e572815d4913953edd8c1c32efa6_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzctMS0xLTEtNjM4ODc_f4e4f307-0b59-476c-91a0-1e0ec09dd2c7"
      unitRef="shares">84647</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="i0b10e572815d4913953edd8c1c32efa6_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTowM2M3ZGEyZTU0MjE0NzZjOWM0NGVmMGE0ZDk5Y2MxZC90YWJsZXJhbmdlOjAzYzdkYTJlNTQyMTQ3NmM5YzQ0ZWYwYTRkOTljYzFkXzctNy0xLTEtNjM4ODc_5ea58eb2-b966-4895-a282-8a735df5749c"
      unitRef="shares">43412</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzEwMTc_80555a2c-943c-45b7-9bf4-bb3d31251623"
      unitRef="usdPerShare">52.7</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i51676da905124b298c0db5d4b498da5c_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzEwMjE_efaeb3e4-f52d-4be0-8d51-86477623700e"
      unitRef="usdPerShare">59.01</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i219410650f93481ebd26323b8a832def_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzEwMjg_34743347-50ec-40a4-906d-1462b0412cf5"
      unitRef="usdPerShare">38.33</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzEwNzE_c28f8dd1-ec20-47f7-af14-f6775d031639"
      unitRef="usd">600000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i51676da905124b298c0db5d4b498da5c_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzEwNzU_f5c33032-6079-41ea-bb74-cb2add65bd0f"
      unitRef="usd">600000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i219410650f93481ebd26323b8a832def_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzEwODI_d5809a4f-95c5-478b-b07a-259c3a0a2fab"
      unitRef="usd">500000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="i0b10e572815d4913953edd8c1c32efa6_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzExNTI_45f26644-be98-4cc1-9a31-f070db1861a4"
      unitRef="usd">1300000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzEzMzY_0900b606-4b3d-4c24-b847-262e3974211c">P5Y</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="if704f1f032cf4b038dd5aaa4540f8a40_I20190502"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzE0Nzg_60a426e3-7d24-43f3-99f8-f8ddd286f569"
      unitRef="shares">500000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="if51b205dc7294d10bf77e82a58091b25_D20190502-20190502"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzE3NDY_aaebdb87-8bc1-4325-9fe3-def467ae055a"
      unitRef="number">0.20</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="i0cdeefb3beb84a369128f330466e4a2a_D20190502-20190502"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzE3Nzg_5337aec3-a812-4bb3-b578-d6910d35f225">P1Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="if63b9384c4f94bddbe03628bb7f1e50d_D20190502-20190502"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzE4Mzc_05593ab4-676f-4117-a79d-741c09ac3fa2"
      unitRef="number">0.20</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i40bae31f1b4f4d67b5f1264b3662002b_D20190502-20190502"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzE4Mzc_675936ab-6f4a-4ff1-be2e-5f1ba38f0735"
      unitRef="number">0.20</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="if834433608a64a74af49ea7398f84bde_D20190502-20190502"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzE4Mzc_7bc685e2-97a2-4939-87b1-a2679c5a3902"
      unitRef="number">0.20</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="ic07dcf17dce848028271ce79a08ab201_D20190502-20190502"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzE4Mzc_abc2a9b7-f680-4847-b33d-d4d6b68a8707"
      unitRef="number">0.20</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ3MzQ_f674fdb5-a7cf-4920-8c83-13ce98d93cef">&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:66.443%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.718%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.718%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.721%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;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;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;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:9pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;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:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;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:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;Options available for grant at end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:400;line-height:100%"&gt;381,531&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:400;line-height:100%"&gt;423,969&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:400;line-height:100%"&gt;455,549&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="i667450baff3d4245af27b6b303fd59cd_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplMjhiZTNiODViZDM0N2IwYjNkZTUwNzdiMmIwNmY3ZC90YWJsZXJhbmdlOmUyOGJlM2I4NWJkMzQ3YjBiM2RlNTA3N2IyYjA2ZjdkXzEtMS0xLTEtNjM4ODc_f676f2d8-380c-43d9-88e3-c7f483e156d4"
      unitRef="shares">381531</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="i1fd93aa3097f4b8dbbca4de45cf5ed5b_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplMjhiZTNiODViZDM0N2IwYjNkZTUwNzdiMmIwNmY3ZC90YWJsZXJhbmdlOmUyOGJlM2I4NWJkMzQ3YjBiM2RlNTA3N2IyYjA2ZjdkXzEtMi0xLTEtNjM4ODc_35d248ab-1d00-49a2-a513-0a93f1e3955f"
      unitRef="shares">423969</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="i7604370e7a114affa5bb1f9fbbc2bd2c_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplMjhiZTNiODViZDM0N2IwYjNkZTUwNzdiMmIwNmY3ZC90YWJsZXJhbmdlOmUyOGJlM2I4NWJkMzQ3YjBiM2RlNTA3N2IyYjA2ZjdkXzEtMy0xLTEtNjM4ODc_84c23e45-480f-4576-976c-a4352cdddf5d"
      unitRef="shares">455549</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
      contextRef="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ3MzI_c704b1d4-1972-4c66-9b09-8e777cdbaa33">&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Following is a summary of activity in the Non-Qualified Stock Option Plans for the periods indicated:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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:32.184%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.430%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.292%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.430%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.826%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.430%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.292%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.430%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.826%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.430%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.292%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.438%"/&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:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" 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;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" 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;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" 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;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:'Times New Roman',sans-serif;font-size:9pt;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:400;line-height:100%"&gt;Shares&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:400;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="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:400;line-height:100%"&gt;Shares&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:400;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="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:400;line-height:100%"&gt;Shares&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:400;line-height:100%"&gt;Exercise Price*&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Options outstanding at beginning of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;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;2,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;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:#def3c0;border-top:1pt 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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;3,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;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:#def3c0;border-top:1pt 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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;5,300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;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:#def3c0;border-top:1pt 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;46.87&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:bottom"&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;&#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;&#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;&#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;&#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;&#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;&#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:#def3c0;padding:2px 1pt 2px 13pt;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;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;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,000)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,000)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,300)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;38.22&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:9pt;font-weight:400;line-height:100%"&gt;Canceled&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;&#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;&#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;&#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;&#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;&#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;&#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:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Options outstanding at end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;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;1,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;2,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;3,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding: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;Options exercisable at end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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;1,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;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:2pt solid #000000;border-top:2pt 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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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:2pt solid #000000;border-top:2pt 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;2,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;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:2pt solid #000000;border-top:2pt 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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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:2pt solid #000000;border-top:2pt 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;3,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt solid #000000;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:2pt solid #000000;border-top:2pt 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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:2pt 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&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%"&gt;*Weighted Averages&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i1fd93aa3097f4b8dbbca4de45cf5ed5b_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzItMS0xLTEtNjM4ODc_a6eee76f-8f8e-47e3-bc67-c52f31705c2d"
      unitRef="shares">2000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i1fd93aa3097f4b8dbbca4de45cf5ed5b_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzItMy0xLTEtNjM4ODc_8a7fa6f8-5cd1-4ee2-99b8-1d8ea189a132"
      unitRef="usdPerShare">53.51</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i7604370e7a114affa5bb1f9fbbc2bd2c_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzItNS0xLTEtNjM4ODc_5bba7d56-900a-47b7-b691-488fee528685"
      unitRef="shares">3000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i7604370e7a114affa5bb1f9fbbc2bd2c_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzItNy0xLTEtNjM4ODc_ee6c89b7-5b67-4734-9f95-73fa5c88747c"
      unitRef="usdPerShare">53.51</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i5ad65b8c4e4d456d9cf858ed0bf0f59f_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzItOS0xLTEtNjM4ODc_06c2cc82-2589-4ada-bd16-3655be63200f"
      unitRef="shares">5300</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i5ad65b8c4e4d456d9cf858ed0bf0f59f_I20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzItMTEtMS0xLTYzODg3_320e50a2-c7af-42bc-a3b2-35f96bd5a854"
      unitRef="usdPerShare">46.87</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzMtMS0xLTEtNjM4ODc_ff464f29-9805-4e55-950a-588d26c6bb41"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzMtMy0xLTEtNjM4ODc_eed9cda5-f1f6-4623-90ac-a7f7132e94ca"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzMtNS0xLTEtNjM4ODc_e2066dcc-785b-4b3c-aee6-28a06427a0d2"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzMtNy0xLTEtNjM4ODc_709aa401-5f80-4073-a3cc-2eb7f2bff2f0"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzMtOS0xLTEtNjM4ODc_e1ca1006-d542-462a-94eb-51f7ea852549"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzMtMTEtMS0xLTYzODg3_ffa737b2-1331-4619-ae3c-35d23d18897b"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzQtMS0xLTEtNjM4ODc_0d335d0b-0121-438a-95ff-68ca0348f705"
      unitRef="shares">1000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzQtMy0xLTEtNjM4ODc_5cd37c72-82db-4cfd-8aae-93ab49a42cf5"
      unitRef="usdPerShare">53.51</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzQtNS0xLTEtNjM4ODc_34f26600-ed1b-4aa1-9a39-80dc3090b578"
      unitRef="shares">1000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzQtNy0xLTEtNjM4ODc_4dec024e-7de8-4f93-ab3e-091029113cbb"
      unitRef="usdPerShare">53.51</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzQtOS0xLTEtNjM4ODc_9fa53331-9721-45a8-a845-fb40f5874e53"
      unitRef="shares">2300</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzQtMTEtMS0xLTYzODg3_8535ce3b-2edf-499b-b07b-bee091786be8"
      unitRef="usdPerShare">38.22</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzUtMS0xLTEtNjM4ODc_2f55fef3-8850-405a-a94f-8ee94e5a58d9"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzUtMy0xLTEtNjM4ODc_e1dd3d86-cb28-47ca-a5c7-9b3bbad7f6c0"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzUtNS0xLTEtNjM4ODc_c53244fc-5cd5-40e1-866e-ce63f560c258"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzUtNy0xLTEtNjM4ODc_fe0a1248-ad81-43ef-aacd-c371e9a74173"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzUtOS0xLTEtNjM4ODc_96f19427-b093-40fc-8040-b8324828b945"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzUtMTEtMS0xLTYzODg3_e0405851-7a40-4a03-baec-6ea93022799c"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i667450baff3d4245af27b6b303fd59cd_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzYtMS0xLTEtNjM4ODc_304d6a02-4104-4bde-afb4-8c73e5146f24"
      unitRef="shares">1000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i667450baff3d4245af27b6b303fd59cd_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzYtMy0xLTEtNjM4ODc_b3a14577-8c86-4bf5-a432-9e0c34a3f9ee"
      unitRef="usdPerShare">53.51</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i1fd93aa3097f4b8dbbca4de45cf5ed5b_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzYtNS0xLTEtNjM4ODc_e4e109b6-ab6b-4410-893f-65b5c7825bac"
      unitRef="shares">2000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i1fd93aa3097f4b8dbbca4de45cf5ed5b_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzYtNy0xLTEtNjM4ODc_8a7fa6f8-5cd1-4ee2-99b8-1d8ea189a132"
      unitRef="usdPerShare">53.51</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i7604370e7a114affa5bb1f9fbbc2bd2c_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzYtOS0xLTEtNjM4ODc_0cb24dcd-fe77-4be0-a4e8-042c3165096d"
      unitRef="shares">3000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i7604370e7a114affa5bb1f9fbbc2bd2c_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzYtMTEtMS0xLTYzODg3_1b87bd1b-4f30-43c4-b938-7af453a23be9"
      unitRef="usdPerShare">53.51</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="i667450baff3d4245af27b6b303fd59cd_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzctMS0xLTEtNjM4ODc_0fa2119e-0c35-46fb-a227-800652209f92"
      unitRef="shares">1000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="i667450baff3d4245af27b6b303fd59cd_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzctMy0xLTEtNjM4ODc_87747c80-caa2-49cb-b533-3f484ad2d344"
      unitRef="usdPerShare">53.51</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="i1fd93aa3097f4b8dbbca4de45cf5ed5b_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzctNS0xLTEtNjM4ODc_0052d054-d022-4ef9-ab23-b79799662b3f"
      unitRef="shares">2000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="i1fd93aa3097f4b8dbbca4de45cf5ed5b_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzctNy0xLTEtNjM4ODc_305079ff-0a35-41b2-9769-afd3054b035e"
      unitRef="usdPerShare">53.51</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="i7604370e7a114affa5bb1f9fbbc2bd2c_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzctOS0xLTEtNjM4ODc_ae684513-fdc5-477c-b52f-b234ef97000e"
      unitRef="shares">3000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="i7604370e7a114affa5bb1f9fbbc2bd2c_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTozOTJmYTZlYzc4ZjI0YThjODVmNTNmMmYwYjliZmQ3Ni90YWJsZXJhbmdlOjM5MmZhNmVjNzhmMjRhOGM4NWY1M2YyZjBiOWJmZDc2XzctMTEtMS0xLTYzODg3_181bbd57-dc55-4cd1-af2b-fd36707dbd05"
      unitRef="usdPerShare">53.51</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock
      contextRef="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ3NDA_6dad41d0-24fe-4390-8f57-7d7c36a5bf55">Options outstanding and exercisable as of December&#160;31, 2022 were as follows:&lt;div&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:35.449%"/&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:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.133%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.285%"/&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:1.0%"/&gt;&lt;td style="width:5.917%"/&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:1.846%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.824%"/&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-weight:700;line-height:100%"&gt;Non-Qualified Stock Options&lt;/span&gt;&lt;/td&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;Options Outstanding&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:9pt;font-weight:700;line-height:100%"&gt;Options Exercisable&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:400;line-height:100%"&gt;Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;&#160;&#160; Remaining Contractual Life (yrs)*&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:400;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="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:400;line-height:100%"&gt;Shares&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:400;line-height:100%"&gt;Exercise Price*&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Range of Exercise Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&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;/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;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;$42.70 - $83.99&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:9pt;font-weight:400;line-height:100%"&gt;1,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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:9pt;font-weight:400;line-height:100%"&gt;1.36&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: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;53.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 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;53.51&#160;&lt;/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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 13pt;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;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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;1,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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;1,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%"&gt;*Weighted Averages&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit
      contextRef="ifc1c7939faa3461a8d5c3b191e68cfcd_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplYTY4OGJlM2Y5ZWM0NTY2YWJkOGIzNmQ5Yjk5MTFmNi90YWJsZXJhbmdlOmVhNjg4YmUzZjllYzQ1NjZhYmQ4YjM2ZDliOTkxMWY2XzUtMC0xLTEtNjM4ODcvdGV4dHJlZ2lvbjpjYmNmN2RjNzU0Yjg0MzFmOTUyZjU4YWJjODk0YzA3Ml81_5375af2e-aa36-406c-95be-a5d8887a6e77"
      unitRef="usdPerShare">42.7</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit
      contextRef="ifc1c7939faa3461a8d5c3b191e68cfcd_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplYTY4OGJlM2Y5ZWM0NTY2YWJkOGIzNmQ5Yjk5MTFmNi90YWJsZXJhbmdlOmVhNjg4YmUzZjllYzQ1NjZhYmQ4YjM2ZDliOTkxMWY2XzUtMC0xLTEtNjM4ODcvdGV4dHJlZ2lvbjpjYmNmN2RjNzU0Yjg0MzFmOTUyZjU4YWJjODk0YzA3Ml8xMA_a53ba839-1feb-458f-a251-d88dfe863f86"
      unitRef="usdPerShare">83.99</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
      contextRef="id831c7e0d302482faca3cb3558d21e5c_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplYTY4OGJlM2Y5ZWM0NTY2YWJkOGIzNmQ5Yjk5MTFmNi90YWJsZXJhbmdlOmVhNjg4YmUzZjllYzQ1NjZhYmQ4YjM2ZDliOTkxMWY2XzUtMS0xLTEtNjM4ODc_18807018-1960-4b22-8f94-ca8a8a8c082c"
      unitRef="shares">1000</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2
      contextRef="ifc1c7939faa3461a8d5c3b191e68cfcd_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplYTY4OGJlM2Y5ZWM0NTY2YWJkOGIzNmQ5Yjk5MTFmNi90YWJsZXJhbmdlOmVhNjg4YmUzZjllYzQ1NjZhYmQ4YjM2ZDliOTkxMWY2XzUtMy0xLTEtNjM4ODc_21e104f4-d7ba-4f88-8268-eec517316f14">P1Y4M9D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
      contextRef="id831c7e0d302482faca3cb3558d21e5c_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplYTY4OGJlM2Y5ZWM0NTY2YWJkOGIzNmQ5Yjk5MTFmNi90YWJsZXJhbmdlOmVhNjg4YmUzZjllYzQ1NjZhYmQ4YjM2ZDliOTkxMWY2XzUtNS0xLTEtNjM4ODc_0bde9541-6cfe-440c-a6cc-fefe8229f2a9"
      unitRef="usdPerShare">53.51</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
      contextRef="id831c7e0d302482faca3cb3558d21e5c_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplYTY4OGJlM2Y5ZWM0NTY2YWJkOGIzNmQ5Yjk5MTFmNi90YWJsZXJhbmdlOmVhNjg4YmUzZjllYzQ1NjZhYmQ4YjM2ZDliOTkxMWY2XzUtNy0xLTEtNjM4ODc_d2e38e75-06ab-4255-90fb-84193c335803"
      unitRef="shares">1000</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="id831c7e0d302482faca3cb3558d21e5c_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplYTY4OGJlM2Y5ZWM0NTY2YWJkOGIzNmQ5Yjk5MTFmNi90YWJsZXJhbmdlOmVhNjg4YmUzZjllYzQ1NjZhYmQ4YjM2ZDliOTkxMWY2XzUtOS0xLTEtNjM4ODc_ea3cc66c-16c3-475d-9d3f-acdf997d3144"
      unitRef="usdPerShare">53.51</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i667450baff3d4245af27b6b303fd59cd_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplYTY4OGJlM2Y5ZWM0NTY2YWJkOGIzNmQ5Yjk5MTFmNi90YWJsZXJhbmdlOmVhNjg4YmUzZjllYzQ1NjZhYmQ4YjM2ZDliOTkxMWY2XzYtMS0xLTEtNjM4ODc_05625449-1c59-4428-80a9-3e620fd51619"
      unitRef="shares">1000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="i667450baff3d4245af27b6b303fd59cd_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTplYTY4OGJlM2Y5ZWM0NTY2YWJkOGIzNmQ5Yjk5MTFmNi90YWJsZXJhbmdlOmVhNjg4YmUzZjllYzQ1NjZhYmQ4YjM2ZDliOTkxMWY2XzYtNy0xLTEtNjM4ODc_ed8688df-1777-4767-9823-c4d86dcf3513"
      unitRef="shares">1000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzIzOTM_1e930d1f-fb2e-4c05-bca2-41258d0fdeb9"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzIzOTM_c9a3c5fb-6551-4d2a-ab4f-8947b86bae03"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzIzOTM_dd0df1c6-2396-4f0a-8161-eaf9cc32a5f0"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzI0NTQ_873199e2-6ff1-4ce1-b90c-f018ca978607"
      unitRef="usd">0</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzI0NTQ_ad111716-177c-4953-81c8-44bf991bfa80"
      unitRef="usd">0</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzI0NTQ_ef518623-65cc-4440-939d-30b17c007cc8"
      unitRef="usd">0</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="i667450baff3d4245af27b6b303fd59cd_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzI1MzU_36664a55-14cd-4f97-bfad-de9ebcbb563d"
      unitRef="usd">0</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzI2Nzg_0d335d0b-0121-438a-95ff-68ca0348f705"
      unitRef="shares">1000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzI2ODI_34f26600-ed1b-4aa1-9a39-80dc3090b578"
      unitRef="shares">1000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzI2OTA_9fa53331-9721-45a8-a845-fb40f5874e53"
      unitRef="shares">2300</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="i520319aad6614d9ab90360d275ad50ca_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzI3NDU_1fd684e4-fbc2-4793-9e9d-86bb1c497391"
      unitRef="usd">100000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="i419d72f7450d4995b0e1ad40bce4a8d5_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzI3NDk_6d7f14d7-ea27-4712-8858-9a127803e453"
      unitRef="usd">100000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="i87338b02e2d9462cba64c21c6034f21d_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzI3NTc_da57c616-f898-459c-8e44-a06f068d0c14"
      unitRef="usd">100000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ3MzM_3fb73012-bb84-4ca9-aef6-283f058703b0">&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Following is a summary of activity in the Restricted Stock Awards ("&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;RSA&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;")/Units for the periods indicated:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&#160;&lt;/span&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:31.794%"/&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:2.285%"/&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: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:2.285%"/&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: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:2.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.846%"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" 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;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" 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;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" 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;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:400;line-height:100%"&gt;Shares&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:400;line-height:100%"&gt;Grant-Date Fair Value*&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:400;line-height:100%"&gt;Shares&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:400;line-height:100%"&gt;Grant-Date Fair Value*&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:400;line-height:100%"&gt;Shares&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:400;line-height:100%"&gt;Grant-Date Fair Value*&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;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;Awards outstanding at beginning of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;80,616&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;129.53&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;91,043&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;104.77&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;78,705&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 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;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;94.34&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;48,396&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;133.70&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;35,224&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;157.00&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;44,307&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;111.95&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(29,922)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;122.19&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(45,651)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;101.36&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(31,594)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;88.90&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&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;Canceled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,460)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;143.82&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&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:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&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:top"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(375)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;100.34&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;Awards outstanding at end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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;97,630&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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;133.67&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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;80,616&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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;129.53&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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;91,043&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;border-bottom:2pt solid #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;104.77&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:120%"&gt;*Weighted Averages&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="ifc8f47975add4f749d27d6b110aa5ed3_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzItMS0xLTEtNjM4ODc_ea69a255-26c4-446a-9421-bf36f132cb5c"
      unitRef="shares">80616</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue
      contextRef="ifc8f47975add4f749d27d6b110aa5ed3_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzItMy0xLTEtNjM4ODc_bfe5f3a1-51cb-4713-b7e0-6e0935550c2c"
      unitRef="usdPerShare">129.53</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="ic1d5d64367254c4c819a305f0ab20b2c_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzItNC0xLTEtNjM4ODc_a06fc566-d98d-4087-b896-57312970b3d6"
      unitRef="shares">91043</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue
      contextRef="ic1d5d64367254c4c819a305f0ab20b2c_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzItNi0xLTEtNjM4ODc_983556a5-e45f-401a-abae-a9634b961295"
      unitRef="usdPerShare">104.77</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="ie83acb459d73467c87c99796c09994fb_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzItNy0xLTEtNjM4ODc_16ee53a6-4c4b-4520-9571-ffb1a1a37783"
      unitRef="shares">78705</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue
      contextRef="ie83acb459d73467c87c99796c09994fb_I20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzItOS0xLTEtNjM4ODc_960ca8c4-6d43-4d76-ab80-2df8ef28f11d"
      unitRef="usdPerShare">94.34</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i38f33838ce91420482c5796e5388bdd8_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzMtMS0xLTEtNjM4ODc_dc96d064-0420-4358-9968-71021eb0f31a"
      unitRef="shares">48396</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue
      contextRef="i38f33838ce91420482c5796e5388bdd8_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzMtMy0xLTEtNjM4ODc_34d070da-93ee-4bde-b9a7-c19c1021f201"
      unitRef="usdPerShare">133.70</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i1011c4830f5f4c91869fe042f30279ce_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzMtNC0xLTEtNjM4ODc_a8f4bf3e-1a01-451b-a457-b046d5e4bc6c"
      unitRef="shares">35224</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue
      contextRef="i1011c4830f5f4c91869fe042f30279ce_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzMtNi0xLTEtNjM4ODc_61ea1e85-5ef6-463f-a971-a1a33b614074"
      unitRef="usdPerShare">157.00</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i23b96fe554184ee8b4402d7b2035a8fc_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzMtNy0xLTEtNjM4ODc_c1d24f3e-b77f-44e2-9f9d-7b9e1cca980b"
      unitRef="shares">44307</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue
      contextRef="i23b96fe554184ee8b4402d7b2035a8fc_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzMtOS0xLTEtNjM4ODc_7f46b946-2c33-4a1c-9e19-b3ae5959e6e7"
      unitRef="usdPerShare">111.95</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="i38f33838ce91420482c5796e5388bdd8_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzQtMS0xLTEtNjM4ODc_2ca81c0a-2a50-4a51-ba85-4008811efde3"
      unitRef="shares">29922</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue
      contextRef="i38f33838ce91420482c5796e5388bdd8_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzQtMy0xLTEtNjM4ODc_d0fe1a0b-5700-48f2-aaa9-c523576632b5"
      unitRef="usdPerShare">122.19</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="i1011c4830f5f4c91869fe042f30279ce_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzQtNC0xLTEtNjM4ODc_bd08aff3-bc84-4535-bd9f-0bcbc70617fd"
      unitRef="shares">45651</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue
      contextRef="i1011c4830f5f4c91869fe042f30279ce_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzQtNi0xLTEtNjM4ODc_93bc8e57-760a-49d5-adbd-944b38731cb7"
      unitRef="usdPerShare">101.36</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="i23b96fe554184ee8b4402d7b2035a8fc_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzQtNy0xLTEtNjM4ODc_d6d4d17f-0ffd-4b44-8109-8822e99511f1"
      unitRef="shares">31594</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue
      contextRef="i23b96fe554184ee8b4402d7b2035a8fc_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzQtOS0xLTEtNjM4ODc_4522eb1d-0702-47da-9dca-635ca4608ffa"
      unitRef="usdPerShare">88.90</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="i38f33838ce91420482c5796e5388bdd8_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzUtMS0xLTEtNjM4ODc_525a9616-1f53-4a20-aaf6-2a875736be87"
      unitRef="shares">1460</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue
      contextRef="i38f33838ce91420482c5796e5388bdd8_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzUtMy0xLTEtNjM4ODc_16665db2-e027-44da-baf7-a07691f10260"
      unitRef="usdPerShare">143.82</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="i1011c4830f5f4c91869fe042f30279ce_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzUtNC0xLTEtNjM4ODc_4d8d007c-444e-490b-b50f-7ef61e23e3d9"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue
      contextRef="i1011c4830f5f4c91869fe042f30279ce_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzUtNi0xLTEtNjM4ODc_cdc6a3a6-44f1-4c97-b3b9-ccb9f2ea92c9"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="i23b96fe554184ee8b4402d7b2035a8fc_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzUtNy0xLTEtNjM4ODc_335581da-0311-4b52-8e8b-6ca0cb9ef78f"
      unitRef="shares">375</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue
      contextRef="i23b96fe554184ee8b4402d7b2035a8fc_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzUtOS0xLTEtNjM4ODc_211a2b66-8e5a-47bd-b101-52264717a718"
      unitRef="usdPerShare">100.34</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="if085f70a27904be0b93506b76678eba3_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzYtMS0xLTEtNjM4ODc_6ab5cb3a-496a-442c-a560-754161057ee2"
      unitRef="shares">97630</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue
      contextRef="if085f70a27904be0b93506b76678eba3_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzYtMy0xLTEtNjM4ODc_4b0f8fa9-07f0-4311-9460-6eccc18dfcec"
      unitRef="usdPerShare">133.67</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="ifc8f47975add4f749d27d6b110aa5ed3_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzYtNC0xLTEtNjM4ODc_baee2494-a3ea-4a90-9084-0fd7d6e1ae07"
      unitRef="shares">80616</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue
      contextRef="ifc8f47975add4f749d27d6b110aa5ed3_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzYtNi0xLTEtNjM4ODc_c79c4e7b-ec6d-4766-8753-9becf447ad77"
      unitRef="usdPerShare">129.53</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="ic1d5d64367254c4c819a305f0ab20b2c_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzYtNy0xLTEtNjM4ODc_88b27790-ae22-41fa-b1aa-a0390c370356"
      unitRef="shares">91043</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue
      contextRef="ic1d5d64367254c4c819a305f0ab20b2c_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90YWJsZTphZGVjOWNhOGU4ZDQ0NzQwYjFiYTE1OTMxNzE5NWM1My90YWJsZXJhbmdlOmFkZWM5Y2E4ZThkNDQ3NDBiMWJhMTU5MzE3MTk1YzUzXzYtOS0xLTEtNjM4ODc_37537870-47c0-482b-825e-fdb128053f55"
      unitRef="usdPerShare">104.77</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="i3490753726ff4591a37ea325756d1abc_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ3NDE_0bb7131b-a25c-4d4f-850f-ff52843ca1df">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms
      contextRef="i7b81e0cb72d241c4a4953368ac25f53e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzMzMDA_fe7d0bc5-3992-44bc-b372-e1209d3245a0">P1Y4M28D</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms
      contextRef="i6d534cef18a748ab92702c2c5656810b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzMzMDQ_d27058bf-5a42-41e7-ba4d-d6561fe2e2b9">P1Y7M9D</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms
      contextRef="i2e5beadb31454176860e9cb0fa2c4b9a_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzMzMTE_53bf6ac3-6e2d-47e9-b74f-bdec0848a58a">P1Y11M12D</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i7b81e0cb72d241c4a4953368ac25f53e_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzMzNTQ_54fd28a6-6faa-43c2-98bf-2e1803dff576"
      unitRef="usd">4900000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i6d534cef18a748ab92702c2c5656810b_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzMzNTg_9380a0d0-5c53-4a48-afb5-fd39bb4fb7d3"
      unitRef="usd">5400000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i2e5beadb31454176860e9cb0fa2c4b9a_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzMzNjU_8821e7ed-aac1-4c2d-b0ff-3a15738de1b6"
      unitRef="usd">3700000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="icb775f781f264316a750b5e7578a7bad_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzM0MzU_b90984eb-8ed8-4228-a339-42f3d33cd8b6"
      unitRef="usd">7000000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="i92d53dcc417e4226ae49092eda85d752_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzM3NDA_9e3f94fd-874d-463a-8b50-8722448fbe23">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1
      contextRef="i50ab4791b6dd43998fe818c2a7c3ceec_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ3MzY_9cb5ff59-fcfa-4f5c-b3f2-756a00adacd4">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i50ab4791b6dd43998fe818c2a7c3ceec_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ0NTI_c0bdbc50-0584-45d0-bc89-bf411e3e6df5"
      unitRef="number">0.50</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i38f33838ce91420482c5796e5388bdd8_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ0NTI_cfe4d66e-af51-488b-8b55-f81032327f4d"
      unitRef="number">0.50</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod
      contextRef="i50ab4791b6dd43998fe818c2a7c3ceec_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzIvZnJhZzo5M2Q2Zjk4NDc5ZTU0YTZmYjY3NWZjNjc3Zjg3MDIzZi90ZXh0cmVnaW9uOjkzZDZmOTg0NzllNTRhNmZiNjc1ZmM2NzdmODcwMjNmXzQ3NDI_a55b22b2-e06e-443e-83c4-1c9ebc196cf2">P3Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod>
    <us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDI3_39aaa043-7893-4042-9270-4367a1f2503c">RETIREMENT BENEFIT PLANS&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Defined Benefit Plans&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In connection with the February 3, 2006 purchase of all the net assets of the &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Gradall&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; excavator business, the Company assumed sponsorship of two &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Gradall&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; non-contributory defined benefit pension plans, both of which are frozen with respect to both future benefit accruals and future new entrants.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Gradall&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; Company Employees&#x2019; Retirement Plan covers approximately 245 former employees and 51 current employees who (i) were formerly employed by JLG Industries, Inc., (ii) were not covered by a collective bargaining agreement and (iii) first participated in the plan before December 31, 2004. An amendment ceasing future benefit accruals for certain participants was effective December 31, 2004. A second amendment discontinued all future benefit accruals for all participants effective April 24, 2006.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Gradall&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; Company Hourly Employees&#x2019; Pension Plan covered former employees and current employees who (i) were formerly employed by JLG Industries, Inc., (ii) were covered by a collective bargaining agreement and (iii) first participated in the plan before April 6, 1997. An amendment ceasing all future benefit accruals was effective April 6, 1997.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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 change in plan assets, change in projected benefit obligation, rate assumptions and components of net periodic benefit cost as of December 31 with respect to the plan. The measurement dates of the assets and liabilities of the plan were December 31 of the respective years presented.&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;&#160;&lt;/span&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:53.139%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.794%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.859%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.847%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.861%"/&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="15" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Reconciliation of Funded Status&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="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;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;Year Ended December 31,&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="padding: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;(in thousands)&#160;&#160;&#160;&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;2022&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;2021&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:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Change in projected benefit obligation&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:700;line-height:100%"&gt;&#160;&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:#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:9pt;font-weight:400;line-height:100%"&gt;Benefit obligation at beginning of year&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: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;22,564&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 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;24,100&#160;&lt;/span&gt;&lt;/td&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:#def3c0;padding:2px 1pt 2px 13pt;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;Service cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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 13pt;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;Interest cost&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:9pt;font-weight:400;line-height:100%"&gt;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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;553&#160;&lt;/span&gt;&lt;/td&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:#def3c0;padding:2px 1pt 2px 13pt;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;Liability actuarial (gain) loss &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(4,761)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(994)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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 13pt;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;Benefits paid&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:9pt;font-weight:400;line-height:100%"&gt;(1,140)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,100)&lt;/span&gt;&lt;/td&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;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:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 13pt;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;Benefit obligation at end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;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:#def3c0;border-top:1pt 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;17,271&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;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:#def3c0;border-top:1pt 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;22,564&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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;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:9pt;font-weight:400;line-height:100%"&gt;Change in fair value of plan assets&#160;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:700;line-height:100%"&gt;&#160;&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:#def3c0;padding:2px 1pt 2px 13pt;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;Fair value of plan assets at beginning of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;23,671&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;22,370&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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 13pt;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;Return on plan assets&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:9pt;font-weight:400;line-height:100%"&gt;(4,262)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,401&#160;&lt;/span&gt;&lt;/td&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:#def3c0;padding:2px 1pt 2px 13pt;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;Employer contributions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;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 13pt;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;Benefits paid&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:9pt;font-weight:400;line-height:100%"&gt;(1,140)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,100)&lt;/span&gt;&lt;/td&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;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:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 13pt;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;Fair value of plan assets at end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;18,269&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;23,671&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;Funded status &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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:2pt solid #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;998&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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:2pt solid #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,107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company recognizes the overfunded or underfunded status (i.e., the difference between the fair value of plan assets and the projected benefit obligations) of defined benefit postretirement plans as an asset or liability in its consolidated balance sheet and recognizes changes in the funded status in the year in which the changes occur. The Company measures the funded status of a plan as of the date of the year-end consolidated balance sheet.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160; &lt;/span&gt;&lt;span style="color:#ee2724;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The accumulated benefit obligation for our pension plan represents the actuarial present value of benefits based on employee service and compensation as of a certain date and does not include an assumption about future compensation levels.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; In determining the projected benefit obligation and the net pension cost, we used the following significant weighted-average assumptions:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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:41.736%"/&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:15.859%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.636%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.639%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="15" style="border-bottom:1pt solid #000;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;Rates to Determine Benefit Obligation&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="6" style="border-top:1pt solid #000;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:9pt;font-weight:700;line-height:100%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:middle"&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="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5.10%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.75%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Composite rate of compensation increase&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;N/A&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;N/A&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&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;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="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:41.736%"/&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:15.274%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.636%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.224%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="15" style="border-bottom:1pt solid #000;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;Rates to Determine Net Periodic Benefit Cost&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="6" style="border-top:1pt solid #000;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;Year Ended December 31,&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.75%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.35%&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Long-term rate of return on plan 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:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6.00%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7.25%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Composite rate of compensation increase&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;N/A&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;N/A&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&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;&#160;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company employs a building block approach in determining the expected long-term rate of return on plan assets. Historical markets are studied and long-term historical relationships between equities and fixed income are preserved consistent with the widely accepted capital market principle that assets with higher volatility generate a greater return over the long run. Current market factors such as inflation and interest rates are evaluated before long-term market assumptions are determined. The long-term portfolio return is established via a building block approach with proper consideration of diversification and rebalancing. Peer data and historical returns are reviewed to check for reasonability and appropriateness.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&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 components of net periodic benefit cost (gains are denoted with parentheses and losses are not):&lt;/span&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:68.052%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.723%"/&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:1.0%"/&gt;&lt;td style="width:4.894%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.867%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="15" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Components of Net Periodic Benefit Cost&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="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:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;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;Year Ended December 31,&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:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Service cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;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:#def3c0;border-top:1pt 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&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;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:#def3c0;border-top:1pt 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&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Interest cost&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:9pt;font-weight:400;line-height:100%"&gt;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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;553&#160;&lt;/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:#def3c0;padding: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;Expected return on plan assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,384)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,581)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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;/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:9pt;font-weight:400;line-height:100%"&gt;Amortization of net loss&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:9pt;font-weight:400;line-height:100%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;542&#160;&lt;/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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;Net periodic benefit cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;(594)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;(481)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;The Company estimates that $1.0 million of unrecognized actuarial expense will be amortized from Accumulated other comprehensive income (loss) into net periodic benefit costs during 2023.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company employs a total return investment approach whereby a mix of equities and fixed income investments are used to maximize the long-term return of plan assets for a prudent level of risk. Risk tolerance is established through careful consideration of plan liabilities, plan funded status, and corporate financial condition. The investment portfolio contains a diversified blend of equity and fixed income investments. Furthermore, equity investments are diversified across U.S. and non-U.S. stocks, as well as growth, value, and small and large &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;capitalization. Other assets such as real estate, private equity, and hedge funds are used judiciously to enhance long-term returns while improving portfolio diversification. Derivatives may be used to gain market exposure in an efficient and timely manner; however, derivatives may not be used to leverage the portfolio beyond the market value of the underlying investments. Investment risk is measured and monitored on an ongoing basis through quarterly investment portfolio reviews, annual liability measurements, and periodic asset/liability studies. Our current asset allocations are consistent with our targeted allocations.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The pension plans' weighted-average asset allocation as a percentage of plan assets at December 31 is as follows:&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:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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:31.063%"/&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 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:35.157%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.131%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="15" style="border-bottom:1pt solid #000;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;Asset Allocation as a Percentage of the Plan&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="6" style="border-top:1pt solid #000;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:9pt;font-weight:700;line-height:100%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/div&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:'Times New Roman',sans-serif;font-size:9pt;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="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;2022&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;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Equity securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;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="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:400;line-height:100%"&gt;36%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;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:400;line-height:100%"&gt;36%&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:9pt;font-weight:400;line-height:100%"&gt;Debt securities&lt;/span&gt;&lt;/td&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="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:9pt;font-weight:400;line-height:100%"&gt;62%&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;62%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Short-term investments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;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="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:400;line-height:100%"&gt;2%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;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:400;line-height:100%"&gt;2%&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:9pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&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="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:9pt;font-weight:400;line-height:100%"&gt;&#x2014;%&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;&#x2014;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;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="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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:400;line-height:100%"&gt;100%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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:400;line-height:100%"&gt;100%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&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 hierarchy levels for our postretirement benefit plan investments as of December 31 as described in &lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&lt;a href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_124" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Note 1&lt;/a&gt;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; to the Consolidated Financial Statements:&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:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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:0.1%"/&gt;&lt;td style="width:1.410%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:47.069%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.385%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.027%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.678%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.678%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.588%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.678%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.824%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.441%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.678%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.678%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.766%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="border-bottom: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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;br/&gt;&lt;/span&gt;&lt;span style="font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;br/&gt;&#160;&lt;br/&gt;(in thousands)&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:9pt;font-weight:700;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="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:9pt;font-weight:700;line-height:100%"&gt;Quoted&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:700;line-height:100%"&gt;Prices in Active&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:700;line-height:100%"&gt;Markets for&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:700;line-height:100%"&gt;Identical Assets&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:700;line-height:100%"&gt;(Level 1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="9" style="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:9pt;font-weight:700;line-height:100%"&gt;&#160;&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:700;line-height:100%"&gt;Significant&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:700;line-height:100%"&gt;Other&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:700;line-height:100%"&gt;Observable&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:700;line-height:100%"&gt;Inputs&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:700;line-height:100%"&gt;(Level 2)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="6" style="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:9pt;font-weight:700;line-height:100%"&gt;&#160;&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:700;line-height:100%"&gt;Significant&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:700;line-height:100%"&gt;Unobservable&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:700;line-height:100%"&gt;Inputs&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:700;line-height:100%"&gt;(Level 3)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Mutual Funds:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&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="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;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Mid Cap&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: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;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 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;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 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="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;/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:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;International&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;743&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;743&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;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;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;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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="background-color:#def3c0;padding: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;Common/Collective Trusts:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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="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:9pt;font-weight:400;line-height:100%"&gt;Wells Fargo Liability Driven Solution CIT I&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:9pt;font-weight:400;line-height:100%"&gt;7,815&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;7,815&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo Liability Driven Solution CIT II&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;3,550&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;3,550&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo BlackRock International Equity&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:9pt;font-weight:400;line-height:100%"&gt;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="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;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="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;/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:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo/Causeway International Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;464&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;464&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo BlackRock Large Cap Growth Index Fund&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:9pt;font-weight:400;line-height:100%"&gt;724&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;724&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo BlackRock Large Cap Value Index Fund&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;744&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;744&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo Multi-Manager Small Cap&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:9pt;font-weight:400;line-height:100%"&gt;785&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;785&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo BlackRock Russell 2000 Index Fund&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;261&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;261&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo BlackRock S&amp;amp;P Mid Cap Index Fund&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:9pt;font-weight:400;line-height:100%"&gt;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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo/MFS Value CIT F&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;359&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;359&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo/T. Rowe Price Large-Cap Growth Managed CIT&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:9pt;font-weight:400;line-height:100%"&gt;359&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;359&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo/T. Rowe Price Equity Income Managed CIT&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;356&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;356&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo Voya Large Cap Growth CIT F&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:9pt;font-weight:400;line-height:100%"&gt;357&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;357&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" 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:9pt;font-weight:400;line-height:100%"&gt;Cash &amp;amp; Short-term Investments&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:9pt;font-weight:400;line-height:100%"&gt;432&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;432&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;18,269&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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,687&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;16,582&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&lt;/span&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: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:46.853%"/&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.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: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.572%"/&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: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.987%"/&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: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.601%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="border-bottom: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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;br/&gt;&#160;&lt;br/&gt;&#160;&lt;br/&gt;&#160;&lt;br/&gt;(in thousands)&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:9pt;font-weight:700;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="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:9pt;font-weight:700;line-height:100%"&gt;Quoted&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:700;line-height:100%"&gt;Prices in Active&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:700;line-height:100%"&gt;Markets for&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:700;line-height:100%"&gt;Identical Assets&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:700;line-height:100%"&gt;(Level 1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="9" style="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:9pt;font-weight:700;line-height:100%"&gt;&#160;&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:700;line-height:100%"&gt;Significant&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:700;line-height:100%"&gt;Other&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:700;line-height:100%"&gt;Observable&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:700;line-height:100%"&gt;Inputs&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:700;line-height:100%"&gt;(Level 2)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="6" style="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:9pt;font-weight:700;line-height:100%"&gt;&#160;&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:700;line-height:100%"&gt;&#160;&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:700;line-height:100%"&gt;Significant&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:700;line-height:100%"&gt;Unobservable&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:700;line-height:100%"&gt;Inputs&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:700;line-height:100%"&gt;(Level 3)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Mutual Funds:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&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="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;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Mid Cap&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: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;637&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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 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;637&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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 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="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;/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:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;International&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;940&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;940&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;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;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;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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="background-color:#def3c0;padding: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;Common/Collective Trusts:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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="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:9pt;font-weight:400;line-height:100%"&gt;Wells Fargo Liability Driven Solution CIT I&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:9pt;font-weight:400;line-height:100%"&gt;7,782&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;7,782&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo Liability Driven Solution CIT II&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;7,026&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;7,026&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"&gt;&lt;/td&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: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;Wells Fargo BlackRock International Equity&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:9pt;font-weight:400;line-height:100%"&gt;616&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;616&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/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:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo/Causeway International Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;586&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;586&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo BlackRock Large Cap Growth Index Fund&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:9pt;font-weight:400;line-height:100%"&gt;950&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;950&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo BlackRock Large Cap Value Index Fund&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;968&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;968&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo Multi-Manager Small Cap&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:9pt;font-weight:400;line-height:100%"&gt;1,015&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,015&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo BlackRock Russell 2000 Index Fund&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;332&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;332&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo BlackRock S&amp;amp;P Mid Cap Index Fund&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:9pt;font-weight:400;line-height:100%"&gt;419&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;419&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo/MFS Value CIT F&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;469&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;469&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo/T. Rowe Price Large-Cap Growth Managed CIT&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:9pt;font-weight:400;line-height:100%"&gt;465&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;465&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo/T. Rowe Price Equity Income Managed CIT&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;487&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;487&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo Voya Large Cap Growth CIT F&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:9pt;font-weight:400;line-height:100%"&gt;482&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;482&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" 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:9pt;font-weight:400;line-height:100%"&gt;Cash &amp;amp; Short-term Investments&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:9pt;font-weight:400;line-height:100%"&gt;497&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;497&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;23,671&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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,074&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;21,597&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our interests in the common collective trust investments are managed by one custodian. Consistent with our investment policy, the custodian has invested the assets across a widely diversified portfolio of U.S. and international equity and fixed income securities. Fair values of each security within the collective trust as of December&#160;31, 2022 were obtained from the custodian and are based on quoted market prices of individual investments; however, since the fund itself does not have a quoted market price, these assets are considered    Level 2.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The common collective funds noted in the above table have estimated fair value using the net asset value per share of investments. Investments can be redeemed immediately at the current net asset value per share based on the fair value of the underlying assets. Redemption frequency is daily. The categories contain investments in equity securities of smaller growing companies, medium-sized U.S. companies, large value-oriented and growth-oriented companies, and foreign companies traded on international markets.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; Expected benefit payments are estimated using the same assumptions used in determining our benefit obligation as of December&#160;31, 2022. The following table illustrates the estimated pension benefit payments that are projected to be paid:&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:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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:83.402%"/&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 style="width:0.1%"/&gt;&lt;td style="width:2.577%"/&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:2.726%"/&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="12" 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;Projected Future Benefit Payments&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;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:9pt;font-weight:700;line-height:100%"&gt;Employees&#x2019;&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:700;line-height:100%"&gt;Retirement Plan&lt;/span&gt;&lt;/div&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:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2023&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="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,275&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,304&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&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="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2026&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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,312&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2027&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="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,306&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Years 2028 through 2032&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="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,209&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/&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="text-align:center"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Supplemental Retirement Plan&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Board of Directors of the Company adopted the Alamo Group Inc. Supplemental Executive Retirement Plan (the &#x201c;SERP&#x201d;), effective as of January 3, 2011.&#160;The SERP will benefit certain key management or other highly compensated employees of the Company and/or certain subsidiaries who are selected by the Compensation Committee and approved by the Board to participate.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The SERP is intended to provide a benefit from the Company upon retirement, death or disability, or a change in control of the Company.&#160;Accordingly, the SERP obligates the Company to pay to a participant a Retirement Benefit (as defined in the SERP) upon the occurrence of certain payment events to the extent a participant has a vested right thereto.&#160;A participant&#x2019;s right to his or her Retirement Benefit becomes vested in the Company&#x2019;s contributions upon 10 years of Credited Service (as defined in the SERP) or a change in control of the Company.&#160; The Retirement Benefit is based on 20% of the final three-year average salary of each participant on or after his or her normal retirement age (65 years of age).&#160; In the event of the participant&#x2019;s death or a change in control, the participant&#x2019;s vested retirement benefit will be paid in a lump sum to the participant or his or her estate, as applicable, within 90 days after the participant&#x2019;s death or a change in control, as applicable. In the event that the participant is entitled to a benefit from the SERP due to disability, retirement or other termination of employment, the benefit will be paid in monthly installments over a period of fifteen years.&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;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company records amounts relating to the SERP based on calculations that incorporate various actuarial and other assumptions, including discount rates, rate of compensation increases, retirement dates and life expectancy.&#160;The net periodic costs are recognized as employees render the services necessary to earn the SERP benefits.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In May of 2015, the Board amended the SERP to allow the Board to modify the retirement benefit percentage either higher or lower than 20%. In May of 2016, the Board added additional highly compensated employees to the plan. As of December&#160;31, 2022, the current retirement benefit (as defined in the plan) for the participants ranges from 10% to 20%.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The change in the Projected Benefit Obligation (PBO) as of December&#160;31, 2022 and 2021, is shown below:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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.128%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:3.724%"/&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:1.0%"/&gt;&lt;td style="width:2.993%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="15" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Reconciliation of Benefit Obligation&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;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;Year Ended December 31,&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&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="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:middle"&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Benefit obligation at January 1,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,326&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,160&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Service cost&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;284&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;369&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;278&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Liability actuarial loss (gain)&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(2,023)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;759&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Benefits paid&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(313)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(167)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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;/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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Benefit obligation at December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,552&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,326&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of net periodic pension expense were as follows:&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:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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:67.274%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.077%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.267%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.226%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="15" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Components of Net Periodic Benefit Cost&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;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;Year Ended December 31,&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&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="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:middle"&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Service cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;284&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;369&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest cost&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;278&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Amortization of prior service cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;420&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;413&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Amortization of net (gain)/loss&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;440&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;318&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net periodic benefit cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,422&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,305&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company estimates that $0.4 million of unrecognized actuarial expense will be amortized from Accumulated other comprehensive income into net periodic benefit costs during 2023.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In determining the projected benefit obligation and the net pension cost, we used the following significant weighted-average assumptions:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Assumptions used to determine benefit obligations at December 31:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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:70.976%"/&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.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.498%"/&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="12" 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;Rates to Determine Benefit Obligation&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&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="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5.05%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.50%&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:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Composite rate of compensation increase&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.00%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.00%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&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;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Assumptions used to determine net periodic benefit cost for the years ended December 31:&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:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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:70.894%"/&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:12.536%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.537%"/&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="12" 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;Rates to Determine Net Periodic Benefit Cost&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&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="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.50%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.05%&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:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Composite rate of compensation increase&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.00%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.00%&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:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Long-term rate of return on plan assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;N/A&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;N/A&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Future estimated benefits expected to be paid from the plan over the next ten years as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="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:84.280%"/&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:1.0%"/&gt;&lt;td style="width:1.971%"/&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;/tr&gt;&lt;tr&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;Projected Future Benefit Payments&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;SERP&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;490&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;546&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;639&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;866&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;868&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Years 2028 through 2032&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,321&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;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;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span&gt;&lt;br/&gt;&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-style:italic;font-weight:700;line-height:120%"&gt;Defined Contribution Plans&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-style:italic;font-weight:700;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company has two defined contribution plans, The &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Gradall&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; Salaried Employees&#x2019; Savings and Investment Plan (&#x201c;Salary Plan&#x201d;) and The International Association of Machinist and Aerospace Workers Retirement Plan (&#x201c;IAM Plan&#x201d;). The Company contributed $0.5 million, $0.5 million, and $0.4 million to the IAM Plan for the plan years ended December&#160;31, 2022, 2021 and 2020, respectively. The Company converted the Salary Plan into its 401(k) retirement and savings plan and put the Hourly Plan into a separate 401(k) retirement and savings plan.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company provides a defined contribution 401(k) retirement and savings plan for eligible U.S. employees. Company matching contributions are based on a percentage of employee contributions. Company contributions to the plan during 2022, 2021 and 2020 were $4.2 million, $3.9 million, and $3.5 million, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; Three of the Company&#x2019;s international subsidiaries also participate in a defined contribution and savings plan covering eligible employees. The Company&#x2019;s international subsidiaries contribute between 0% and 10% of the participant&#x2019;s salary up to a specific limit. Total contributions made to the above plans were $0.9 million, $0.9 million, and $0.9 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively.&lt;/span&gt;&lt;/div&gt;</us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock>
    <alg:DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans
      contextRef="i9023c726c26349e2a4c074fdc4a88989_I20060203"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzIwMA_40f00cc1-ef6a-4b62-a124-ffe78b06095f"
      unitRef="plan">2</alg:DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans>
    <alg:FormerEmployeesCoveredByPensionPlan
      contextRef="id2b30941a2b4404bbd80394ffc1e2677_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzQyNA_1a1e7d5c-f1b3-4a63-92fb-4246fc06f225"
      unitRef="employee">245</alg:FormerEmployeesCoveredByPensionPlan>
    <alg:CurrentEmployeesCoveredByPensionPlan
      contextRef="id2b30941a2b4404bbd80394ffc1e2677_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzQ0OA_d7750c2a-c1e2-4387-8af8-16a5d65a9186"
      unitRef="employee">51</alg:CurrentEmployeesCoveredByPensionPlan>
    <us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDM4_e85bd2ca-b253-4198-8067-3efbcef81864">The following table sets forth the change in plan assets, change in projected benefit obligation, rate assumptions and components of net periodic benefit cost as of December 31 with respect to the plan. The measurement dates of the assets and liabilities of the plan were December 31 of the respective years presented.&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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:53.139%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.794%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.859%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.847%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.861%"/&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="15" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Reconciliation of Funded Status&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="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;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;Year Ended December 31,&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="padding: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;(in thousands)&#160;&#160;&#160;&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;2022&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;2021&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:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Change in projected benefit obligation&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:700;line-height:100%"&gt;&#160;&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:#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:9pt;font-weight:400;line-height:100%"&gt;Benefit obligation at beginning of year&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: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;22,564&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 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;24,100&#160;&lt;/span&gt;&lt;/td&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:#def3c0;padding:2px 1pt 2px 13pt;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;Service cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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 13pt;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;Interest cost&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:9pt;font-weight:400;line-height:100%"&gt;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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;553&#160;&lt;/span&gt;&lt;/td&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:#def3c0;padding:2px 1pt 2px 13pt;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;Liability actuarial (gain) loss &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(4,761)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(994)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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 13pt;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;Benefits paid&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:9pt;font-weight:400;line-height:100%"&gt;(1,140)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,100)&lt;/span&gt;&lt;/td&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;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:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 13pt;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;Benefit obligation at end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;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:#def3c0;border-top:1pt 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;17,271&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;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:#def3c0;border-top:1pt 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;22,564&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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;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:9pt;font-weight:400;line-height:100%"&gt;Change in fair value of plan assets&#160;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;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:9pt;font-weight:700;line-height:100%"&gt;&#160;&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:#def3c0;padding:2px 1pt 2px 13pt;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;Fair value of plan assets at beginning of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;23,671&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;22,370&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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 13pt;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;Return on plan assets&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:9pt;font-weight:400;line-height:100%"&gt;(4,262)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,401&#160;&lt;/span&gt;&lt;/td&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:#def3c0;padding:2px 1pt 2px 13pt;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;Employer contributions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;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 13pt;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;Benefits paid&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:9pt;font-weight:400;line-height:100%"&gt;(1,140)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,100)&lt;/span&gt;&lt;/td&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;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:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 13pt;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;Fair value of plan assets at end of year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;18,269&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;23,671&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;Funded status &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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:2pt solid #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;998&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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:2pt solid #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,107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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;</us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock>
    <us-gaap:DefinedBenefitPlanBenefitObligation
      contextRef="iddf0fe15564f4b3b90fe266fbef3b250_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzQtMi0xLTEtNjM4ODc_ccd32534-a842-423a-8b1e-7aa964a18f59"
      unitRef="usd">22564000</us-gaap:DefinedBenefitPlanBenefitObligation>
    <us-gaap:DefinedBenefitPlanBenefitObligation
      contextRef="i157f5442992d4d448c7b527a323d059a_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzQtNC0xLTEtNjM4ODc_33a18fdc-1a33-417c-a44f-54fd95936ff8"
      unitRef="usd">24100000</us-gaap:DefinedBenefitPlanBenefitObligation>
    <us-gaap:DefinedBenefitPlanServiceCost
      contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzUtMi0xLTEtNjM4ODc_0b690151-0c5d-439f-ab55-45052d6fc3c0"
      unitRef="usd">4000</us-gaap:DefinedBenefitPlanServiceCost>
    <us-gaap:DefinedBenefitPlanServiceCost
      contextRef="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzUtNC0xLTEtNjM4ODc_4350ca19-111b-415e-b5fa-a337d196ed1f"
      unitRef="usd">5000</us-gaap:DefinedBenefitPlanServiceCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzYtMi0xLTEtNjM4ODc_7eb82b2d-f661-420d-ac11-5dfa39cdd6c6"
      unitRef="usd">604000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzYtNC0xLTEtNjM4ODc_d2d9e8e0-3283-4ce0-837e-a0412cd7e1b8"
      unitRef="usd">553000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanActuarialGainLoss
      contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzctMi0xLTEtNjM4ODc_da3057d9-f133-4849-9be8-6253eb5c875c"
      unitRef="usd">4761000</us-gaap:DefinedBenefitPlanActuarialGainLoss>
    <us-gaap:DefinedBenefitPlanActuarialGainLoss
      contextRef="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzctNC0xLTEtNjM4ODc_a79df8fd-b183-4126-834c-999a13d1d4b5"
      unitRef="usd">994000</us-gaap:DefinedBenefitPlanActuarialGainLoss>
    <us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid
      contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzgtMi0xLTEtNjM4ODc_aff86619-07de-40aa-9741-9ae57a6ceb70"
      unitRef="usd">1140000</us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid>
    <us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid
      contextRef="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzgtNC0xLTEtNjM4ODc_3bd6c9e5-db8c-4d5c-8225-2a6a483cad2e"
      unitRef="usd">1100000</us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid>
    <us-gaap:DefinedBenefitPlanBenefitObligation
      contextRef="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzEwLTItMS0xLTYzODg3_9cb72f77-8ef9-4441-bd8a-95d958bc1a2b"
      unitRef="usd">17271000</us-gaap:DefinedBenefitPlanBenefitObligation>
    <us-gaap:DefinedBenefitPlanBenefitObligation
      contextRef="iddf0fe15564f4b3b90fe266fbef3b250_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzEwLTQtMS0xLTYzODg3_32f0da50-b394-49a9-8fb5-37fce691b643"
      unitRef="usd">22564000</us-gaap:DefinedBenefitPlanBenefitObligation>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="iddf0fe15564f4b3b90fe266fbef3b250_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzEyLTItMS0xLTYzODg3_dc658b0b-6d14-41a6-bb5d-ea1c3ec54bc2"
      unitRef="usd">23671000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i157f5442992d4d448c7b527a323d059a_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzEyLTQtMS0xLTYzODg3_7ebca515-422c-4507-b844-d4cf718567ab"
      unitRef="usd">22370000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanActualReturnOnPlanAssets
      contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzEzLTItMS0xLTYzODg3_4a9c6e22-f69f-4c31-9213-3deffff04206"
      unitRef="usd">-4262000</us-gaap:DefinedBenefitPlanActualReturnOnPlanAssets>
    <us-gaap:DefinedBenefitPlanActualReturnOnPlanAssets
      contextRef="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzEzLTQtMS0xLTYzODg3_f13a93e1-507b-4399-84d8-4681be5f4703"
      unitRef="usd">2401000</us-gaap:DefinedBenefitPlanActualReturnOnPlanAssets>
    <us-gaap:DefinedBenefitPlanContributionsByEmployer
      contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzE0LTItMS0xLTYzODg3_aef4c173-7208-4938-b7ef-974132b10d3d"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanContributionsByEmployer>
    <us-gaap:DefinedBenefitPlanContributionsByEmployer
      contextRef="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzE0LTQtMS0xLTYzODg3_542f79c7-1b0e-4362-aa0f-b7d943e84b7b"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanContributionsByEmployer>
    <us-gaap:DefinedBenefitPlanPlanAssetsBenefitsPaid
      contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzE1LTItMS0xLTYzODg3_1376fe20-321b-49f2-8e09-b5b097d6c3c7"
      unitRef="usd">1140000</us-gaap:DefinedBenefitPlanPlanAssetsBenefitsPaid>
    <us-gaap:DefinedBenefitPlanPlanAssetsBenefitsPaid
      contextRef="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzE1LTQtMS0xLTYzODg3_a80d8195-84d1-4fdd-8e80-adee9e714ee9"
      unitRef="usd">1100000</us-gaap:DefinedBenefitPlanPlanAssetsBenefitsPaid>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzE3LTItMS0xLTYzODg3_aa350fbc-e21e-4276-8e64-79adc54d765d"
      unitRef="usd">18269000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="iddf0fe15564f4b3b90fe266fbef3b250_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzE3LTQtMS0xLTYzODg3_66c2a0a7-1f8d-489e-ab9f-4f6173966973"
      unitRef="usd">23671000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFundedStatusOfPlan
      contextRef="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzE4LTItMS0xLTYzODg3_8df4d76f-2194-4e8a-8c69-5ca8e761bd79"
      unitRef="usd">998000</us-gaap:DefinedBenefitPlanFundedStatusOfPlan>
    <us-gaap:DefinedBenefitPlanFundedStatusOfPlan
      contextRef="iddf0fe15564f4b3b90fe266fbef3b250_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNTcxYWE1MjYxN2M0OGNlYWYyOWE0MWI1M2E4NDFjNy90YWJsZXJhbmdlOmQ1NzFhYTUyNjE3YzQ4Y2VhZjI5YTQxYjUzYTg0MWM3XzE4LTQtMS0xLTYzODg3_61b6c7e4-249b-4012-98d4-8b5189cfebd2"
      unitRef="usd">1107000</us-gaap:DefinedBenefitPlanFundedStatusOfPlan>
    <us-gaap:ScheduleOfAssumptionsUsedTableTextBlock
      contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDMz_34816410-164f-4044-9f0e-fa2693208e4b">In determining the projected benefit obligation and the net pension cost, we used the following significant weighted-average assumptions:&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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:41.736%"/&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:15.859%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.636%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.639%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="15" style="border-bottom:1pt solid #000;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;Rates to Determine Benefit Obligation&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="6" style="border-top:1pt solid #000;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:9pt;font-weight:700;line-height:100%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:middle"&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="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5.10%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.75%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Composite rate of compensation increase&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;N/A&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;N/A&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&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;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="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:41.736%"/&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:15.274%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.636%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.224%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="15" style="border-bottom:1pt solid #000;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;Rates to Determine Net Periodic Benefit Cost&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="6" style="border-top:1pt solid #000;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;Year Ended December 31,&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.75%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.35%&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Long-term rate of return on plan 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:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6.00%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7.25%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Composite rate of compensation increase&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;N/A&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;N/A&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAssumptionsUsedTableTextBlock>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate
      contextRef="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0YTdlMTg2YTFiODY0ZjkwYmRmNWExMDhiMjRlY2ExNS90YWJsZXJhbmdlOjRhN2UxODZhMWI4NjRmOTBiZGY1YTEwOGIyNGVjYTE1XzMtMy0xLTEtNjM4ODc_5704b429-f6d6-489a-a2e2-96ee96b32cc9"
      unitRef="number">0.0510</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate
      contextRef="iddf0fe15564f4b3b90fe266fbef3b250_I20211231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0YTdlMTg2YTFiODY0ZjkwYmRmNWExMDhiMjRlY2ExNS90YWJsZXJhbmdlOjRhN2UxODZhMWI4NjRmOTBiZGY1YTEwOGIyNGVjYTE1XzMtNC0xLTEtNjM4ODc_c6ef6dce-b9db-45ac-9a15-7a0ab42e97bd"
      unitRef="number">0.0275</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate
      contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0N2UwNDYzMjk2YzI0NTc4YTk5MzNjOWZhZGJlODk4ZC90YWJsZXJhbmdlOjQ3ZTA0NjMyOTZjMjQ1NzhhOTkzM2M5ZmFkYmU4OThkXzMtMy0xLTEtNjM4ODc_c6c8bef5-4969-4a26-b4a5-dd9086f566dd"
      unitRef="number">0.0275</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate
      contextRef="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0N2UwNDYzMjk2YzI0NTc4YTk5MzNjOWZhZGJlODk4ZC90YWJsZXJhbmdlOjQ3ZTA0NjMyOTZjMjQ1NzhhOTkzM2M5ZmFkYmU4OThkXzMtNC0xLTEtNjM4ODc_f79e395c-b225-4ac1-a190-07ec87053cf0"
      unitRef="number">0.0235</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets
      contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0N2UwNDYzMjk2YzI0NTc4YTk5MzNjOWZhZGJlODk4ZC90YWJsZXJhbmdlOjQ3ZTA0NjMyOTZjMjQ1NzhhOTkzM2M5ZmFkYmU4OThkXzQtMy0xLTEtNjM4ODc_018184b0-5c3b-4bf7-be8a-791bd59c2343"
      unitRef="number">0.0600</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets
      contextRef="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0N2UwNDYzMjk2YzI0NTc4YTk5MzNjOWZhZGJlODk4ZC90YWJsZXJhbmdlOjQ3ZTA0NjMyOTZjMjQ1NzhhOTkzM2M5ZmFkYmU4OThkXzQtNC0xLTEtNjM4ODc_12667021-3134-4db3-b0ad-86cb773b8b8f"
      unitRef="number">0.0725</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets>
    <us-gaap:ScheduleOfNetBenefitCostsTableTextBlock
      contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDIz_d7450e1b-4059-4912-947b-6f50ed4a952d">&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 components of net periodic benefit cost (gains are denoted with parentheses and losses are not):&lt;/span&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:68.052%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.723%"/&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:1.0%"/&gt;&lt;td style="width:4.894%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.867%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="15" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Components of Net Periodic Benefit Cost&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="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:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;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;Year Ended December 31,&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:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Service cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;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:#def3c0;border-top:1pt 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&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;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:#def3c0;border-top:1pt 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&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Interest cost&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:9pt;font-weight:400;line-height:100%"&gt;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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;553&#160;&lt;/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:#def3c0;padding: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;Expected return on plan assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,384)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,581)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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;/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:9pt;font-weight:400;line-height:100%"&gt;Amortization of net loss&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:9pt;font-weight:400;line-height:100%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;542&#160;&lt;/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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;Net periodic benefit cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;(594)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;(481)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:ScheduleOfNetBenefitCostsTableTextBlock>
    <us-gaap:DefinedBenefitPlanServiceCost
      contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0MzFjZTRlY2M5ZmU0YjIxYjIyYzg3MmRhNTRjZjgzNC90YWJsZXJhbmdlOjQzMWNlNGVjYzlmZTRiMjFiMjJjODcyZGE1NGNmODM0XzMtMi0xLTEtNjM4ODc_0b690151-0c5d-439f-ab55-45052d6fc3c0"
      unitRef="usd">4000</us-gaap:DefinedBenefitPlanServiceCost>
    <us-gaap:DefinedBenefitPlanServiceCost
      contextRef="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0MzFjZTRlY2M5ZmU0YjIxYjIyYzg3MmRhNTRjZjgzNC90YWJsZXJhbmdlOjQzMWNlNGVjYzlmZTRiMjFiMjJjODcyZGE1NGNmODM0XzMtNC0xLTEtNjM4ODc_4350ca19-111b-415e-b5fa-a337d196ed1f"
      unitRef="usd">5000</us-gaap:DefinedBenefitPlanServiceCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0MzFjZTRlY2M5ZmU0YjIxYjIyYzg3MmRhNTRjZjgzNC90YWJsZXJhbmdlOjQzMWNlNGVjYzlmZTRiMjFiMjJjODcyZGE1NGNmODM0XzQtMi0xLTEtNjM4ODc_7eb82b2d-f661-420d-ac11-5dfa39cdd6c6"
      unitRef="usd">604000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0MzFjZTRlY2M5ZmU0YjIxYjIyYzg3MmRhNTRjZjgzNC90YWJsZXJhbmdlOjQzMWNlNGVjYzlmZTRiMjFiMjJjODcyZGE1NGNmODM0XzQtNC0xLTEtNjM4ODc_d2d9e8e0-3283-4ce0-837e-a0412cd7e1b8"
      unitRef="usd">553000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets
      contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0MzFjZTRlY2M5ZmU0YjIxYjIyYzg3MmRhNTRjZjgzNC90YWJsZXJhbmdlOjQzMWNlNGVjYzlmZTRiMjFiMjJjODcyZGE1NGNmODM0XzUtMi0xLTEtNjM4ODc_a6677d73-9e20-46c7-b899-e8828c889129"
      unitRef="usd">1384000</us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets>
    <us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets
      contextRef="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0MzFjZTRlY2M5ZmU0YjIxYjIyYzg3MmRhNTRjZjgzNC90YWJsZXJhbmdlOjQzMWNlNGVjYzlmZTRiMjFiMjJjODcyZGE1NGNmODM0XzUtNC0xLTEtNjM4ODc_fdc3c871-63f3-44d7-aa18-6f2e023c4266"
      unitRef="usd">1581000</us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets>
    <us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses
      contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0MzFjZTRlY2M5ZmU0YjIxYjIyYzg3MmRhNTRjZjgzNC90YWJsZXJhbmdlOjQzMWNlNGVjYzlmZTRiMjFiMjJjODcyZGE1NGNmODM0XzctMi0xLTEtNjM4ODc_f4d5510a-e7e0-42f1-a8c6-707f1316df13"
      unitRef="usd">-182000</us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses>
    <us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses
      contextRef="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0MzFjZTRlY2M5ZmU0YjIxYjIyYzg3MmRhNTRjZjgzNC90YWJsZXJhbmdlOjQzMWNlNGVjYzlmZTRiMjFiMjJjODcyZGE1NGNmODM0XzctNC0xLTEtNjM4ODc_c605b926-cf36-4ab5-ae0a-1784858d7232"
      unitRef="usd">-542000</us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses>
    <us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost
      contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0MzFjZTRlY2M5ZmU0YjIxYjIyYzg3MmRhNTRjZjgzNC90YWJsZXJhbmdlOjQzMWNlNGVjYzlmZTRiMjFiMjJjODcyZGE1NGNmODM0XzktMi0xLTEtNjM4ODc_983fb031-1b72-4ce4-9a23-8217c3aa9cc9"
      unitRef="usd">-594000</us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost>
    <us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost
      contextRef="ifd7f0a1ae556487eb124e45ac7d2e3d0_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo0MzFjZTRlY2M5ZmU0YjIxYjIyYzg3MmRhNTRjZjgzNC90YWJsZXJhbmdlOjQzMWNlNGVjYzlmZTRiMjFiMjJjODcyZGE1NGNmODM0XzktNC0xLTEtNjM4ODc_b9132925-328f-45b1-943c-78420f08f768"
      unitRef="usd">-481000</us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax
      contextRef="ifb1b11ee7ef44dc39600b55c62f605e9_D20230101-20231231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzMyODM_ef380ee6-94f4-443f-80e8-d9be956a87e8"
      unitRef="usd">1000000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax>
    <us-gaap:ScheduleOfAllocationOfPlanAssetsTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDQx_77a36d01-1af7-415b-b384-affb1ffe619a">The pension plans' weighted-average asset allocation as a percentage of plan assets at December 31 is as follows:&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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:31.063%"/&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 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:35.157%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.131%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="15" style="border-bottom:1pt solid #000;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;Asset Allocation as a Percentage of the Plan&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="6" style="border-top:1pt solid #000;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:9pt;font-weight:700;line-height:100%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/div&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:'Times New Roman',sans-serif;font-size:9pt;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="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;2022&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;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Equity securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;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="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:400;line-height:100%"&gt;36%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;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:400;line-height:100%"&gt;36%&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:9pt;font-weight:400;line-height:100%"&gt;Debt securities&lt;/span&gt;&lt;/td&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="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:9pt;font-weight:400;line-height:100%"&gt;62%&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;62%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Short-term investments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;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="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:400;line-height:100%"&gt;2%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;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:400;line-height:100%"&gt;2%&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:9pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&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="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:9pt;font-weight:400;line-height:100%"&gt;&#x2014;%&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;&#x2014;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;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="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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:400;line-height:100%"&gt;100%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000;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:400;line-height:100%"&gt;100%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfAllocationOfPlanAssetsTableTextBlock>
    <us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations
      contextRef="if3cf207cdc8041109a3c2438a4737717_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplMDkwNzYyOWE5NmQ0ZWQ1ODQxNDc5Mjk1MWMzOGY0ZC90YWJsZXJhbmdlOmUwOTA3NjI5YTk2ZDRlZDU4NDE0NzkyOTUxYzM4ZjRkXzMtNS0xLTEtNjM4ODc_d127f28b-3460-4c5b-a27e-334a11d58150"
      unitRef="number">0.36</us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations>
    <us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations
      contextRef="icd556120213a4b5fbfc69e2fa86c1d1c_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplMDkwNzYyOWE5NmQ0ZWQ1ODQxNDc5Mjk1MWMzOGY0ZC90YWJsZXJhbmdlOmUwOTA3NjI5YTk2ZDRlZDU4NDE0NzkyOTUxYzM4ZjRkXzMtNi0xLTEtNjM4ODc_76e86f98-82a7-4981-8a8b-652908822474"
      unitRef="number">0.36</us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations>
    <us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations
      contextRef="i2c8713fba4954513b58d3eab3a03f19e_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplMDkwNzYyOWE5NmQ0ZWQ1ODQxNDc5Mjk1MWMzOGY0ZC90YWJsZXJhbmdlOmUwOTA3NjI5YTk2ZDRlZDU4NDE0NzkyOTUxYzM4ZjRkXzQtNS0xLTEtNjM4ODc_210f84e4-d8aa-4f16-81a3-12b8c5bb1ddf"
      unitRef="number">0.62</us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations>
    <us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations
      contextRef="i437277f20055408d91f03cfe359bc428_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplMDkwNzYyOWE5NmQ0ZWQ1ODQxNDc5Mjk1MWMzOGY0ZC90YWJsZXJhbmdlOmUwOTA3NjI5YTk2ZDRlZDU4NDE0NzkyOTUxYzM4ZjRkXzQtNi0xLTEtNjM4ODc_97ef0268-89a8-4c26-a977-94298487ae34"
      unitRef="number">0.62</us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations>
    <us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations
      contextRef="i74997fdc0ff948d29df323b4c3cb9d2c_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplMDkwNzYyOWE5NmQ0ZWQ1ODQxNDc5Mjk1MWMzOGY0ZC90YWJsZXJhbmdlOmUwOTA3NjI5YTk2ZDRlZDU4NDE0NzkyOTUxYzM4ZjRkXzUtNS0xLTEtNjM4ODc_247977f6-0124-4d7e-9a37-eed43705feee"
      unitRef="number">0.02</us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations>
    <us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations
      contextRef="i5e260d6c10e145de848833420aba74ad_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplMDkwNzYyOWE5NmQ0ZWQ1ODQxNDc5Mjk1MWMzOGY0ZC90YWJsZXJhbmdlOmUwOTA3NjI5YTk2ZDRlZDU4NDE0NzkyOTUxYzM4ZjRkXzUtNi0xLTEtNjM4ODc_583a5437-b5d0-4097-ae1d-979b27409b1e"
      unitRef="number">0.02</us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations>
    <us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations
      contextRef="ic0c4ecbf07bf43779d0da8efbf7bb6bb_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplMDkwNzYyOWE5NmQ0ZWQ1ODQxNDc5Mjk1MWMzOGY0ZC90YWJsZXJhbmdlOmUwOTA3NjI5YTk2ZDRlZDU4NDE0NzkyOTUxYzM4ZjRkXzYtNS0xLTEtNjM4ODc_4c7c4152-469c-4ff9-ae81-dee467577d8b"
      unitRef="number">0</us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations>
    <us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations
      contextRef="iceda45e1bd664c60986a5aa84bb37e7a_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplMDkwNzYyOWE5NmQ0ZWQ1ODQxNDc5Mjk1MWMzOGY0ZC90YWJsZXJhbmdlOmUwOTA3NjI5YTk2ZDRlZDU4NDE0NzkyOTUxYzM4ZjRkXzYtNi0xLTEtNjM4ODc_b3999e58-93ae-4572-bf7a-d1f9425e5804"
      unitRef="number">0</us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations>
    <us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations
      contextRef="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplMDkwNzYyOWE5NmQ0ZWQ1ODQxNDc5Mjk1MWMzOGY0ZC90YWJsZXJhbmdlOmUwOTA3NjI5YTk2ZDRlZDU4NDE0NzkyOTUxYzM4ZjRkXzctNS0xLTEtNjM4ODc_bbb94959-7549-477a-ae42-4953da3966f2"
      unitRef="number">1</us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations>
    <us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations
      contextRef="iddf0fe15564f4b3b90fe266fbef3b250_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplMDkwNzYyOWE5NmQ0ZWQ1ODQxNDc5Mjk1MWMzOGY0ZC90YWJsZXJhbmdlOmUwOTA3NjI5YTk2ZDRlZDU4NDE0NzkyOTUxYzM4ZjRkXzctNi0xLTEtNjM4ODc_0950957e-b804-4cf5-8432-81a3e2d3a94e"
      unitRef="number">1</us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDI5_a7f4604b-23ac-4098-a4cc-b6723a684d1a">&lt;div style="text-indent:18pt"&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 hierarchy levels for our postretirement benefit plan investments as of December 31 as described in &lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&lt;a href="#i51762c1e0d7f47aeb6d24f3a0d19ea64_124" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Note 1&lt;/a&gt;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; to the Consolidated Financial Statements:&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:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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:0.1%"/&gt;&lt;td style="width:1.410%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:47.069%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.385%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.027%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.678%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.678%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.588%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.678%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.824%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.441%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.678%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.678%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.766%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="border-bottom: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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;br/&gt;&lt;/span&gt;&lt;span style="font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;br/&gt;&#160;&lt;br/&gt;(in thousands)&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:9pt;font-weight:700;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="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:9pt;font-weight:700;line-height:100%"&gt;Quoted&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:700;line-height:100%"&gt;Prices in Active&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:700;line-height:100%"&gt;Markets for&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:700;line-height:100%"&gt;Identical Assets&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:700;line-height:100%"&gt;(Level 1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="9" style="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:9pt;font-weight:700;line-height:100%"&gt;&#160;&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:700;line-height:100%"&gt;Significant&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:700;line-height:100%"&gt;Other&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:700;line-height:100%"&gt;Observable&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:700;line-height:100%"&gt;Inputs&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:700;line-height:100%"&gt;(Level 2)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="6" style="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:9pt;font-weight:700;line-height:100%"&gt;&#160;&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:700;line-height:100%"&gt;Significant&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:700;line-height:100%"&gt;Unobservable&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:700;line-height:100%"&gt;Inputs&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:700;line-height:100%"&gt;(Level 3)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Mutual Funds:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&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="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;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Mid Cap&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: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;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 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;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 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="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;/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:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;International&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;743&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;743&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;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;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;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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="background-color:#def3c0;padding: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;Common/Collective Trusts:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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="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:9pt;font-weight:400;line-height:100%"&gt;Wells Fargo Liability Driven Solution CIT I&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:9pt;font-weight:400;line-height:100%"&gt;7,815&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;7,815&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo Liability Driven Solution CIT II&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;3,550&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;3,550&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo BlackRock International Equity&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:9pt;font-weight:400;line-height:100%"&gt;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="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;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="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;/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:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo/Causeway International Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;464&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;464&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo BlackRock Large Cap Growth Index Fund&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:9pt;font-weight:400;line-height:100%"&gt;724&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;724&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo BlackRock Large Cap Value Index Fund&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;744&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;744&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo Multi-Manager Small Cap&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:9pt;font-weight:400;line-height:100%"&gt;785&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;785&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo BlackRock Russell 2000 Index Fund&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;261&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;261&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo BlackRock S&amp;amp;P Mid Cap Index Fund&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:9pt;font-weight:400;line-height:100%"&gt;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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo/MFS Value CIT F&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;359&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;359&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo/T. Rowe Price Large-Cap Growth Managed CIT&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:9pt;font-weight:400;line-height:100%"&gt;359&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;359&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo/T. Rowe Price Equity Income Managed CIT&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;356&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;356&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo Voya Large Cap Growth CIT F&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:9pt;font-weight:400;line-height:100%"&gt;357&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;357&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" 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:9pt;font-weight:400;line-height:100%"&gt;Cash &amp;amp; Short-term Investments&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:9pt;font-weight:400;line-height:100%"&gt;432&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;432&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;18,269&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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,687&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;16,582&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&lt;/span&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: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:46.853%"/&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.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: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.572%"/&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: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.987%"/&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: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.601%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="border-bottom: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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;br/&gt;&#160;&lt;br/&gt;&#160;&lt;br/&gt;&#160;&lt;br/&gt;(in thousands)&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:9pt;font-weight:700;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="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:9pt;font-weight:700;line-height:100%"&gt;Quoted&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:700;line-height:100%"&gt;Prices in Active&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:700;line-height:100%"&gt;Markets for&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:700;line-height:100%"&gt;Identical Assets&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:700;line-height:100%"&gt;(Level 1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="9" style="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:9pt;font-weight:700;line-height:100%"&gt;&#160;&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:700;line-height:100%"&gt;Significant&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:700;line-height:100%"&gt;Other&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:700;line-height:100%"&gt;Observable&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:700;line-height:100%"&gt;Inputs&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:700;line-height:100%"&gt;(Level 2)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="6" style="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:9pt;font-weight:700;line-height:100%"&gt;&#160;&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:700;line-height:100%"&gt;&#160;&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:700;line-height:100%"&gt;Significant&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:700;line-height:100%"&gt;Unobservable&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:700;line-height:100%"&gt;Inputs&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:700;line-height:100%"&gt;(Level 3)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Mutual Funds:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;&#160;&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="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;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Mid Cap&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: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;637&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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 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;637&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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 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="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;/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:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;International&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;940&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;940&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;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;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;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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="background-color:#def3c0;padding: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;Common/Collective Trusts:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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="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:9pt;font-weight:400;line-height:100%"&gt;Wells Fargo Liability Driven Solution CIT I&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:9pt;font-weight:400;line-height:100%"&gt;7,782&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;7,782&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo Liability Driven Solution CIT II&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;7,026&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;7,026&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"&gt;&lt;/td&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: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;Wells Fargo BlackRock International Equity&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:9pt;font-weight:400;line-height:100%"&gt;616&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;616&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/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:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo/Causeway International Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;586&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;586&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo BlackRock Large Cap Growth Index Fund&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:9pt;font-weight:400;line-height:100%"&gt;950&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;950&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo BlackRock Large Cap Value Index Fund&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;968&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;968&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo Multi-Manager Small Cap&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:9pt;font-weight:400;line-height:100%"&gt;1,015&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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,015&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo BlackRock Russell 2000 Index Fund&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;332&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;332&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo BlackRock S&amp;amp;P Mid Cap Index Fund&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:9pt;font-weight:400;line-height:100%"&gt;419&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;419&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo/MFS Value CIT F&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;469&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;469&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo/T. Rowe Price Large-Cap Growth Managed CIT&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:9pt;font-weight:400;line-height:100%"&gt;465&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;465&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding: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;Wells Fargo/T. Rowe Price Equity Income Managed CIT&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;487&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;487&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding: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: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;Wells Fargo Voya Large Cap Growth CIT F&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:9pt;font-weight:400;line-height:100%"&gt;482&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;482&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" 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:9pt;font-weight:400;line-height:100%"&gt;Cash &amp;amp; Short-term Investments&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:9pt;font-weight:400;line-height:100%"&gt;497&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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;497&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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="2" style="background-color:#ffffff;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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;23,671&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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,074&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;21,597&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;border-bottom:2pt solid #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;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:FairValueAssetsMeasuredOnRecurringBasisTextBlock>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i717c4ae25fa44cca9308d5f5da3e076c_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzMtMy0xLTEtNjM4ODc_7591b82b-f7fc-45bd-a842-d39ca64df96c"
      unitRef="usd">512000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="icdeff85d9a4e4460a5e04ee26e4619d9_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzMtNi0xLTEtNjM4ODc_5ddcf21d-a98a-4f06-81d8-07109b3a9dd1"
      unitRef="usd">512000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i7bcfdde1d2ab476ca1face97be403c08_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzMtOS0xLTEtNjM4ODc_b2c4d58e-4d2b-4b28-9fbe-a6d7fcf9527d"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i2e2a67cc61a1453b91a2e7b385ffc756_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzMtMTItMS0xLTYzODg3_ce00557d-07d2-468f-8b38-4e82bb6028a5"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i7e5d559dc3fb470b8ce236f1e3326f6e_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzUtMy0xLTEtNjM4ODc_7fa80617-30aa-4999-9449-e4549558c0ac"
      unitRef="usd">743000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i17f2ef5d2bc0439aad7b784c1bd8f92b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzUtNi0xLTEtNjM4ODc_c0c4c742-cf2c-4f2e-9619-3bc52d97ac37"
      unitRef="usd">743000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i4dc44a40978b47deb5bf75f47c6879f6_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzUtOS0xLTEtNjM4ODc_b7a61112-8afb-4b04-be63-021dfa9d5dce"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ib597f35825274befb83d1eae8312e811_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzUtMTItMS0xLTYzODg3_dec980ed-46c5-4a4c-9c8e-4ab3e716befd"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i971843612b4444378d4578c27098e323_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzgtMy0xLTEtNjM4ODc_d31fd366-71d9-4b33-8eef-c8b4803aece5"
      unitRef="usd">7815000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i0f139e029a4a40b494b1166a43cef3ee_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzgtNi0xLTEtNjM4ODc_e5ab692c-ee03-47b8-b1fb-6aa08dbde83f"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i8fb804c5d600424d99eb72be0c8a5b59_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzgtOS0xLTEtNjM4ODc_a321ad1c-c22b-4d0c-b62f-4f1aea7a7e4f"
      unitRef="usd">7815000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ifcdac7dd37c74ab5889b9f9d01217713_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzgtMTItMS0xLTYzODg3_c4a6d8b2-0b56-49ac-9777-b3659b78690e"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="iec1e7c4f52704e7da1f7c6cf4c4d7d62_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzktMy0xLTEtNjM4ODc_7a2cb482-550f-41d4-b2a2-c1f8cc264771"
      unitRef="usd">3550000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ic29f1632958d477b8f1e10e684ff8483_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzktNi0xLTEtNjM4ODc_017500f8-8ac9-460a-a0e8-edff469635b3"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i946e625a959742208f8405d66251235f_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzktOS0xLTEtNjM4ODc_975b0eae-079a-420d-8bb5-c096d14394ed"
      unitRef="usd">3550000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i09714fa45c9744278086938bab8108ae_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzktMTItMS0xLTYzODg3_ce65449e-e78c-4e6c-96db-a02588dd4a6f"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i49454c83e1dd4a15bd286665b6172f09_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEwLTMtMS0xLTYzODg3_c1b22c9f-a33b-4c16-a5ba-a7df4f866cc7"
      unitRef="usd">488000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i6deb7f4f37f24982a39c08cf0bbe04ec_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEwLTYtMS0xLTYzODg3_bb29c81b-ba28-4cf7-ae59-23b4749deb23"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="if70c161cc4ad4e6abc26a4e751891ee6_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEwLTktMS0xLTYzODg3_3b5a1198-7761-4061-91db-6a36d1efe25b"
      unitRef="usd">488000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i3c88509b92544ba08854dde611a0a0f1_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEwLTEyLTEtMS02Mzg4Nw_b97190f5-40d0-41d0-9206-d39ab001cdcd"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ia2aee32b51e346ddab38ffaa0211827e_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEyLTMtMS0xLTYzODg3_989e036c-be56-4709-b6d0-911e03516748"
      unitRef="usd">464000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="idcc624feeeef475db835d65f85ea3c8b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEyLTYtMS0xLTYzODg3_3aa52424-d313-489f-85a9-b751b78a1f7e"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i76627f49e9d6466396949562e5951519_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEyLTktMS0xLTYzODg3_33ec3ada-1ace-4f7b-891b-9cb0d32790b3"
      unitRef="usd">464000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ia0d76ce3ece041f79491d2d5cbafcd64_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEyLTEyLTEtMS02Mzg4Nw_3411697d-dad8-4f86-83f9-737963d39861"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ia0356ae226af468a976230d65234e8d4_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEzLTMtMS0xLTYzODg3_f20ae4ed-8fac-4d8e-935b-e507bbd97f75"
      unitRef="usd">724000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i9e5e7128fefd4808a7a01b152dbde9a4_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEzLTYtMS0xLTYzODg3_f7672d72-ecb0-42dd-b123-c2e6cd66387a"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i5a70c21a1fbc4d4b9cd4e9d9595f7adf_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEzLTktMS0xLTYzODg3_a9ffbbee-3cb3-4f83-8005-738eb8d7fe8d"
      unitRef="usd">724000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i8cce23c346084618907320d801b9e400_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzEzLTEyLTEtMS02Mzg4Nw_35863dfa-83b6-4d75-82b3-7eeb32e91d86"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i43d1dbb904164762bfde5595aa063532_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE0LTMtMS0xLTYzODg3_42592d32-92d8-406d-972f-7baf5293c05f"
      unitRef="usd">744000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="id7422f04eae44054bfbce6ca8038d09f_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE0LTYtMS0xLTYzODg3_4c85e4b8-90e3-4e7c-b8c2-f9b038ed5e7a"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ic7d5c518d9594876af64ab3126511b0a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE0LTktMS0xLTYzODg3_01da8ab7-0ff7-4ea3-a956-10275bbc16a9"
      unitRef="usd">744000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i356b27b1b49b42638d998edc758500ca_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE0LTEyLTEtMS02Mzg4Nw_813ea613-03bf-49b9-8ed1-d6ab5a46a6f5"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="id51a28a4c1164b42bc43a4db197c43fe_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE1LTMtMS0xLTYzODg3_70e617af-da1a-4790-9ada-ab25819f89cd"
      unitRef="usd">785000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i11f335c35bd048ad95f49bf90cd777f5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE1LTYtMS0xLTYzODg3_39f0f97f-f392-4fc3-aa92-f9670bb37c08"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ibbe83b3a4b1a40cb964629fe1d4389b9_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE1LTktMS0xLTYzODg3_c1af7369-27ed-4e8a-b4b0-ed44367461d5"
      unitRef="usd">785000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i7413e9e2f39a40669d931c15c35251e5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE1LTEyLTEtMS02Mzg4Nw_0c8a6a74-5d6f-453a-8915-3211b7cc3782"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ie0fca9ec3d444fb9b6e66ea2a9054de3_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE2LTMtMS0xLTYzODg3_f39eacbc-a538-4340-a217-779f538b022b"
      unitRef="usd">261000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i9432d45a9e9e4191b54709416e87108b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE2LTYtMS0xLTYzODg3_6b8cda50-7bd8-404e-a7b2-f4b901c592aa"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="iafff413bcb2240cb8cd16b84d0876287_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE2LTktMS0xLTYzODg3_014e193f-e8a4-472c-895b-06f1a587fecb"
      unitRef="usd">261000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i5e101051344e4b1c808528e1db5e08fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE2LTEyLTEtMS02Mzg4Nw_2cfbd88c-a3da-48b9-ae18-5c5bceeb97a9"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i0adc6834436f4371b3cdd5696abaa8cd_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE3LTMtMS0xLTYzODg3_d677de46-023d-4fc0-b0ab-16c681cebdf6"
      unitRef="usd">320000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i5ffb7546a8494d55939a3a4a32690ccf_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE3LTYtMS0xLTYzODg3_36489096-694f-4279-b0b4-cfd76ded22e4"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ic2becb6e8fc948c1b31183516406a459_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE3LTktMS0xLTYzODg3_d000c469-4f79-4b76-82e8-49c8b991c836"
      unitRef="usd">320000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i123930823cd8488e838f40bc3f3e1de7_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE3LTEyLTEtMS02Mzg4Nw_83afaaed-29d8-4bb2-a442-dec4f7499766"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i4cb19762171d45a0ad88bea28dd77754_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE4LTMtMS0xLTYzODg3_976a04e2-a0f5-4d8e-80b9-a056840c9369"
      unitRef="usd">359000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i6d4f08d5bd87435e965b581fc8ddf576_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE4LTYtMS0xLTYzODg3_6ae86bdd-8fdb-4b81-ba4d-fd15342cd841"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i1ea986161ff549f4becf2b6e3b344053_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE4LTktMS0xLTYzODg3_17c63ecb-1fa9-49ed-a851-ff1e8a3038b2"
      unitRef="usd">359000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i45cd8b1f870e40358934e74c5d538a77_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE4LTEyLTEtMS02Mzg4Nw_87096c34-dddb-4969-9009-d9dab488e990"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="icb70ed98ac1149039a9bd3f56114b3c7_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE5LTMtMS0xLTYzODg3_cecfb08c-bbac-4e06-98bc-6df7c0fb26d9"
      unitRef="usd">359000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ibe717bc583594521a2ec81bd967b0e7c_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE5LTYtMS0xLTYzODg3_7aea10c6-e9de-4f66-bf21-fd32cad74d76"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i7f157b168b604ab888264209d171f418_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE5LTktMS0xLTYzODg3_e2dc5996-fcfb-42bb-8c4c-b5c0e397c0f7"
      unitRef="usd">359000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ic50e7308c6c642d2b2906d70f4c41031_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzE5LTEyLTEtMS02Mzg4Nw_c2be5a0a-8dc3-4afc-af57-3554dd42da9b"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i6432e734c9bb4c748ed8b984af5c19b3_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIwLTMtMS0xLTYzODg3_4229b47f-feea-4410-95dc-aa0f593ffd95"
      unitRef="usd">356000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i7eab14931758499c86fc981d8534c0d2_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIwLTYtMS0xLTYzODg3_a6436cba-bb28-49e0-a355-05aaea40ce78"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i0efb16e6acb94bcc822d3f6f17ca38cc_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIwLTktMS0xLTYzODg3_c29ae94f-2e5d-49bf-8b68-212a7be830ea"
      unitRef="usd">356000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i35e0ecc32ef34d9fac9974d96205aab2_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIwLTEyLTEtMS02Mzg4Nw_f58b7f5b-3c98-460c-81df-29c1963cca4c"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i42e85a08729b4b9e9936579f4f8a0368_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIxLTMtMS0xLTYzODg3_626d62b8-9805-49f4-b652-333898f8ec0a"
      unitRef="usd">357000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i22991817b589465c988eb404d93742d9_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIxLTYtMS0xLTYzODg3_615cb97b-28ba-4f07-9362-aceb20e6818d"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i5d8938ffd2a442588aa9e05718c7a497_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIxLTktMS0xLTYzODg3_eb5e7bef-866e-4b93-9233-2f285170279f"
      unitRef="usd">357000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i92b85df410eb4e1fbfe26dec8b1bbb80_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIxLTEyLTEtMS02Mzg4Nw_13938dee-e82c-4c01-8ad2-98a34f1b15d2"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i624fe9893bb340f7b9942ac31a247138_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIzLTMtMS0xLTYzODg3_3d55d2aa-4014-4449-9353-75b5d32b08d9"
      unitRef="usd">432000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i664cd5f98f364c5baf9f5761fc560d93_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIzLTYtMS0xLTYzODg3_07b67aec-f309-4225-95d4-4b40a56dba9b"
      unitRef="usd">432000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ib4f9459255a14b9fbb422a8f1f9cbb4e_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIzLTktMS0xLTYzODg3_0e68715b-39a5-415a-950d-3ca1abc78b1b"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ia858cb8acd9842f985f6c945ba0aadf2_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzIzLTEyLTEtMS02Mzg4Nw_9a12d9fa-b4f0-487e-b72e-b3195dca3fb0"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzI0LTMtMS0xLTYzODg3_b86f3250-b876-4e66-a6c9-18043e9d296b"
      unitRef="usd">18269000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ifa59e56462b747ddaf8ef3be4a751883_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzI0LTYtMS0xLTYzODg3_e935db44-3f10-4acf-b848-715df1188ce1"
      unitRef="usd">1687000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ia31027b4f0e0473889357f269d8059f6_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzI0LTktMS0xLTYzODg3_bb672f69-9e1f-4d9f-90c7-5bdc30503d69"
      unitRef="usd">16582000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i65fb64b53ac347dfbefe473e635b88d1_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZToxYzc3NjAzZjEzNmI0MzlhOTE5YWRmN2FlNjM0MmQxOC90YWJsZXJhbmdlOjFjNzc2MDNmMTM2YjQzOWE5MTlhZGY3YWU2MzQyZDE4XzI0LTEyLTEtMS02Mzg4Nw_242dc5fc-2b61-4f0c-9dff-e209ecdd60f5"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i52a8204da7b94186bedcf26a1c8e2cce_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzMtMy0xLTEtNjM4ODc_35c34791-44a2-489b-bf33-2d105e951ffc"
      unitRef="usd">637000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i9f9353766d1f44edb266fab4456f5371_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzMtNi0xLTEtNjM4ODc_e9c99921-6c98-4f89-8b5c-63969e329603"
      unitRef="usd">637000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i89d34b46d2424ceeb6120441cfc54cc2_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzMtOS0xLTEtNjM4ODc_ee45acbf-4693-4aed-9f33-ee3a87827994"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ifb0af5063dc548b0a8b1590b99b28194_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzMtMTItMS0xLTYzODg3_58f56557-d62c-4ec8-a141-2f867efc0e98"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="iaffd3941938a40d996cd8fd72f0edefd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzUtMy0xLTEtNjM4ODc_bff4e18f-35e6-4d60-b5fd-8d9bac538a85"
      unitRef="usd">940000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i44c9c02c4b1e480bb430af91846ceda4_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzUtNi0xLTEtNjM4ODc_cd09d2ed-b0c1-4c80-b6fd-d3734e6cbfda"
      unitRef="usd">940000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ib2c563f6493944358bc2a1953334b52b_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzUtOS0xLTEtNjM4ODc_c3f5163b-ffb5-455f-a7e1-0183d3bf147f"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i12da2b7deb3547b88815a6f6bfb98513_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzUtMTItMS0xLTYzODg3_6bd21bdb-5c5a-468b-a46e-4ed92fb8c332"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ia722ba49d783476685ea143590cb6c65_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzgtMy0xLTEtNjM4ODc_8bd08165-d39b-4d66-bb7f-3cc059c2e66a"
      unitRef="usd">7782000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="idf3ce4cf4e564e04828187933dee46a7_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzgtNi0xLTEtNjM4ODc_4a05ea21-db8e-4e62-b185-a5aadeb75d4c"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i4da8e9917e44416b9288ab1d168417ed_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzgtOS0xLTEtNjM4ODc_59290503-66d6-4502-9bed-db5b258591a2"
      unitRef="usd">7782000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i71958a9a83f947ea9e8ce06c90dc71ae_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzgtMTItMS0xLTYzODg3_59620ab3-313f-4962-876e-2c5efc2b3b53"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i55b7d5c6c4794483b8bc04a672aa9794_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzktMy0xLTEtODEzMDA_af1658d0-a722-49e7-b528-eb75e959affe"
      unitRef="usd">7026000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ib5a10484730344d196dbac086113cef3_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzktNi0xLTEtODEzMDA_b6673ffc-1183-418c-a158-25d592f5cf52"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i7ba63e2a3f15410f98611106dfa85749_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzktOS0xLTEtODEwMzA_5b72333b-1c71-45ba-ba8b-902ef300d840"
      unitRef="usd">7026000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="id41367d6d23c4aed857b87c87a87e966_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzktMTItMS0xLTgxMzAw_9779cc1e-b279-4510-9537-259843a207f0"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ibf0eaaa469364e438e4c2c90480cfafd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzktMy0xLTEtNjM4ODc_87d3d1a6-539e-4081-9617-94a3eeb74e45"
      unitRef="usd">616000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="icd628f307f6c4f09b6dc7dadae3a7b76_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzktNi0xLTEtNjM4ODc_65243a41-e3f6-4ffe-a49c-b5719af16012"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i92640efca9474f738386c749813ce4e7_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzktOS0xLTEtNjM4ODc_05baaae0-3751-41a8-ac4e-2f2ad0693ee5"
      unitRef="usd">616000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i985f41572bd8411fbae9a6c39ce09710_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzktMTItMS0xLTYzODg3_3073400e-364c-400c-bfa9-493d011e7bf7"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i2b1afabb7d6043c7acac69a09be8202d_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzExLTMtMS0xLTYzODg3_bd5d5073-1479-4361-92ca-85a4284a4154"
      unitRef="usd">586000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ief613a9797ba499a90f7c0db92f2ce68_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzExLTYtMS0xLTYzODg3_2766dab4-b608-4caf-93b7-507cce69e832"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ic5c27146979e4ef9be50f4eba2af5be5_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzExLTktMS0xLTYzODg3_74949a5f-284e-4ce0-82aa-9582bd22bb4c"
      unitRef="usd">586000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i474d23e8a81945d9886590fb204080c0_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzExLTEyLTEtMS02Mzg4Nw_5dfcf087-60c1-4f37-92ce-ff07013d5ebf"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i11537fc0dffb40a18449327b5ef7f16e_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzEyLTMtMS0xLTYzODg3_98458481-e700-4b7f-b0c1-ae0c38a8b99e"
      unitRef="usd">950000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i8b3f2b9fb9354a1caf00f74563334cc6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzEyLTYtMS0xLTYzODg3_1ce2718c-f7fe-4b16-9ecc-5b9ff5bac330"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i1b0f1051cbe14b27a274bcf0f4ea6d22_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzEyLTktMS0xLTYzODg3_2a9a105c-c077-4bf4-8ed9-00c4c7f0a555"
      unitRef="usd">950000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i84352f8927914e57ad97592295603b0d_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzEyLTEyLTEtMS02Mzg4Nw_d11ba7c7-56f9-4767-9199-a585da14bf7c"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i01bc55dc32dd4ede8728600610903cf8_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzEzLTMtMS0xLTYzODg3_a41b9316-c523-44c7-b7c3-69df8e23ce20"
      unitRef="usd">968000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i57e286ef02af480d8743e63aa262595c_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzEzLTYtMS0xLTYzODg3_ff2de669-35e9-4d53-8412-0d64a3754e48"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="iac060d40a1124df79664d97528f314d4_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzEzLTktMS0xLTYzODg3_af234ed8-28e3-40dd-9b3a-d3fd764cdc6c"
      unitRef="usd">968000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i1e5e14dac53045a8957d2a963cceef80_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzEzLTEyLTEtMS02Mzg4Nw_e5a090ef-621c-49ee-ace7-0942c4014cc4"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="iaa204fa8c13840f9ac86e795ecf9bffb_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE0LTMtMS0xLTYzODg3_3ba28ccf-2bbb-4546-b8d8-b747bca908e7"
      unitRef="usd">1015000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ie57ef8f03f86451b90f42dcfd1aaa2d3_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE0LTYtMS0xLTYzODg3_5965d1bd-7254-41ba-9617-44ffb00baaf9"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i36affe6e249c476598d4a73d04c0c114_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE0LTktMS0xLTYzODg3_ef6b9a22-ab1b-45cb-b436-685970c5edd0"
      unitRef="usd">1015000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i9618475f30bf45e0970dcc5782b044ed_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE0LTEyLTEtMS02Mzg4Nw_f96f208f-1100-43f1-a7ce-1241276bcc17"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ieb7d8adee16741d883e98a92493e6a91_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE1LTMtMS0xLTYzODg3_d3106d36-2d16-4851-a1c2-bc699621672c"
      unitRef="usd">332000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i0d87e1e3a66a4e32a364fcf2e77389b6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE1LTYtMS0xLTYzODg3_2c13866e-08a3-4c03-b150-3b4b2b957547"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i30cdc3de298b42528f34e651ae2386d1_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE1LTktMS0xLTYzODg3_d00d3269-5f1a-485f-92d6-4f4afcb6cd17"
      unitRef="usd">332000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i61f958873ed04b5aa29b3ffa6e371cde_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE1LTEyLTEtMS02Mzg4Nw_18874b6a-d7c6-41dd-95c5-eae0f110feb1"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i8abbc51f968d43709cebc0fe5e11c77d_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE2LTMtMS0xLTYzODg3_cb172fef-e8f7-465f-847e-517af6d214ae"
      unitRef="usd">419000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="iabd7bcf621304c96b18970895eca7674_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE2LTYtMS0xLTYzODg3_2d7314fb-4e2b-409e-a1e2-a920a90f7536"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ib51767f59e124d79b2405724fe6182c0_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE2LTktMS0xLTYzODg3_6db8843b-509a-473e-8fde-f7ac8812d270"
      unitRef="usd">419000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i4540773b6bdc450ab7670c353e71bd24_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE2LTEyLTEtMS02Mzg4Nw_15c43b66-d1d0-43a5-9753-19c328993fb8"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ie89ca23203234a5383be35c58800b3c9_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE3LTMtMS0xLTYzODg3_2ef7f57b-7c34-4381-8e35-bc98b10499fd"
      unitRef="usd">469000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ie02c44b94ad947cc9e3caaf03e8cd79d_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE3LTYtMS0xLTYzODg3_3c984a1e-bd2d-4a30-8454-000acf501519"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i92b124c33ade4aa085b770b10ae6b7d4_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE3LTktMS0xLTYzODg3_0ee1c5fd-2a09-466c-9230-7fb1e8abc361"
      unitRef="usd">469000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ia3290477588b42ac8d96d68467da2638_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE3LTEyLTEtMS02Mzg4Nw_3d31a5c8-9329-4d7f-bb5d-9e0551546f3f"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i0973b74189624337a8282ede68198c13_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE4LTMtMS0xLTYzODg3_d120e8ac-c07b-41c3-8deb-1ca9e27fc64b"
      unitRef="usd">465000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="id37e990b5b4442f5990f033d0abda372_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE4LTYtMS0xLTYzODg3_703d7d87-1c05-4322-acaa-289f99ce4d9b"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ia003aefa97644225b609cf69cffcb73e_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE4LTktMS0xLTYzODg3_2b445def-065e-4d36-97b0-87643a26d16d"
      unitRef="usd">465000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i99e3c828d28042909e8f0610df7209ce_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE4LTEyLTEtMS02Mzg4Nw_230c7e2d-7eda-4449-8156-f34011be966d"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i1e06937bd5cf441f92815ced806d7b19_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE5LTMtMS0xLTYzODg3_d34c7274-f03c-494f-bd2a-a1498250c808"
      unitRef="usd">487000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="if30a6b992d2b436e9abf74a084382b62_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE5LTYtMS0xLTYzODg3_b34d2740-b5fc-4511-bc07-4e5160ece760"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i489199d7264b48f4a9304b71e2d9194e_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE5LTktMS0xLTYzODg3_804f75a3-2d8f-44e8-a93f-7bf2203b865d"
      unitRef="usd">487000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i5ae7dcde876c4dd7b148277937dbbe41_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzE5LTEyLTEtMS02Mzg4Nw_aaf05d5f-317b-4c71-9ba5-e4fcf4eaa3ac"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i69a53ea75c044ed0981595e1db730fac_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIwLTMtMS0xLTYzODg3_2fba1c9f-bac4-4e52-b1b3-dbf2089b5806"
      unitRef="usd">482000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i80aedcf42fa8458eab165a17fa35837f_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIwLTYtMS0xLTYzODg3_e9ede7ff-7914-42b3-bc3e-94df0f07f58d"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i8bee2e3fa22a4c5f946447611476c208_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIwLTktMS0xLTYzODg3_343e879a-9a12-40ac-bda9-b8da2441274d"
      unitRef="usd">482000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="iedcddcb5f3d245ef9c3454670c5c7546_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIwLTEyLTEtMS02Mzg4Nw_240db107-2ad3-459c-b73e-b84df23aef9c"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ifdf749fb72bd4479853fd03b81f5452e_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIyLTMtMS0xLTYzODg3_eb1571e8-2f01-451c-adc6-f7dc56442488"
      unitRef="usd">497000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="if1b4303290284d47b16fd65e0e9c4d11_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIyLTYtMS0xLTYzODg3_f8d9ed9e-9e7f-4d94-a069-bc2ae608d602"
      unitRef="usd">497000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ieb27dc5461b54c31821de5f7e266e16a_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIyLTktMS0xLTYzODg3_f7e27ae4-dcf4-4636-8751-6d020524894a"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i5765b80e33a24b9b942a9a75df443860_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIyLTEyLTEtMS02Mzg4Nw_9fbc2c41-7426-4c76-80ec-ff29d67e4afd"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIzLTMtMS0xLTYzODg3_11cfcf0a-3908-4a5e-9cdf-171efd7eb7bf"
      unitRef="usd">23671000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="iafbec1421c62426cb0104c9522fa37c0_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIzLTYtMS0xLTYzODg3_cd6bf7c8-6632-4625-ab49-8d518a9986a7"
      unitRef="usd">2074000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="id4db507670fd4d0681e823b25f1b4c2b_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIzLTktMS0xLTYzODg3_bb2b31ff-084b-40b3-938c-3203b7e5f2a9"
      unitRef="usd">21597000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="ic0789b2d2b3a4bafa30f47ca67d0e176_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3ZGIzNjc2OTViM2I0YjQ4YmI5MmM2MmMxODFjZjY1OS90YWJsZXJhbmdlOjdkYjM2NzY5NWIzYjRiNDhiYjkyYzYyYzE4MWNmNjU5XzIzLTEyLTEtMS02Mzg4Nw_6efaffd3-a625-4219-afe3-ef3e9856ee30"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:ScheduleOfExpectedBenefitPaymentsTableTextBlock
      contextRef="i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDMw_9cddf655-a00f-4799-afd4-d5cf844f811b">The following table illustrates the estimated pension benefit payments that are projected to be paid:&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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:83.402%"/&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 style="width:0.1%"/&gt;&lt;td style="width:2.577%"/&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:2.726%"/&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="12" 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;Projected Future Benefit Payments&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;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:9pt;font-weight:700;line-height:100%"&gt;Employees&#x2019;&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:700;line-height:100%"&gt;Retirement Plan&lt;/span&gt;&lt;/div&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:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2023&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="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,275&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,304&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&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="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2026&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="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,312&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2027&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="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,306&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Years 2028 through 2032&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="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,209&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfExpectedBenefitPaymentsTableTextBlock>
    <us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths
      contextRef="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplYzFiN2U4OWY4YzE0MGY1ODQyODFhYjAxODhkNDM2OS90YWJsZXJhbmdlOmVjMWI3ZTg5ZjhjMTQwZjU4NDI4MWFiMDE4OGQ0MzY5XzItNS0xLTEtNjM4ODc_28f01a2c-bbec-4a1a-9f12-56d980809d32"
      unitRef="usd">1275000</us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths>
    <us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo
      contextRef="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplYzFiN2U4OWY4YzE0MGY1ODQyODFhYjAxODhkNDM2OS90YWJsZXJhbmdlOmVjMWI3ZTg5ZjhjMTQwZjU4NDI4MWFiMDE4OGQ0MzY5XzMtNS0xLTEtNjM4ODc_57f537a6-68f8-4ca9-9a33-89513070d7ad"
      unitRef="usd">1304000</us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo>
    <us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree
      contextRef="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplYzFiN2U4OWY4YzE0MGY1ODQyODFhYjAxODhkNDM2OS90YWJsZXJhbmdlOmVjMWI3ZTg5ZjhjMTQwZjU4NDI4MWFiMDE4OGQ0MzY5XzQtNS0xLTEtNjM4ODc_532bf718-d623-4d39-a3aa-0e049939e4c8"
      unitRef="usd">1315000</us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree>
    <us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour
      contextRef="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplYzFiN2U4OWY4YzE0MGY1ODQyODFhYjAxODhkNDM2OS90YWJsZXJhbmdlOmVjMWI3ZTg5ZjhjMTQwZjU4NDI4MWFiMDE4OGQ0MzY5XzUtNS0xLTEtNjM4ODc_9fa8b9d1-a16c-495b-9691-395f4abe2f8d"
      unitRef="usd">1312000</us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour>
    <us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive
      contextRef="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplYzFiN2U4OWY4YzE0MGY1ODQyODFhYjAxODhkNDM2OS90YWJsZXJhbmdlOmVjMWI3ZTg5ZjhjMTQwZjU4NDI4MWFiMDE4OGQ0MzY5XzYtNS0xLTEtNjM4ODc_9f747f97-c72e-41db-a5a5-ecd3c947d86a"
      unitRef="usd">1306000</us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive>
    <us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter
      contextRef="ib2d3d6c4caba470f9bbe23e7c7147456_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTplYzFiN2U4OWY4YzE0MGY1ODQyODFhYjAxODhkNDM2OS90YWJsZXJhbmdlOmVjMWI3ZTg5ZjhjMTQwZjU4NDI4MWFiMDE4OGQ0MzY5XzctNS0xLTEtNjM4ODc_c695dcc4-a2b4-456f-9314-903b0791c57a"
      unitRef="usd">6209000</us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter>
    <alg:DeferredCompensationArrangementRequisiteServicePeriod
      contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzcxMDE_02e77807-feda-4bed-a812-282f1e25eb27">P10Y</alg:DeferredCompensationArrangementRequisiteServicePeriod>
    <alg:PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption
      contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzcyMzA_a7840dd8-e5f8-49f8-a0c5-ab654b0b3816"
      unitRef="number">0.20</alg:PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption>
    <alg:DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit
      contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDMx_5d9f401c-c007-4e92-a450-15bf7a31837a">P3Y</alg:DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit>
    <alg:DeferredCompensationArrangementWithIndividualRetirementAge
      contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzczMzU_5f495b30-9080-4669-ab6d-4117a335a000">P65Y</alg:DeferredCompensationArrangementWithIndividualRetirementAge>
    <alg:DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl
      contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1Xzc1NTI_e01d1808-78a4-4f99-9248-10cbaa0e1071">P90D</alg:DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl>
    <alg:DeferredCompensationArrangementMaximumContractualTerm
      contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1Xzc4MzQ_6eb692ca-a845-42a7-aa62-6c7e7ecf0670">P15Y</alg:DeferredCompensationArrangementMaximumContractualTerm>
    <alg:DefinedBenefitPlanRetirementBenefitPercentage
      contextRef="i4790b17eb967429486396c862e87d4af_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1Xzg0OTc_fcd49d5b-bae3-48db-b565-ccffa575c446"
      unitRef="number">0.10</alg:DefinedBenefitPlanRetirementBenefitPercentage>
    <alg:DefinedBenefitPlanRetirementBenefitPercentage
      contextRef="i98f96f8dc89b435db15fd8d85c9d19b7_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1Xzg1MDM_4d71b9a8-b336-49ff-b5a0-787237544cf2"
      unitRef="number">0.20</alg:DefinedBenefitPlanRetirementBenefitPercentage>
    <us-gaap:ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDQz_2ce76b8e-6303-446f-b87a-5c21cc2ce2c2">&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The change in the Projected Benefit Obligation (PBO) as of December&#160;31, 2022 and 2021, is shown below:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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.128%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:3.724%"/&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:1.0%"/&gt;&lt;td style="width:2.993%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="15" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Reconciliation of Benefit Obligation&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;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;Year Ended December 31,&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&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="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:middle"&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Benefit obligation at January 1,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,326&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,160&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Service cost&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;284&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;369&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;278&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Liability actuarial loss (gain)&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(2,023)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;759&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Benefits paid&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(313)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(167)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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;/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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Benefit obligation at December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,552&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,326&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock>
    <us-gaap:DefinedBenefitPlanBenefitObligation
      contextRef="i61f12f9ea51146af82634ab866ad929b_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzMtMi0xLTEtNjM4ODc_2c0ba7e0-f233-467b-9d97-e1a77a9eba04"
      unitRef="usd">11326000</us-gaap:DefinedBenefitPlanBenefitObligation>
    <us-gaap:DefinedBenefitPlanBenefitObligation
      contextRef="i6706afd005d94786b0e5ab016edb25ca_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzMtNC0xLTEtNjM4ODc_8e27de7c-3773-40a5-adda-22b723d306c0"
      unitRef="usd">10160000</us-gaap:DefinedBenefitPlanBenefitObligation>
    <us-gaap:DefinedBenefitPlanServiceCost
      contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzQtMi0xLTEtNjM4ODc_89a87355-1c6d-4979-b076-694054995cf9"
      unitRef="usd">284000</us-gaap:DefinedBenefitPlanServiceCost>
    <us-gaap:DefinedBenefitPlanServiceCost
      contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzQtNC0xLTEtNjM4ODc_1417418f-a881-4ba4-98d2-fd931ec67ac5"
      unitRef="usd">369000</us-gaap:DefinedBenefitPlanServiceCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzUtMi0xLTEtNjM4ODc_934a7ea1-5011-40c9-9c09-ccd0cbc19e2d"
      unitRef="usd">278000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzUtNC0xLTEtNjM4ODc_3109369f-8dd0-4492-99a5-faadf4f066db"
      unitRef="usd">205000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanActuarialGainLoss
      contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzYtMi0xLTEtNjM4ODc_ded059b7-8a9f-4dda-8ac5-36c35b2ce557"
      unitRef="usd">2023000</us-gaap:DefinedBenefitPlanActuarialGainLoss>
    <us-gaap:DefinedBenefitPlanActuarialGainLoss
      contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzYtNC0xLTEtNjM4ODc_7f209b4a-a5d8-4f51-90d2-b3fbd84e4788"
      unitRef="usd">-759000</us-gaap:DefinedBenefitPlanActuarialGainLoss>
    <us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid
      contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzctMi0xLTEtNjM4ODc_6a62d41d-e579-44c1-91bc-10ff95205a32"
      unitRef="usd">313000</us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid>
    <us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid
      contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzctNC0xLTEtNjM4ODc_0ed95aa1-6316-4eee-a9b9-f3a7bbcba53e"
      unitRef="usd">167000</us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid>
    <us-gaap:DefinedBenefitPlanBenefitObligation
      contextRef="i514496c272c84c0391f1b5b1c3453db4_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzEwLTItMS0xLTYzODg3_07feb1b5-ca19-43f9-93a3-47d73083e533"
      unitRef="usd">9552000</us-gaap:DefinedBenefitPlanBenefitObligation>
    <us-gaap:DefinedBenefitPlanBenefitObligation
      contextRef="i61f12f9ea51146af82634ab866ad929b_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTpkNWJjYzIyMDMzYzc0YjY1OTRiZDhlNmJiYmQxY2FjNi90YWJsZXJhbmdlOmQ1YmNjMjIwMzNjNzRiNjU5NGJkOGU2YmJiZDFjYWM2XzEwLTQtMS0xLTYzODg3_9284b3bb-5cc3-4584-9d07-1d12d2564fa8"
      unitRef="usd">11326000</us-gaap:DefinedBenefitPlanBenefitObligation>
    <us-gaap:ScheduleOfNetBenefitCostsTableTextBlock
      contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDM0_15175dca-0149-4d7d-bc56-77a5e0958177">&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of net periodic pension expense were as follows:&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:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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:67.274%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.077%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.267%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.226%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="15" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Components of Net Periodic Benefit Cost&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;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;Year Ended December 31,&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&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="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:middle"&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Service cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;284&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;369&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest cost&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;278&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Amortization of prior service cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;420&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;413&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Amortization of net (gain)/loss&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;440&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;318&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net periodic benefit cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,422&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,305&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfNetBenefitCostsTableTextBlock>
    <us-gaap:DefinedBenefitPlanServiceCost
      contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3MDg5YzkxYzNjNDA0ZGFjOTQwOTY3NGVkZjY5Y2I4Zi90YWJsZXJhbmdlOjcwODljOTFjM2M0MDRkYWM5NDA5Njc0ZWRmNjljYjhmXzMtMi0xLTEtNjM4ODc_c9fc8c41-9947-425b-92c3-6c6762718e51"
      unitRef="usd">284000</us-gaap:DefinedBenefitPlanServiceCost>
    <us-gaap:DefinedBenefitPlanServiceCost
      contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3MDg5YzkxYzNjNDA0ZGFjOTQwOTY3NGVkZjY5Y2I4Zi90YWJsZXJhbmdlOjcwODljOTFjM2M0MDRkYWM5NDA5Njc0ZWRmNjljYjhmXzMtNC0xLTEtNjM4ODc_27246b83-2994-4685-ba2b-b22edf6d38bb"
      unitRef="usd">369000</us-gaap:DefinedBenefitPlanServiceCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3MDg5YzkxYzNjNDA0ZGFjOTQwOTY3NGVkZjY5Y2I4Zi90YWJsZXJhbmdlOjcwODljOTFjM2M0MDRkYWM5NDA5Njc0ZWRmNjljYjhmXzQtMi0xLTEtNjM4ODc_85b7a0aa-ff55-448c-8280-aa35955d273d"
      unitRef="usd">278000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3MDg5YzkxYzNjNDA0ZGFjOTQwOTY3NGVkZjY5Y2I4Zi90YWJsZXJhbmdlOjcwODljOTFjM2M0MDRkYWM5NDA5Njc0ZWRmNjljYjhmXzQtNC0xLTEtNjM4ODc_4256c8de-2a6c-4055-9d65-f1fe497e6aa0"
      unitRef="usd">205000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit
      contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3MDg5YzkxYzNjNDA0ZGFjOTQwOTY3NGVkZjY5Y2I4Zi90YWJsZXJhbmdlOjcwODljOTFjM2M0MDRkYWM5NDA5Njc0ZWRmNjljYjhmXzUtMi0xLTEtNjM4ODc_435839c6-0e45-4772-9e66-2579a8a3b451"
      unitRef="usd">420000</us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit>
    <us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit
      contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3MDg5YzkxYzNjNDA0ZGFjOTQwOTY3NGVkZjY5Y2I4Zi90YWJsZXJhbmdlOjcwODljOTFjM2M0MDRkYWM5NDA5Njc0ZWRmNjljYjhmXzUtNC0xLTEtNjM4ODc_6739cf7e-e703-4547-9655-de760a9741b4"
      unitRef="usd">413000</us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit>
    <us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses
      contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3MDg5YzkxYzNjNDA0ZGFjOTQwOTY3NGVkZjY5Y2I4Zi90YWJsZXJhbmdlOjcwODljOTFjM2M0MDRkYWM5NDA5Njc0ZWRmNjljYjhmXzYtMi0xLTEtNjM4ODc_570b967f-8841-4c40-8d89-8edbc696e97e"
      unitRef="usd">-440000</us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses>
    <us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses
      contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3MDg5YzkxYzNjNDA0ZGFjOTQwOTY3NGVkZjY5Y2I4Zi90YWJsZXJhbmdlOjcwODljOTFjM2M0MDRkYWM5NDA5Njc0ZWRmNjljYjhmXzYtNC0xLTEtNjM4ODc_58fe37a6-dd68-4b3d-b340-67e181be14a3"
      unitRef="usd">-318000</us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses>
    <us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost
      contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3MDg5YzkxYzNjNDA0ZGFjOTQwOTY3NGVkZjY5Y2I4Zi90YWJsZXJhbmdlOjcwODljOTFjM2M0MDRkYWM5NDA5Njc0ZWRmNjljYjhmXzgtMi0xLTEtNjM4ODc_a64ea3e7-1e13-46d9-8243-1d6cfdde5676"
      unitRef="usd">1422000</us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost>
    <us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost
      contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo3MDg5YzkxYzNjNDA0ZGFjOTQwOTY3NGVkZjY5Y2I4Zi90YWJsZXJhbmdlOjcwODljOTFjM2M0MDRkYWM5NDA5Njc0ZWRmNjljYjhmXzgtNC0xLTEtNjM4ODc_ca29bcb5-3caf-4ef1-9d08-12333c2703ee"
      unitRef="usd">1305000</us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax
      contextRef="i61d597b1e8ab48369c02c0e140ce9ea0_D20230101-20231231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1Xzg2OTc_2206be51-c812-43db-ace4-e975b95dc1eb"
      unitRef="usd">400000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax>
    <us-gaap:ScheduleOfAssumptionsUsedTableTextBlock
      contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDQ1_709d2021-095a-4fd2-b569-b88872d50021">&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In determining the projected benefit obligation and the net pension cost, we used the following significant weighted-average assumptions:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Assumptions used to determine benefit obligations at December 31:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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:70.976%"/&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.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.498%"/&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="12" 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;Rates to Determine Benefit Obligation&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&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="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5.05%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.50%&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:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Composite rate of compensation increase&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.00%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.00%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&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;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Assumptions used to determine net periodic benefit cost for the years ended December 31:&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:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&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:70.894%"/&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:12.536%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.537%"/&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="12" 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;Rates to Determine Net Periodic Benefit Cost&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&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="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.50%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.05%&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:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Composite rate of compensation increase&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.00%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.00%&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:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Long-term rate of return on plan assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;N/A&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;N/A&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAssumptionsUsedTableTextBlock>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate
      contextRef="i514496c272c84c0391f1b5b1c3453db4_I20221231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo1OTAyN2Y4YjE2NTU0MDMxODFiNTQwZDA5MDAxNjQ4NC90YWJsZXJhbmdlOjU5MDI3ZjhiMTY1NTQwMzE4MWI1NDBkMDkwMDE2NDg0XzItMi0xLTEtNjM4ODc_a6631aa0-4070-438f-acc0-e5d9ee4f4a53"
      unitRef="number">0.0505</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate
      contextRef="i61f12f9ea51146af82634ab866ad929b_I20211231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo1OTAyN2Y4YjE2NTU0MDMxODFiNTQwZDA5MDAxNjQ4NC90YWJsZXJhbmdlOjU5MDI3ZjhiMTY1NTQwMzE4MWI1NDBkMDkwMDE2NDg0XzItMy0xLTEtNjM4ODc_7101052f-8848-4677-b41d-b962b9483a07"
      unitRef="number">0.0250</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease
      contextRef="i514496c272c84c0391f1b5b1c3453db4_I20221231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo1OTAyN2Y4YjE2NTU0MDMxODFiNTQwZDA5MDAxNjQ4NC90YWJsZXJhbmdlOjU5MDI3ZjhiMTY1NTQwMzE4MWI1NDBkMDkwMDE2NDg0XzMtMi0xLTEtNjM4ODc_c8371397-dddf-40c8-9f25-f5cef50202ca"
      unitRef="number">0.0300</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease
      contextRef="i61f12f9ea51146af82634ab866ad929b_I20211231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTo1OTAyN2Y4YjE2NTU0MDMxODFiNTQwZDA5MDAxNjQ4NC90YWJsZXJhbmdlOjU5MDI3ZjhiMTY1NTQwMzE4MWI1NDBkMDkwMDE2NDg0XzMtMy0xLTEtNjM4ODc_e76caa0b-a6d2-4748-b7e5-b20df0b96be1"
      unitRef="number">0.0300</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate
      contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTowMjlkMWQ1MGZkNDE0ZjYyOTkwYTBkOTVlMGQwY2EyYS90YWJsZXJhbmdlOjAyOWQxZDUwZmQ0MTRmNjI5OTBhMGQ5NWUwZDBjYTJhXzItMi0xLTEtNjM4ODc_09ecabce-0385-498e-8f15-fa16f6d0c1e1"
      unitRef="number">0.0250</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate
      contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTowMjlkMWQ1MGZkNDE0ZjYyOTkwYTBkOTVlMGQwY2EyYS90YWJsZXJhbmdlOjAyOWQxZDUwZmQ0MTRmNjI5OTBhMGQ5NWUwZDBjYTJhXzItMy0xLTEtNjM4ODc_c13f14e8-f3a9-4f7b-8a55-0fde81f0baf6"
      unitRef="number">0.0205</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease
      contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTowMjlkMWQ1MGZkNDE0ZjYyOTkwYTBkOTVlMGQwY2EyYS90YWJsZXJhbmdlOjAyOWQxZDUwZmQ0MTRmNjI5OTBhMGQ5NWUwZDBjYTJhXzMtMi0xLTEtNjM4ODc_f7c4ed08-bd2e-4695-b042-37ec0863c10e"
      unitRef="number">0.0300</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease
      contextRef="i355748a7551549fcacaeaaf36fc30c2f_D20210101-20211231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTowMjlkMWQ1MGZkNDE0ZjYyOTkwYTBkOTVlMGQwY2EyYS90YWJsZXJhbmdlOjAyOWQxZDUwZmQ0MTRmNjI5OTBhMGQ5NWUwZDBjYTJhXzMtMy0xLTEtNjM4ODc_c1140905-48e0-409a-a141-d3564ff80fa6"
      unitRef="number">0.0300</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease>
    <us-gaap:ScheduleOfExpectedBenefitPaymentsTableTextBlock
      contextRef="if0dee57be3b64f2bb5023cd2e8b8c585_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwNDQ2_0f520654-2a31-4010-87c9-23af0a2f6836">&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Future estimated benefits expected to be paid from the plan over the next ten years as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="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:84.280%"/&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:1.0%"/&gt;&lt;td style="width:1.971%"/&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;/tr&gt;&lt;tr&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;Projected Future Benefit Payments&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;SERP&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;490&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;546&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;639&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;866&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;868&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Years 2028 through 2032&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,321&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;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;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfExpectedBenefitPaymentsTableTextBlock>
    <us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths
      contextRef="i514496c272c84c0391f1b5b1c3453db4_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTowOTQ2NjMyYWNlODI0YTBkOTk4MDY4YzliOGFhNTIzMS90YWJsZXJhbmdlOjA5NDY2MzJhY2U4MjRhMGQ5OTgwNjhjOWI4YWE1MjMxXzItMS0xLTEtNjM4ODc_a016e7fe-cb28-4ce1-865c-e617cffcfe99"
      unitRef="usd">490000</us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths>
    <us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo
      contextRef="i514496c272c84c0391f1b5b1c3453db4_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTowOTQ2NjMyYWNlODI0YTBkOTk4MDY4YzliOGFhNTIzMS90YWJsZXJhbmdlOjA5NDY2MzJhY2U4MjRhMGQ5OTgwNjhjOWI4YWE1MjMxXzMtMS0xLTEtNjM4ODc_891405ab-1f31-4c54-aeee-ca18b70fd52d"
      unitRef="usd">546000</us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo>
    <us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree
      contextRef="i514496c272c84c0391f1b5b1c3453db4_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTowOTQ2NjMyYWNlODI0YTBkOTk4MDY4YzliOGFhNTIzMS90YWJsZXJhbmdlOjA5NDY2MzJhY2U4MjRhMGQ5OTgwNjhjOWI4YWE1MjMxXzQtMS0xLTEtNjM4ODc_8282fe19-7cd6-4517-a152-91c1efd2c5df"
      unitRef="usd">639000</us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree>
    <us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour
      contextRef="i514496c272c84c0391f1b5b1c3453db4_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTowOTQ2NjMyYWNlODI0YTBkOTk4MDY4YzliOGFhNTIzMS90YWJsZXJhbmdlOjA5NDY2MzJhY2U4MjRhMGQ5OTgwNjhjOWI4YWE1MjMxXzUtMS0xLTEtNjM4ODc_7e03235e-8828-41a7-a832-cc262baabcb2"
      unitRef="usd">866000</us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour>
    <us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive
      contextRef="i514496c272c84c0391f1b5b1c3453db4_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTowOTQ2NjMyYWNlODI0YTBkOTk4MDY4YzliOGFhNTIzMS90YWJsZXJhbmdlOjA5NDY2MzJhY2U4MjRhMGQ5OTgwNjhjOWI4YWE1MjMxXzYtMS0xLTEtNjM4ODc_78999a80-5b37-446c-b699-4c205eb0edb6"
      unitRef="usd">868000</us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive>
    <us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter
      contextRef="i514496c272c84c0391f1b5b1c3453db4_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90YWJsZTowOTQ2NjMyYWNlODI0YTBkOTk4MDY4YzliOGFhNTIzMS90YWJsZXJhbmdlOjA5NDY2MzJhY2U4MjRhMGQ5OTgwNjhjOWI4YWE1MjMxXzctMS0xLTEtNjM4ODc_de38a60c-d0b6-43d2-a8a6-cce82f356b72"
      unitRef="usd">4321000</us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter>
    <alg:DefinedContributionPlanNumberOfPlans
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzkyOTE_7b766a33-3a48-450c-83b3-28684bdd522f"
      unitRef="plan">2</alg:DefinedContributionPlanNumberOfPlans>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount
      contextRef="ife90561e40e7493dbe5313f9928b8529_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1Xzk1MjE_d015d9d6-7e5b-40ef-a2d5-1ba72e7ee025"
      unitRef="usd">500000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount
      contextRef="iec9c1a66984b4509b11f082bf68d54c7_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1Xzk1MjU_6fdad626-e3cc-4806-84d7-0571f12c057f"
      unitRef="usd">500000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount
      contextRef="ia275391be9294e35bd152017c5b234d7_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1Xzk1MzM_f0cc8133-26ee-4700-a347-36d45789e761"
      unitRef="usd">400000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount
      contextRef="i196c2863265548e695dd64a326f541a3_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwMDE5_fc4f68ea-366a-4d87-8435-99e6eb116061"
      unitRef="usd">4200000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount
      contextRef="i922b59df66db420486a5036b9009eda9_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwMDIz_8566d849-ad0e-432c-a613-9bade6f382fd"
      unitRef="usd">3900000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount
      contextRef="iec05639d7c2a4aa8833a1eda02bb8312_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwMDMx_c7a4d140-33d9-46cb-8bab-34714eefc0e4"
      unitRef="usd">3500000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <alg:DefinedContributionPlanNumberOfSubsidiaries
      contextRef="ic670f3b25ae5483f8f49ea627f090dfa_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwMDUy_91ec3fdc-aaf9-458c-a5f3-b97ddf95a6be"
      unitRef="subsidiary">3</alg:DefinedContributionPlanNumberOfSubsidiaries>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent
      contextRef="i49af53d543f043af9e73b3649ab995cc_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwMjQ4_b6162982-2501-4530-954c-7215afaec20b"
      unitRef="number">0</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent
      contextRef="i71e423a8bdf44280bac5df20c2d8f3f7_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwMjU1_79bfe1d2-cc2d-4c48-b7fb-5fb451d93218"
      unitRef="number">0.10</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount
      contextRef="ic670f3b25ae5483f8f49ea627f090dfa_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwMzU5_59d2644f-ce8d-408a-9c7c-3a194ac0dc13"
      unitRef="usd">900000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount
      contextRef="iccc219e591e44500b8fdb5232de4b667_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwMzYz_d5265f3d-7d8b-4f97-89ae-01786bd90733"
      unitRef="usd">900000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount
      contextRef="iadb2db423fc143568086d3b6a3b94ea4_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzUvZnJhZzo2MWFkZjg1NTMxYTM0YzE2ODM3ODgwNjQyNjhlYWVhNS90ZXh0cmVnaW9uOjYxYWRmODU1MzFhMzRjMTY4Mzc4ODA2NDI2OGVhZWE1XzEwMzcx_b23999c9-6a9d-45a6-988c-b8ec71146a5d"
      unitRef="usd">900000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <us-gaap:SegmentReportingDisclosureTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90ZXh0cmVnaW9uOjIxYjBjOTdhZDljYzQ4ZmY5YmU5MmFlZWIwMTAzNTgyXzIwMTQ_d9280372-a1e6-44cc-a96c-3acc544fe80e">REVENUE AND SEGMENT REPORTING&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Disaggregation of revenue is presented in the tables below by product type. Management has determined that this level of disaggregation would be beneficial to users of the financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div&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.356%"/&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:1.992%"/&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:1.992%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.622%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="18" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Revenue by Product Type&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&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;2022&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;2021&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;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="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:9pt;font-weight:400;line-height:100%"&gt;Net Sales&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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:#def3c0;padding:2px 1pt 2px 13pt;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;Wholegoods&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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,185,885&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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,024,158&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;885,254&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:9pt;font-weight:400;line-height:100%"&gt;Parts&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;280,261&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;262,432&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;247,126&#160;&lt;/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:#def3c0;padding:2px 1pt 2px 13pt;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;Other *&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;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;47,470&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;47,633&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;31,086&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;Consolidated&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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:2pt solid #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,513,616&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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:2pt solid #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,334,223&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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:2pt solid #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,163,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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;span style="color:#000000;font-family:'Arial',sans-serif;font-size:7pt;font-weight:400;line-height:120%"&gt; &#160;&#160;&#160;&#160;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;*Other includes rental sales, extended warranty sales and service sales as it is considered immaterial.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&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 sales are principally within the United States, United Kingdom, France, Canada and Australia. The Company sells its products primarily through a network of independent dealers and distributors to governmental end-users, related independent contractors, as well as to the agricultural and commercial turf markets. Effective for the fourth quarter of 2021, the Company began reporting its operating results on the basis of the following segments, Vegetation Management Division and Industrial Equipment Division. Prior to the fourth quarter of 2021, the Company had been reporting its operating results on the basis of two segments which were the Industrial Division and Agricultural Division. The Vegetation Management Division includes all of the operations of the former Agricultural Division plus the mowing and forestry/tree care operations that were previously part of the former Industrial Division. The Industrial Equipment Division includes the Company&#x2019;s vocational truck business and other industrial operations such as excavators, vacuum trucks, street sweepers, and snow removal equipment. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has included a summary of the financial information by reporting segment. The following table presents the revenue and income from operations by reporting segment for the years ended December&#160;31, 2022, 2021, and 2020:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;&#160;&lt;/span&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:52.116%"/&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:1.0%"/&gt;&lt;td style="width:2.554%"/&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:1.0%"/&gt;&lt;td style="width:2.993%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.207%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&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;2022&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;2021&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;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Net Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vegetation Management&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;937,065&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;812,676&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;654,630&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Industrial 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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;576,551&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;521,547&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;508,836&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Consolidated&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,513,616&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,334,223&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,163,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Income from Operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vegetation Management&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;108,508&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;78,917&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;46,651&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Industrial Equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;40,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;38,021&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;48,134&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Consolidated&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;148,592&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;116,938&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;94,785&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&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 goodwill and total identifiable assets by reporting segment for the years ended December&#160;31, 2022 and 2021:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;&#160;&lt;/span&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:64.689%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.104%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.701%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.106%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&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="9" 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;December 31,&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:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&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="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&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;/tr&gt;&lt;tr&gt;&lt;td colspan="12" style="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:9pt;font-weight:700;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vegetation Management&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;127,562&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;132,963&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Industrial 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:9pt;font-weight:400;line-height:100%"&gt;68,296&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;69,443&#160;&lt;/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:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Consolidated&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;195,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;202,406&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;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;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Identifiable Assets &lt;/span&gt;&lt;/td&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vegetation Management&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: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;866,974&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 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;789,838&#160;&lt;/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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Industrial Equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;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;441,534&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;415,904&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;Consolidated&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;1,308,508&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;1,205,742&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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:SegmentReportingDisclosureTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90ZXh0cmVnaW9uOjIxYjBjOTdhZDljYzQ4ZmY5YmU5MmFlZWIwMTAzNTgyXzIwMTc_824ea8e9-6998-4ab4-93ed-88815ba888be">Management has determined that this level of disaggregation would be beneficial to users of the financial statements.&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.356%"/&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:1.992%"/&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:1.992%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.622%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="18" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Revenue by Product Type&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&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;2022&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;2021&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;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="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:9pt;font-weight:400;line-height:100%"&gt;Net Sales&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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:#def3c0;padding:2px 1pt 2px 13pt;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;Wholegoods&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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,185,885&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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,024,158&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;885,254&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:9pt;font-weight:400;line-height:100%"&gt;Parts&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;280,261&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;262,432&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;247,126&#160;&lt;/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:#def3c0;padding:2px 1pt 2px 13pt;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;Other *&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;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;47,470&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;47,633&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;31,086&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;Consolidated&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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:2pt solid #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,513,616&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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:2pt solid #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,334,223&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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:2pt solid #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,163,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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;span style="color:#000000;font-family:'Arial',sans-serif;font-size:7pt;font-weight:400;line-height:120%"&gt; &#160;&#160;&#160;&#160;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;*Other includes rental sales, extended warranty sales and service sales as it is considered immaterial.&lt;/span&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i273bea94087a4a249fb082e3b2436a8c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzQtMS0xLTEtNjM4ODc_a619bd19-c23b-49a4-87ac-cc5093b06a13"
      unitRef="usd">1185885000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i152b3b0f333e4a34974ca0723f6f9128_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzQtMy0xLTEtNjM4ODc_188f49bf-789c-48c8-b806-8e492088758c"
      unitRef="usd">1024158000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i332689bfdab040e981db033ee4b0e436_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzQtNS0xLTEtNjM4ODc_51c92145-fdf1-4d13-af63-dca739b36c2b"
      unitRef="usd">885254000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i72a1ba6068504c79a2fd7f8558bca6f2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzUtMS0xLTEtNjM4ODc_ae410e1f-8fe7-4a4e-929c-d36eb779d7e0"
      unitRef="usd">280261000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i16ebbf0c79d74751ab10b853e6c9688a_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzUtMy0xLTEtNjM4ODc_cabc6223-4b57-408c-9a6c-f4fa750cbd06"
      unitRef="usd">262432000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id0ac0cc4253a48669df79c10c0160e35_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzUtNS0xLTEtNjM4ODc_5b3d4cd6-a769-4fea-b084-c1d50bda2b8d"
      unitRef="usd">247126000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i08aa06cdfd1b4f03b5aba2ec7f94c6be_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzYtMS0xLTEtNjM4ODc_8bbb5bb2-3f3f-471a-b27f-a7b0d626f758"
      unitRef="usd">47470000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0a8c7e5368d6478b995b9e33da457c37_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzYtMy0xLTEtNjM4ODc_bf8d9713-4f85-46c3-9b74-da5d1ace1e5d"
      unitRef="usd">47633000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ifcdfad41cf02439ca81c141d332993bb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzYtNS0xLTEtNjM4ODc_f37da785-214a-4e71-b09b-ad3f673b6afc"
      unitRef="usd">31086000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzctMS0xLTEtNjM4ODc_14e6f484-148f-40d2-be32-f129d16ef4bf"
      unitRef="usd">1513616000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzctMy0xLTEtNjM4ODc_9ab6f770-b4a0-4fcf-8325-7ff8f5023f17"
      unitRef="usd">1334223000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTpmNGJlZTc1ODFhZDM0MDI1OTk4ZGQ1MGZkNmNlZWUxMC90YWJsZXJhbmdlOmY0YmVlNzU4MWFkMzQwMjU5OThkZDUwZmQ2Y2VlZTEwXzctNS0xLTEtNjM4ODc_f4fcde5e-06ce-45ae-bde4-865fa63ca0de"
      unitRef="usd">1163466000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:NumberOfReportableSegments
      contextRef="ibd895d48ac38440e907abfa04402881f_D20221001-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90ZXh0cmVnaW9uOjIxYjBjOTdhZDljYzQ4ZmY5YmU5MmFlZWIwMTAzNTgyXzE2NDkyNjc0NDU2MjY_b0ee14df-bf01-4dbd-9afb-9a743f26c825"
      unitRef="segment">2</us-gaap:NumberOfReportableSegments>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90ZXh0cmVnaW9uOjIxYjBjOTdhZDljYzQ4ZmY5YmU5MmFlZWIwMTAzNTgyXzIwMTM_f8555cdd-ea4f-42d0-a11b-22dea64ddbf7">The following table presents the revenue and income from operations by reporting segment for the years ended December&#160;31, 2022, 2021, and 2020:&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;&#160;&lt;/span&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:52.116%"/&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:1.0%"/&gt;&lt;td style="width:2.554%"/&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:1.0%"/&gt;&lt;td style="width:2.993%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.207%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&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;2022&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;2021&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;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Net Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vegetation Management&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;937,065&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;812,676&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;654,630&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Industrial 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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;576,551&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;521,547&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;508,836&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:#def3c0;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Consolidated&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,513,616&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,334,223&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,163,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Income from Operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vegetation Management&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;108,508&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;78,917&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;46,651&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Industrial Equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;40,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;38,021&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;48,134&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Consolidated&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;148,592&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;116,938&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;94,785&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&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 goodwill and total identifiable assets by reporting segment for the years ended December&#160;31, 2022 and 2021:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;&#160;&lt;/span&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:64.689%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.104%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.701%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.106%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&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="9" 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;December 31,&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:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&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="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&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;/tr&gt;&lt;tr&gt;&lt;td colspan="12" style="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:9pt;font-weight:700;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vegetation Management&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;127,562&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:#def3c0;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;132,963&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Industrial 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:9pt;font-weight:400;line-height:100%"&gt;68,296&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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;69,443&#160;&lt;/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:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Consolidated&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;195,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;202,406&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;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;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Identifiable Assets &lt;/span&gt;&lt;/td&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vegetation Management&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: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;866,974&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 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;789,838&#160;&lt;/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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Industrial Equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;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;441,534&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;415,904&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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;border-bottom:2pt solid #000000;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:9pt;font-weight:400;line-height:100%"&gt;Consolidated&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;1,308,508&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;1,205,742&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #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:ScheduleOfSegmentReportingInformationBySegmentTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0ff65971f8a344f3afdf75aa25d869f1_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzQtMS0xLTEtNjM4ODc_f0d6b8de-132b-4f4d-aaae-91374a7e4d88"
      unitRef="usd">937065000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if77ec05e8b684280b18475c39a8bf482_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzQtMy0xLTEtNjM4ODc_ce03696c-09e7-4d24-b459-273761bc59b1"
      unitRef="usd">812676000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i513fb2f7accf49ecacbc7116eafbe588_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzQtNS0xLTEtNjM4ODc_b08e91cb-e74f-4e27-92e5-00ceb6b10a7e"
      unitRef="usd">654630000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ibaa2c0aa8b8145e0846cbc65655c330c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzUtMS0xLTEtNjM4ODc_07de9278-0004-4705-882d-0a9c5fd66a28"
      unitRef="usd">576551000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3182e3589e3647f599dbed14ec3a5afe_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzUtMy0xLTEtNjM4ODc_83ff8470-442d-4867-a443-6da31bf73193"
      unitRef="usd">521547000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i36cdf5e00a0245ce92a15de38f5924f4_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzUtNS0xLTEtNjM4ODc_0e45c70d-db1b-424c-b05b-28ab3b066513"
      unitRef="usd">508836000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzctMS0xLTEtNjM4ODc_2cf3010a-d87e-4c20-84ad-f421d2bb0222"
      unitRef="usd">1513616000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzctMy0xLTEtNjM4ODc_08618e1d-3a18-492c-a645-b786fcdb02cb"
      unitRef="usd">1334223000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzctNS0xLTEtNjM4ODc_a06dd323-a1c6-4cbe-86ef-e78f7f7a2058"
      unitRef="usd">1163466000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:OperatingIncomeLoss
      contextRef="i0ff65971f8a344f3afdf75aa25d869f1_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzEwLTEtMS0xLTYzODg3_2d073859-a2c5-4ec1-8b0f-a7a70c1b9893"
      unitRef="usd">108508000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="if77ec05e8b684280b18475c39a8bf482_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzEwLTMtMS0xLTYzODg3_a05b436f-3c3f-4277-88a3-55ab77c9df96"
      unitRef="usd">78917000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i513fb2f7accf49ecacbc7116eafbe588_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzEwLTUtMS0xLTYzODg3_878f5989-4e22-41de-983f-06e01d9fc086"
      unitRef="usd">46651000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ibaa2c0aa8b8145e0846cbc65655c330c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzExLTEtMS0xLTYzODg3_337080a0-d0aa-4b3d-97a0-8ec98a803f3d"
      unitRef="usd">40084000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i3182e3589e3647f599dbed14ec3a5afe_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzExLTMtMS0xLTYzODg3_29944614-ec1e-4fd7-a40c-dc9b38fb41f1"
      unitRef="usd">38021000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i36cdf5e00a0245ce92a15de38f5924f4_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzExLTUtMS0xLTYzODg3_f9baf4ad-cc5e-47a8-9ddc-159101debd14"
      unitRef="usd">48134000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzEzLTEtMS0xLTYzODg3_1594d3b4-97fd-4b69-862a-060fbe836356"
      unitRef="usd">148592000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzEzLTMtMS0xLTYzODg3_d78a2035-8cb4-42c7-a66e-69e3a4882e56"
      unitRef="usd">116938000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo1ZWY2MzA5MDJmNDc0ZGFhYjM5MDI2Y2JkZDNjNmU1Ni90YWJsZXJhbmdlOjVlZjYzMDkwMmY0NzRkYWFiMzkwMjZjYmRkM2M2ZTU2XzEzLTUtMS0xLTYzODg3_ee1f393f-544e-46cd-bc16-fc566ef37bc6"
      unitRef="usd">94785000</us-gaap:OperatingIncomeLoss>
    <us-gaap:Goodwill
      contextRef="i803060fc3e714dea8c404e56b28916c4_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzQtMS0xLTEtNjM4ODc_8ddc8539-e7fa-48b1-b211-f43464dad552"
      unitRef="usd">127562000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="ifabd95c5636e4ae29d276ed3df2f04aa_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzQtMy0xLTEtNjM4ODc_7fdc61f7-d035-4720-a507-b399cbe86424"
      unitRef="usd">132963000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i3d862a4e890749ffb9f5627adbe5ad23_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzUtMS0xLTEtNjM4ODc_da5285f1-dc93-41de-9f34-e310b69711d3"
      unitRef="usd">68296000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="ib5cd129a56a24fffb8578ab324d3ad87_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzUtMy0xLTEtNjM4ODc_7cf41ff0-a3e8-46f3-8672-295c496830b9"
      unitRef="usd">69443000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzctMS0xLTEtNjM4ODc_58663e7e-2bc5-4c46-b1b0-6ffaf6a2d054"
      unitRef="usd">195858000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzctMy0xLTEtNjM4ODc_e55bf224-3005-4c1c-8e65-de52e48db869"
      unitRef="usd">202406000</us-gaap:Goodwill>
    <us-gaap:Assets
      contextRef="i803060fc3e714dea8c404e56b28916c4_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzEwLTEtMS0xLTYzODg3_424b589a-fc01-4c0d-9151-96a8a661a6c8"
      unitRef="usd">866974000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="ifabd95c5636e4ae29d276ed3df2f04aa_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzEwLTMtMS0xLTYzODg3_22630d32-336c-40e3-8311-b4612b8392bd"
      unitRef="usd">789838000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i3d862a4e890749ffb9f5627adbe5ad23_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzExLTEtMS0xLTYzODg3_75f6121a-49ab-4dbf-a960-3e8d274e1c99"
      unitRef="usd">441534000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="ib5cd129a56a24fffb8578ab324d3ad87_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzExLTMtMS0xLTYzODg3_b5be9193-5a92-44fd-9fa6-d09ff606f896"
      unitRef="usd">415904000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzEzLTEtMS0xLTYzODg3_3e0d9e79-cfea-48a9-8fc9-e9e5e2f494d1"
      unitRef="usd">1308508000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xNzgvZnJhZzoyMWIwYzk3YWQ5Y2M0OGZmOWJlOTJhZWViMDEwMzU4Mi90YWJsZTo0Y2U1ZTg2MGFkMzM0Y2Y2OGM3ODAzZDc2YTNmNjViOC90YWJsZXJhbmdlOjRjZTVlODYwYWQzMzRjZjY4Yzc4MDNkNzZhM2Y2NWI4XzEzLTMtMS0xLTYzODg3_47c69b21-29ef-47ee-99ce-45324cba1acd"
      unitRef="usd">1205742000</us-gaap:Assets>
    <us-gaap:ComprehensiveIncomeNoteTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90ZXh0cmVnaW9uOmNhMGViNmM1NWRmMTRkYWI4NzI3M2FjYWM4MmVlMjM5XzE0Mw_7f90c8c9-375f-4a0f-ad15-5db1f9e3b912">ACCUMULATED OTHER COMPREHENSIVE LOSS&lt;div style="padding-left:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Changes in accumulated other comprehensive loss by component, net of tax, were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div&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:20.391%"/&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:1.0%"/&gt;&lt;td style="width:7.525%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.110%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.402%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.700%"/&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:1.0%"/&gt;&lt;td style="width:7.525%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.110%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.409%"/&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="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Twelve Months Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="12" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;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="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="12" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;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: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;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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="border-top:1pt solid #000;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;Defined Benefit Plans Items&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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;Gains (Losses) on Cash Flow Hedges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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&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: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="border-top:1pt solid #000;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;Defined Benefit Plans Items&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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;Gains (Losses) on Cash Flow Hedges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Balance as of beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;(42,397)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;(5,017)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;(1,576)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;(48,990)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;(26,597)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;(6,855)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;(6,874)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;(40,326)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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;border-top:1pt solid #000;padding:2px 1pt 2px 7pt;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;Other comprehensive  income (loss) before reclassifications&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:9pt;font-weight:400;line-height:100%"&gt;(23,032)&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="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:9pt;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 #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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:9pt;font-weight:400;line-height:100%"&gt;1,512&#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="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:9pt;font-weight:400;line-height:100%"&gt;(21,520)&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:9pt;font-weight:400;line-height:100%"&gt;(15,800)&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="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:9pt;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 #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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:9pt;font-weight:400;line-height:100%"&gt;7,984&#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="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:9pt;font-weight:400;line-height:100%"&gt;(7,816)&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:#def3c0;padding:2px 1pt 2px 7pt;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;Amounts reclassified from accumulated other comprehensive loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,707&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;535&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,242&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,838&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,686)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(848)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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;border-top:1pt solid #000;padding:2px 1pt 2px 13pt;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;Other comprehensive   income (loss)&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:9pt;font-weight:400;line-height:100%"&gt;(23,032)&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="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:9pt;font-weight:400;line-height:100%"&gt;1,707&#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="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:9pt;font-weight:400;line-height:100%"&gt;2,047&#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="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:9pt;font-weight:400;line-height:100%"&gt;(19,278)&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:9pt;font-weight:400;line-height:100%"&gt;(15,800)&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="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:9pt;font-weight:400;line-height:100%"&gt;1,838&#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="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:9pt;font-weight:400;line-height:100%"&gt;5,298&#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="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:9pt;font-weight:400;line-height:100%"&gt;(8,664)&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:#def3c0;border-bottom:2pt solid #000;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:9pt;font-weight:400;line-height:100%"&gt;Balance as of end of period&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;(65,429)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;(3,310)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;471&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;(68,268)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;(42,397)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;(5,017)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;(1,576)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;(48,990)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000;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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;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;/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;/table&gt;&lt;/div&gt;</us-gaap:ComprehensiveIncomeNoteTextBlock>
    <us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90ZXh0cmVnaW9uOmNhMGViNmM1NWRmMTRkYWI4NzI3M2FjYWM4MmVlMjM5XzE0NA_ca05b9ec-5a7d-4a3e-af6b-a611170e181b">&lt;div style="padding-left:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Changes in accumulated other comprehensive loss by component, net of tax, were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div&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:20.391%"/&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:1.0%"/&gt;&lt;td style="width:7.525%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.110%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.402%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.700%"/&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:1.0%"/&gt;&lt;td style="width:7.525%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.110%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.409%"/&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="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Twelve Months Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="12" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;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="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="12" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;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: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;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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="border-top:1pt solid #000;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;Defined Benefit Plans Items&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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;Gains (Losses) on Cash Flow Hedges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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&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: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="border-top:1pt solid #000;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;Defined Benefit Plans Items&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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;Gains (Losses) on Cash Flow Hedges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;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&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;Balance as of beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;(42,397)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;(5,017)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;(1,576)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;(48,990)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;(26,597)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;(6,855)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;(6,874)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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:9pt;font-weight:400;line-height:100%"&gt;(40,326)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;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;border-top:1pt solid #000;padding:2px 1pt 2px 7pt;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;Other comprehensive  income (loss) before reclassifications&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:9pt;font-weight:400;line-height:100%"&gt;(23,032)&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="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:9pt;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 #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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:9pt;font-weight:400;line-height:100%"&gt;1,512&#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="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:9pt;font-weight:400;line-height:100%"&gt;(21,520)&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:9pt;font-weight:400;line-height:100%"&gt;(15,800)&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="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:9pt;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 #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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:9pt;font-weight:400;line-height:100%"&gt;7,984&#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="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:9pt;font-weight:400;line-height:100%"&gt;(7,816)&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:#def3c0;padding:2px 1pt 2px 7pt;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;Amounts reclassified from accumulated other comprehensive loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,707&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;535&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,242&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,838&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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,686)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#def3c0;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;(848)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding: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;border-top:1pt solid #000;padding:2px 1pt 2px 13pt;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;Other comprehensive   income (loss)&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:9pt;font-weight:400;line-height:100%"&gt;(23,032)&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="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:9pt;font-weight:400;line-height:100%"&gt;1,707&#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="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:9pt;font-weight:400;line-height:100%"&gt;2,047&#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="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:9pt;font-weight:400;line-height:100%"&gt;(19,278)&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:9pt;font-weight:400;line-height:100%"&gt;(15,800)&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="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:9pt;font-weight:400;line-height:100%"&gt;1,838&#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="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:9pt;font-weight:400;line-height:100%"&gt;5,298&#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="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:9pt;font-weight:400;line-height:100%"&gt;(8,664)&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:#def3c0;border-bottom:2pt solid #000;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:9pt;font-weight:400;line-height:100%"&gt;Balance as of end of period&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;(65,429)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;(3,310)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;471&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;(68,268)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;(42,397)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;(5,017)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;(1,576)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #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:9pt;font-weight:400;line-height:100%"&gt;(48,990)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-bottom:2pt solid #000;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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;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;/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;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock>
    <us-gaap:StockholdersEquity
      contextRef="i868c73b3d06b44ec92617f0666dc7ce7_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzMtMS0xLTEtNjM4ODc_fbde8587-5d10-4776-95f2-ebf5abb42974"
      unitRef="usd">-42397000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i6e8112f8e8a34e919c3bd3d5a628619d_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzMtMi0xLTEtNjM4ODc_4f1328b4-0158-4b5a-8d4e-ac7b1b948f1e"
      unitRef="usd">-5017000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ie3923a67e5f64f98a807cc1d853fc5e2_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzMtMy0xLTEtNjM4ODc_e05ba470-b1f3-417b-a3f4-46d5bcf71000"
      unitRef="usd">-1576000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i3114f6dde5534997ba147bf29b5ba918_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzMtNC0xLTEtNjM4ODc_c2d1a9db-4274-4e14-809d-40dfe657aa07"
      unitRef="usd">-48990000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ibfae7c87e3cf4e8da5fff61923d7a933_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzMtNi0xLTEtNjM4ODc_32112df0-d1be-44b8-ae9b-b524e6f68203"
      unitRef="usd">-26597000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i5c14023a880f45928fd39bb00503a4eb_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzMtNy0xLTEtNjM4ODc_66e2fc99-ac1c-451c-8aea-19940409e80d"
      unitRef="usd">-6855000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="icee1ab5ee6e94435a209bd27d6fe82fa_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzMtOC0xLTEtNjM4ODc_59f01c8b-b0ae-4da6-954f-bdf3b127d6bd"
      unitRef="usd">-6874000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i8d341c55254649f983daa2187dbb3c28_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzMtOS0xLTEtNjM4ODc_9e2dd106-772e-4632-903a-ef53c4441854"
      unitRef="usd">-40326000</us-gaap:StockholdersEquity>
    <us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent
      contextRef="i16b0080a3731492cbc6a4d1595ee7cfc_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzQtMS0xLTEtNjM4ODc_325306ce-2732-4951-a97d-203972053374"
      unitRef="usd">-23032000</us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent>
    <us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent
      contextRef="i597d4799d22b481eadba8771012e4440_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzQtMi0xLTEtNjM4ODc_e45173d0-4e30-49fe-ad01-e0bd73270d96"
      unitRef="usd">0</us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent>
    <us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent
      contextRef="i705d2dd97b5e442a82aac45bb61c9788_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzQtMy0xLTEtNjM4ODc_2eb2a2ca-7764-4c99-937c-a5eb4e6e117e"
      unitRef="usd">1512000</us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent>
    <us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent
      contextRef="i3e48d85ced0f4198be5b279ed3c2cf71_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzQtNC0xLTEtNjM4ODc_f3a7fa02-6d43-4d78-ab3d-e287ac5458be"
      unitRef="usd">-21520000</us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent>
    <us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent
      contextRef="i74896465ad134617a3231a0dfd645b1b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzQtNi0xLTEtNjM4ODc_a27bc52b-70ac-4450-9519-f033644f4061"
      unitRef="usd">-15800000</us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent>
    <us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent
      contextRef="if09a329cb8e041c8a3f68e4b233cb55b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzQtNy0xLTEtNjM4ODc_4a702e54-f727-4241-8742-2d1652317440"
      unitRef="usd">0</us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent>
    <us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent
      contextRef="i57ec737b772646548585c2aeb7dac3ff_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzQtOC0xLTEtNjM4ODc_8d52bd83-8676-4e0f-a2df-e8b1942a5857"
      unitRef="usd">7984000</us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent>
    <us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent
      contextRef="i94acb5b8cf414532a2b46fc4de433694_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzQtOS0xLTEtNjM4ODc_a0a10723-e968-4375-a3ab-7b042c4f1743"
      unitRef="usd">-7816000</us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent>
    <us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent
      contextRef="i16b0080a3731492cbc6a4d1595ee7cfc_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzUtMS0xLTEtNjM4ODc_3f4a8493-2045-46d8-8adb-d1fbd34c4019"
      unitRef="usd">0</us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent>
    <us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent
      contextRef="i597d4799d22b481eadba8771012e4440_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzUtMi0xLTEtNjM4ODc_34dd29c1-64b1-4a66-a53f-32ec4a9801cb"
      unitRef="usd">-1707000</us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent>
    <us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent
      contextRef="i705d2dd97b5e442a82aac45bb61c9788_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzUtMy0xLTEtNjM4ODc_75bd1420-2730-4209-aad0-14a8eef62ee1"
      unitRef="usd">-535000</us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent>
    <us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent
      contextRef="i3e48d85ced0f4198be5b279ed3c2cf71_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzUtNC0xLTEtNjM4ODc_a8db7970-4899-453c-82f2-fd26528c4add"
      unitRef="usd">-2242000</us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent>
    <us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent
      contextRef="i74896465ad134617a3231a0dfd645b1b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzUtNi0xLTEtNjM4ODc_c5f127ee-063a-4840-9106-d972d9f4c875"
      unitRef="usd">0</us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent>
    <us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent
      contextRef="if09a329cb8e041c8a3f68e4b233cb55b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzUtNy0xLTEtNjM4ODc_208209ac-49f3-4b9f-9593-49b320e03bf5"
      unitRef="usd">-1838000</us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent>
    <us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent
      contextRef="i57ec737b772646548585c2aeb7dac3ff_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzUtOC0xLTEtNjM4ODc_c7d50160-a877-4dc7-8869-ddcbcea2cc98"
      unitRef="usd">2686000</us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent>
    <us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent
      contextRef="i94acb5b8cf414532a2b46fc4de433694_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzUtOS0xLTEtNjM4ODc_f41c5c15-955b-433b-afcd-088b847c628c"
      unitRef="usd">848000</us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="i16b0080a3731492cbc6a4d1595ee7cfc_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzYtMS0xLTEtNjM4ODc_a6739dae-9b2e-423b-91fd-7671250f3c8a"
      unitRef="usd">-23032000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="i597d4799d22b481eadba8771012e4440_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzYtMi0xLTEtNjM4ODc_fe3186d7-2d8e-47ef-9e9f-61574bb8b284"
      unitRef="usd">1707000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="i705d2dd97b5e442a82aac45bb61c9788_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzYtMy0xLTEtNjM4ODc_c0751cdb-124d-42dc-a025-c4e7429e2857"
      unitRef="usd">2047000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="i3e48d85ced0f4198be5b279ed3c2cf71_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzYtNC0xLTEtNjM4ODc_01c41bf3-40d0-44a8-8ab8-8c90145e6240"
      unitRef="usd">-19278000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="i74896465ad134617a3231a0dfd645b1b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzYtNi0xLTEtNjM4ODc_a5ec6276-699a-4dcb-a4a8-e69b26a7bac4"
      unitRef="usd">-15800000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="if09a329cb8e041c8a3f68e4b233cb55b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzYtNy0xLTEtNjM4ODc_2367164f-b08e-4905-90c7-762adf59f819"
      unitRef="usd">1838000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="i57ec737b772646548585c2aeb7dac3ff_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzYtOC0xLTEtNjM4ODc_5190f1df-97bd-41de-9220-d2021f8d0221"
      unitRef="usd">5298000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="i94acb5b8cf414532a2b46fc4de433694_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzYtOS0xLTEtNjM4ODc_54596ebb-38ab-43a9-a26d-dd76a2969f85"
      unitRef="usd">-8664000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:StockholdersEquity
      contextRef="ibe07099a56ec451ea3c3df07c8ba0637_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzctMS0xLTEtNjM4ODc_c173503f-fe55-406a-a7a5-586c117119a1"
      unitRef="usd">-65429000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i00b76891fb64454ba15460dfe356b096_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzctMi0xLTEtNjM4ODc_c5ad3c25-1fca-45a6-a5e2-ee1373e106c8"
      unitRef="usd">-3310000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i2dcafeb637cf429d913083467d301fac_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzctMy0xLTEtNjM4ODc_f2ea3839-9c90-4d83-9cec-4eab1485f116"
      unitRef="usd">471000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ib613492db2fd4fb0b699d97c44b617be_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzctNC0xLTEtNjM4ODc_d9925513-0538-4805-b83f-777d4d309416"
      unitRef="usd">-68268000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i868c73b3d06b44ec92617f0666dc7ce7_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzctNi0xLTEtNjM4ODc_fec20b8a-fe8a-4998-a27b-d4cc3f7e9573"
      unitRef="usd">-42397000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i6e8112f8e8a34e919c3bd3d5a628619d_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzctNy0xLTEtNjM4ODc_93dcf73d-81cc-4dce-801e-12bef6769357"
      unitRef="usd">-5017000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ie3923a67e5f64f98a807cc1d853fc5e2_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzctOC0xLTEtNjM4ODc_507d9390-2ff2-45e1-ae19-15ea7502a08e"
      unitRef="usd">-1576000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i3114f6dde5534997ba147bf29b5ba918_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODEvZnJhZzpjYTBlYjZjNTVkZjE0ZGFiODcyNzNhY2FjODJlZTIzOS90YWJsZTplMTU4ZTYwMzZlOWI0ZTRlODdkMGU0MmE5OWI5YTlkZS90YWJsZXJhbmdlOmUxNThlNjAzNmU5YjRlNGU4N2QwZTQyYTk5YjlhOWRlXzctOS0xLTEtNjM4ODc_51752c9b-ab6a-415c-a594-bf403630d37e"
      unitRef="usd">-48990000</us-gaap:StockholdersEquity>
    <alg:InternationalOperationsAndGeographicInformationTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90ZXh0cmVnaW9uOmI2MWQ0NzZhODE4NjQyYzk5ZjMzODliMDZiZmU3MWRjXzQxNA_4bc110f9-3b16-4e20-b6f5-496e84c99d26">INTERNATIONAL OPERATIONS AND GEOGRAPHIC INFORMATION&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Following is selected financial information on the Company&#x2019;s international operations, which include the United Kingdom, France, Netherlands, Canada, Brazil, and Australia:&lt;/span&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:58.402%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.718%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.554%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.554%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.161%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="18" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;International Operations Financial Information&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&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="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:middle"&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="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:middle"&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="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;420,678&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;363,339&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;312,462&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income from operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;48,893&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;34,561&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;31,166&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income before income taxes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;51,206&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;37,051&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30,674&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Identifiable assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;364,752&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;352,187&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;304,536&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;Following is other selected geographic financial information on the Company&#x2019;s operations:&lt;/span&gt;&lt;/div&gt;&lt;div style="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:52.993%"/&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:1.0%"/&gt;&lt;td style="width:2.554%"/&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:1.0%"/&gt;&lt;td style="width:2.554%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.769%"/&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="18" style="border-bottom:1pt solid #000;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;Geographic Financial Information&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="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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="padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&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="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:middle"&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="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:middle"&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;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Geographic net sales:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,080,893&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;953,024&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;862,430&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;France&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;89,629&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;92,052&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;81,259&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Canada&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;95,799&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;83,392&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;65,313&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United Kingdom&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;69,454&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;57,386&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;47,757&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Brazil&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;46,841&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;31,365&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16,592&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Netherlands&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;23,304&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,964&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;23,946&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Germany&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,115&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,977&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,328&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Australia&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26,117&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;20,980&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,999&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;72,464&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;59,083&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;45,842&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total net sales&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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="border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,513,616&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,334,223&#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:middle"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,163,466&#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:middle"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Geographic location of long-lived assets:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;457,075&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;461,341&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;480,940&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Netherlands&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,428&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,262&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;39,063&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Canada&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,165&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,132&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;33,573&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United Kingdom&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;31,767&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;36,569&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,843&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;France&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,728&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;19,781&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;21,033&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Brazil&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,175&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,408&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,123&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Australia&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;670&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;790&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;964&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total long-lived assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;581,008&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;593,283&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;605,539&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&#160;&#160;&#160;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; Net sales are attributed to countries based on the location of customers.&lt;/span&gt;&lt;/div&gt;</alg:InternationalOperationsAndGeographicInformationTextBlock>
    <us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90ZXh0cmVnaW9uOmI2MWQ0NzZhODE4NjQyYzk5ZjMzODliMDZiZmU3MWRjXzQxNw_6e4bae8c-c6c6-4b86-bb2d-bce7d7f0e9c0">&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Following is selected financial information on the Company&#x2019;s international operations, which include the United Kingdom, France, Netherlands, Canada, Brazil, and Australia:&lt;/span&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:58.402%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.718%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.554%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.554%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.161%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="18" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;International Operations Financial Information&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&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="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:middle"&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="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:middle"&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="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;420,678&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;363,339&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;312,462&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income from operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;48,893&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;34,561&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;31,166&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income before income taxes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;51,206&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;37,051&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30,674&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Identifiable assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;364,752&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;352,187&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;304,536&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock>
    <us-gaap:Revenues
      contextRef="if0ccda55f2d64fc59a818cd96115d9b6_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzMtMS0xLTEtNjM4ODc_ef1de808-03f8-4eea-af4b-52acfb05be2a"
      unitRef="usd">420678000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i657c47e3fca548cc9bd4932795340ed6_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzMtMy0xLTEtNjM4ODc_f3cf7678-95cf-4ae0-933d-5d37201fbc94"
      unitRef="usd">363339000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="if56db49f517e4c219c53e22f549c5e51_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzMtNS0xLTEtNjM4ODc_6676cd26-f374-4c69-a3f3-b6b71a1ce50f"
      unitRef="usd">312462000</us-gaap:Revenues>
    <us-gaap:OperatingIncomeLoss
      contextRef="if0ccda55f2d64fc59a818cd96115d9b6_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzQtMS0xLTEtNjM4ODc_3e64e3a9-f9ba-4904-b299-896a89721f07"
      unitRef="usd">48893000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i657c47e3fca548cc9bd4932795340ed6_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzQtMy0xLTEtNjM4ODc_3fceb526-2b51-4490-9e50-c747a59aa99b"
      unitRef="usd">34561000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="if56db49f517e4c219c53e22f549c5e51_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzQtNS0xLTEtNjM4ODc_195f4a2e-a56b-492b-89a0-3193ac2baa3c"
      unitRef="usd">31166000</us-gaap:OperatingIncomeLoss>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="if0ccda55f2d64fc59a818cd96115d9b6_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzUtMS0xLTEtNjM4ODc_e3188cbb-7843-474b-a7e9-235513bc1b53"
      unitRef="usd">51206000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i657c47e3fca548cc9bd4932795340ed6_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzUtMy0xLTEtNjM4ODc_e45af32d-79d2-4120-8c39-1b5565d41c28"
      unitRef="usd">37051000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="if56db49f517e4c219c53e22f549c5e51_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzUtNS0xLTEtNjM4ODc_3a89f532-5eda-4aca-b726-18eddb356795"
      unitRef="usd">30674000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:Assets
      contextRef="i64a51b62ddf249588a55692f07e10ab7_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzYtMS0xLTEtNjM4ODc_99933cb4-c016-4792-a1a0-90ad2e3c7643"
      unitRef="usd">364752000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i9d119f114b064384b061dabb8264383f_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzYtMy0xLTEtNjM4ODc_80e1826d-e4c2-430f-9f8b-3e6be5601ddc"
      unitRef="usd">352187000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="idf164495df244f839eada511e8dd6586_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTo5OGNmOWZjZTdkMWI0MWM5YjlmZWUyNzU3OGUxMDU4Yi90YWJsZXJhbmdlOjk4Y2Y5ZmNlN2QxYjQxYzliOWZlZTI3NTc4ZTEwNThiXzYtNS0xLTEtNjM4ODc_0f6dc391-3410-4cad-a8d8-371882fb089f"
      unitRef="usd">304536000</us-gaap:Assets>
    <us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90ZXh0cmVnaW9uOmI2MWQ0NzZhODE4NjQyYzk5ZjMzODliMDZiZmU3MWRjXzQxOQ_8c1ec58c-e862-4954-b1ea-6edc39050004">Following is other selected geographic financial information on the Company&#x2019;s operations:&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:52.993%"/&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:1.0%"/&gt;&lt;td style="width:2.554%"/&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:1.0%"/&gt;&lt;td style="width:2.554%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.769%"/&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="18" style="border-bottom:1pt solid #000;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;Geographic Financial Information&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="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&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="padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&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="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:middle"&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="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:middle"&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;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Geographic net sales:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,080,893&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;953,024&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;862,430&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;France&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;89,629&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;92,052&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;81,259&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Canada&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;95,799&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;83,392&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;65,313&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United Kingdom&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;69,454&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;57,386&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;47,757&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Brazil&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;46,841&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;31,365&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16,592&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Netherlands&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;23,304&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,964&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;23,946&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Germany&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,115&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,977&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,328&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Australia&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26,117&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;20,980&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,999&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;72,464&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;59,083&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;45,842&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total net sales&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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="border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,513,616&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,334,223&#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:middle"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,163,466&#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:middle"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Geographic location of long-lived assets:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&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:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;457,075&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;461,341&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:#def3c0;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;480,940&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Netherlands&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,428&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,262&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;39,063&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Canada&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,165&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,132&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;33,573&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United Kingdom&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;31,767&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;36,569&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,843&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;France&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,728&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;19,781&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;21,033&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Brazil&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,175&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,408&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,123&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Australia&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;670&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;790&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#def3c0;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#def3c0;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;964&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#def3c0;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total long-lived assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;581,008&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;593,283&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&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:2pt solid #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;605,539&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock>
    <us-gaap:Revenues
      contextRef="i27471c6e5587400a91198519e9ea07aa_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzQtMS0xLTEtNjM4ODc_59df8f2a-9f38-4704-8f9e-ba37775c8a4c"
      unitRef="usd">1080893000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i540db814e238418581c3f762143bc4e6_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzQtMy0xLTEtNjM4ODc_aec221ef-0fc2-46ac-9262-d4c7a41f9d66"
      unitRef="usd">953024000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ifa0aa1dba5c341f6875d02c968bfe5e8_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzQtNS0xLTEtNjM4ODc_1ed973eb-3384-4f9a-8201-3f4da4b042c4"
      unitRef="usd">862430000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i97b432e0e60f4c4abe6ff31d739da965_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzUtMS0xLTEtNjM4ODc_ad962448-7f62-4ec1-a590-f55a97b3f8e9"
      unitRef="usd">89629000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i387d5202ed4f493c92b10a38acfc0b36_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzUtMy0xLTEtNjM4ODc_0868be97-6661-4b11-bb10-87fc2238c4d7"
      unitRef="usd">92052000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ib71436cd32294b8595608c3e5043c8c2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzUtNS0xLTEtNjM4ODc_ceaf7baa-a0ee-40b1-a14b-dd3c22b33947"
      unitRef="usd">81259000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i42e1c84b9e45497590a00b266e94b06e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzYtMS0xLTEtNjM4ODc_a56ff490-1fa7-4b02-b064-c6008abb855d"
      unitRef="usd">95799000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ic355ca56aac34b6e89fc7f98a82d288f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzYtMy0xLTEtNjM4ODc_9144346e-ff41-484e-9629-8d728e98f18b"
      unitRef="usd">83392000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ie123409994a748808eacb45425e4b967_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzYtNS0xLTEtNjM4ODc_9c141218-b970-4c9a-8d5f-0f6c75c44ce2"
      unitRef="usd">65313000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i85955310584d4321b4909f4e78a6509e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzctMS0xLTEtNjM4ODc_4d7c1944-15a0-40fc-8919-f75028240cd7"
      unitRef="usd">69454000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ie1a85fd409714c4680d0fdcd8133c6b0_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzctMy0xLTEtNjM4ODc_d0fe8d14-6e33-459b-9dd9-27214ddea7d6"
      unitRef="usd">57386000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i0571d0adc93a4f6c8577463a7d1271d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzctNS0xLTEtNjM4ODc_ce5e887d-2ed1-4f1d-bede-2ec7192a3bb1"
      unitRef="usd">47757000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i3424c8734bc247d283d8f7ee9792d969_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzgtMS0xLTEtNjM4ODc_28fe9bf5-0bce-49d0-ab36-30ad8b4b1390"
      unitRef="usd">46841000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i1df704cb487d433988240110ffba9b79_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzgtMy0xLTEtNjM4ODc_f81cc094-dd3c-409c-a724-c9f3e38bddaa"
      unitRef="usd">31365000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i2e1592132841419194fd5c912083d08e_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzgtNS0xLTEtNjM4ODc_696dd941-b365-44b7-ac86-ca1b5372f566"
      unitRef="usd">16592000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i8dcb828e9ef04159bf1cadd45d580f2a_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzktMS0xLTEtNjM4ODc_87397cef-7f96-416e-9e2c-9c86ad10bb6c"
      unitRef="usd">23304000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ie72b110c451b4574a22c4449e0e6adfb_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzktMy0xLTEtNjM4ODc_bb4f7397-c634-404e-aaa6-d4d68ad4cf57"
      unitRef="usd">27964000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="id80ed00b297a4ecb99ebab3fe9226c6f_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzktNS0xLTEtNjM4ODc_316e7c24-82d0-4399-9969-7a99c1df75b9"
      unitRef="usd">23946000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i20cf1c9a27114877bc07026ffc45e8aa_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzExLTEtMS0xLTYzODg3_9ad09aef-6fd2-4f93-8083-93b0fd27a844"
      unitRef="usd">9115000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i34f6b1648a164da3931c00b818f528a3_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzExLTMtMS0xLTYzODg3_a8de4022-e26e-446e-8b0c-da96a7af947b"
      unitRef="usd">8977000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ib488cce901db40c98e68a90787544861_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzExLTUtMS0xLTYzODg3_5a8e11a2-fc66-4f25-a5ba-c828b9288843"
      unitRef="usd">9328000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i6483ee4d964b415286f91bb91c2908bc_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzEyLTEtMS0xLTYzODg3_e62678f3-2411-4fe4-9874-989b13923a64"
      unitRef="usd">26117000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i92389c884a274e0fb3bbb45ba068f944_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzEyLTMtMS0xLTYzODg3_768854d5-8a8d-4aea-a5e6-ed6b34e1cbda"
      unitRef="usd">20980000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i7132ad0daa6c45729c5b3891a5968b1b_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzEyLTUtMS0xLTYzODg3_7403f54c-3818-463d-a849-54f61ad72c6f"
      unitRef="usd">10999000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ie5fb7c0c4922417db62f771c171e679c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzEzLTEtMS0xLTYzODg3_a1f36271-008e-469b-935e-c77666ddfaf6"
      unitRef="usd">72464000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ida2174e360e645aeab3b8ebd578d38ad_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzEzLTMtMS0xLTYzODg3_431ce3c1-b667-405c-bb68-8de087b633ab"
      unitRef="usd">59083000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i4de62983acdb4ec2bea2b8407cda05ae_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzEzLTUtMS0xLTYzODg3_b613d77d-1a40-4e88-a669-288b68d8db59"
      unitRef="usd">45842000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE0LTEtMS0xLTYzODg3_281e6d43-4c63-4ac5-813f-76d228f2f4c0"
      unitRef="usd">1513616000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ieca55c499b944ca88be3e5a4bcd43f2b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE0LTMtMS0xLTYzODg3_e13b821c-1f8f-41b2-ba16-6adf157cf02a"
      unitRef="usd">1334223000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i2e0e2bfb07444d6c8987bad4af105fcb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE0LTUtMS0xLTYzODg3_38ca3562-bcef-479c-afc6-361460412720"
      unitRef="usd">1163466000</us-gaap:Revenues>
    <us-gaap:NoncurrentAssets
      contextRef="i53e4684044224871825bd23aac41aee3_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE2LTEtMS0xLTYzODg3_9c4276f4-862d-420b-b8ca-b17cc6237fae"
      unitRef="usd">457075000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="ic1938ea617ca4f769c724f1a08e7efc5_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE2LTMtMS0xLTYzODg3_0bcca939-8eeb-4b47-ac1e-00ac80a7b369"
      unitRef="usd">461341000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i529fcaeebb904bfdaccd9f21b05b0e4f_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE2LTUtMS0xLTYzODg3_4c01cd96-de2b-4fb3-8500-d7df5f9caa8d"
      unitRef="usd">480940000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="if0925a1305784f729e9e56ed2c280661_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE3LTEtMS0xLTYzODg3_7e999960-4cc4-4c30-aa9d-81e77d25acc4"
      unitRef="usd">28428000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i716dd7aefb954ba687184e1292435465_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE3LTMtMS0xLTYzODg3_f7cef366-6851-4fc1-87cb-0003e672844e"
      unitRef="usd">32262000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i90f80b354e6b42c5867a327caee24eeb_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE3LTUtMS0xLTYzODg3_193171fe-5b10-455f-86cb-40a95161b86b"
      unitRef="usd">39063000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="id383d018a3be4e749d23a3a0666ec989_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE4LTEtMS0xLTYzODg3_e6727438-b692-48bf-b6a1-66af3f678763"
      unitRef="usd">32165000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i1df499325fc7423da4f6d70c56f75ed0_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE4LTMtMS0xLTYzODg3_335f483f-a27c-46fe-a209-127eb05ee627"
      unitRef="usd">32132000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i1277e58dd79a4c2aa8489ce10cc1192f_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE4LTUtMS0xLTYzODg3_6e4c8d44-377a-4cfb-b28a-ed7d0503045f"
      unitRef="usd">33573000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i1095a338cfa94c2ba6be5ecdea6f7482_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE5LTEtMS0xLTYzODg3_8fd73150-34de-4523-ab5c-4e6f98f37ab9"
      unitRef="usd">31767000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i38a74560d41841908eb8dbfab7583864_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE5LTMtMS0xLTYzODg3_0526287d-73d6-4c23-ae6c-2e18c2e913b6"
      unitRef="usd">36569000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="ibbc431a0d48c46c4a814fbc93cceeb31_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzE5LTUtMS0xLTYzODg3_da7647b0-5c51-40e2-9e42-c7f12748a164"
      unitRef="usd">18843000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="ie9268b6721bf4d8e950f2c25210811a8_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIwLTEtMS0xLTYzODg3_e43938a7-c575-468d-9dc7-eb1d9e237843"
      unitRef="usd">18728000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i30d5ea028fb64ee68f0494c440e4ba4c_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIwLTMtMS0xLTYzODg3_cfd3c60e-e75d-4c87-8371-3233f1ed70a8"
      unitRef="usd">19781000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i2e092c63d696456a996e87a4b51deb04_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIwLTUtMS0xLTYzODg3_9f8668d3-be6e-416d-a00e-6cc65f0df6e3"
      unitRef="usd">21033000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="ia3f71003335d424d971f475b80df2fdb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIxLTEtMS0xLTYzODg3_1942d79c-36d5-4a5b-9fd0-7b75d41515d8"
      unitRef="usd">12175000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="ic8f310366b2e444580858a4737d3b4c8_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIxLTMtMS0xLTYzODg3_df6ffb03-fd74-4ca2-87e9-31f42c67142d"
      unitRef="usd">10408000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i8247765dd22e46fe94b851d92480a16a_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIxLTUtMS0xLTYzODg3_8f8401d6-641b-41bd-8fff-9c7bf090874a"
      unitRef="usd">11123000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="ie201b7fa6daa4f13bb7cc014f2d19f4e_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIyLTEtMS0xLTYzODg3_35b7e016-fadf-463b-a3c8-cbec529fda27"
      unitRef="usd">670000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="ia4570f6a699a4f929c9daba151473653_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIyLTMtMS0xLTYzODg3_71fc5e63-8c41-40f3-b8d2-9dd298350021"
      unitRef="usd">790000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i1da150c7a78f400cb9f3b178d73ed207_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIyLTUtMS0xLTYzODg3_abe0d54f-5903-450c-a5f4-e469e24cb832"
      unitRef="usd">964000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i7ca1a2570c4a481dabf1bad462d1644a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIzLTEtMS0xLTYzODg3_b0355b1f-7384-4795-a20c-448a00d6ab19"
      unitRef="usd">581008000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i4a4acb75213e4a59aa709376381730bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIzLTMtMS0xLTYzODg3_b309362f-8d89-4194-b294-08f1cc66dbf1"
      unitRef="usd">593283000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i5d74fc3138934e70861715f06fa062c7_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODQvZnJhZzpiNjFkNDc2YTgxODY0MmM5OWYzMzg5YjA2YmZlNzFkYy90YWJsZTowODAyMDljN2U0ZWI0ZDAwYWNjMGViZmI1NmQ5NTQxZS90YWJsZXJhbmdlOjA4MDIwOWM3ZTRlYjRkMDBhY2MwZWJmYjU2ZDk1NDFlXzIzLTUtMS0xLTYzODg3_a679e2aa-28e8-4a0f-a80c-1cb9659fefe1"
      unitRef="usd">605539000</us-gaap:NoncurrentAssets>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjUxNzYyYzFlMGQ3ZjQ3YWViNmQyNGYzYTBkMTllYTY0L3NlYzo1MTc2MmMxZTBkN2Y0N2FlYjZkMjRmM2EwZDE5ZWE2NF8xODcvZnJhZzpjYTQ2NWRkYzRmZWE0ZGI1YTk0N2FjNzNkN2RiYTJjMy90ZXh0cmVnaW9uOmNhNDY1ZGRjNGZlYTRkYjVhOTQ3YWM3M2Q3ZGJhMmMzXzE2MTg_28bd1a82-88db-4e25-b215-2a459b8f493c">COMMITMENTS AND CONTINGENCIES&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company is subject to various unresolved legal actions that arise in the ordinary course of its business.  The most significant of such actions relates to product liability, which is generally covered by insurance after various self-insured retention amounts. While amounts claimed might be substantial and the liability with respect to such litigation cannot be determined at this time, the Company believes that the outcome of these matters will not have a material adverse effect on the Company&#x2019;s consolidated financial position or results of operations; however, the ultimate resolution cannot be determined at this time. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Also, like other manufacturers, the Company is subject to a broad range of federal, state, local and foreign laws and requirements, including those concerning air emissions, discharges into waterways, and the generation, handling, storage, transportation, treatment and disposal of hazardous substances and waste materials, as well as the remediation of contamination associated with releases of hazardous substances at the Company&#x2019;s facilities and off-site disposal locations, workplace safety and equal employment opportunities. These laws and regulations are constantly changing, and it is impossible to predict with accuracy the effect that changes to such laws and regulations may have on the Company in the future. Like other industrial concerns, the Company&#x2019;s manufacturing operations entail the risk of noncompliance, and there can be no assurance that the Company will not incur material costs or other liabilities as a result thereof.&lt;/span&gt;&lt;/div&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>108
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( -F#5U8'04UB@0   +$    0    9&]C4')O<',O87!P+GAM
M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG
M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGD<Z,STA)8*O4'J@)I9GF
M3?X.CD:?<@X>K7A.YNJQ<&4GPZ4A!0W_<FW>J=0U[R;UEA_6\#MI7E!+ P04
M    " #9@U=65I#8R.T    K @  $0   &1O8U!R;W!S+V-O<F4N>&ULS9+!
M2L0P$(9?17)O)TU )'1[6?&D(+B@> O)[&ZP:4(RTN[;V\;=+J(/X#$S?[[Y
M!J8U49F0\#F%B(D<YIO)]T-6)F[8D2@J@&R.Z'6NY\0P-_<A>4WS,QT@:O.A
M#PB"\UOP2-IJTK  J[@26==:HTQ"32&=\=:L^/B9^@*S!K!'CP-E:.H&6+=,
MC*>I;^$*6&"$R>?O MJ56*I_8DL'V#DY9;>FQG&L1UER\PX-O#T]OI1U*S=D
MTH/!^5=VBDX1-^PR^55N[W</K!-<R(J+2LB=:)3D2MR]+ZX__*["/EBW=__8
M^"+8M?#K+KHO4$L#!!0    ( -F#5U:97)PC$ 8  )PG   3    >&PO=&AE
M;64O=&AE;64Q+GAM;.U:6W/:.!1^[Z_0>&?V;0O&-H&VM!-S:7;;M)F$[4X?
MA1%8C6QY9)&$?[]'-A#+E@WMDDVZFSP$+.G[SD5'Y^@X>?/N+F+HAHB4\GA@
MV2_;UKNW+][@5S(D$4$P&:>O\, *I4Q>M5II ,,X?<D3$L/<@HL(2W@4R]9<
MX%L:+R/6ZK3;W5:$:6RA&$=D8'U>+&A T%116F]?(+3E'S/X%<M4C66C 1-7
M02:YB+3R^6S%_-K>/F7/Z3H=,H%N,!M8('_.;Z?D3EJ(X53"Q,!J9S]6:\?1
MTDB @LE]E 6Z2?:CTQ4(,@T[.IU8SG9\]L3MGXS*VG0T;1K@X_%X.+;+THMP
M' 3@4;N>PIWT;+^D00FTHVG09-CVVJZ1IJJ-4T_3]WW?ZYMHG J-6T_3:W?=
MTXZ)QJW0> V^\4^'PZZ)QJO0=.MI)B?]KFNDZ19H0D;CZWH2%;7E0-,@ %AP
M=M;,T@.67BGZ=90:V1V[W4%<\%CN.8D1_L;%!-9ITAF6-$9RG9 %#@ WQ-%,
M4'RO0;:*X,*2TER0UL\IM5 :")K(@?5'@B'%W*_]]9>[R:0S>IU].LYKE']I
MJP&G[;N;SY/\<^CDGZ>3UTU"SG"\+ GQ^R-;88<G;CL3<CH<9T)\S_;VD:4E
M,L_O^0KK3CQG'U:6L%W/S^2>C'(CN]WV6'WV3T=N(]>IP+,BUY1&)$6?R"VZ
MY!$XM4D-,A,_")V&F&I0' *D"3&6H8;XM,:L$> 3?;>^",C?C8CWJV^:/5>A
M6$G:A/@01AKBG'/F<]%L^P>E1M'V5;S<HY=8%0&7&-\TJC4LQ=9XE<#QK9P\
M'1,2S90+!D&&ER0F$JDY?DU($_XKI=K^G-- \)0O)/I*D8]ILR.G=";-Z#,:
MP4:O&W6':-(\>OX%^9PU"AR1&QT"9QNS1B&$:;OP'J\DCIJMPA$K0CYB&38:
M<K46@;9QJ81@6A+&T7A.TK01_%FL-9,^8,CLS9%USM:1#A&27C="/F+.BY 1
MOQZ&.$J:[:)Q6 3]GE[#2<'H@LMF_;A^AM4S;"R.]T?4%TKD#R:G/^DR- >C
MFED)O816:I^JAS0^J!XR"@7QN1X^Y7IX"C>6QKQ0KH)[ ?_1VC?"J_B"P#E_
M+GW/I>^Y]#VATK<W(WUGP=.+6]Y&;EO$^ZXQVM<T+BAC5W+-R,=4KY,IV#F?
MP.S]:#Z>\>WZV22$KYI9+2,6D$N!LT$DN/R+RO JQ GH9%LE"<M4TV4WBA*>
M0AMNZ5/U2I77Y:^Y*+@\6^3IKZ%T/BS/^3Q?Y[3-"S-#MW)+ZK:4OK4F.$KT
ML<QP3A[+##MG/)(=MG>@'37[]EUVY".E,%.70[@:0KX#;;J=W#HXGIB1N0K3
M4I!OP_GIQ7@:XCG9!+E]F%=MY]C1T?OGP5&PH^\\EAW'B/*B(>ZAAIC/PT.'
M>7M?F&>5QE T%&ULK"0L1K=@N-?Q+!3@9& MH >#KU$"\E)58#%;Q@,KD*)\
M3(Q%Z'#GEUQ?X]&2X]NF9;5NKREW&6TB4CG":9@39ZO*WF6QP54=SU5;\K"^
M:CVT%4[/_EFMR)\,$4X6"Q)(8Y07IDJB\QE3ON<K2<15.+]%,[82EQB\X^;'
M<4Y3N!)VM@\",KF[.:EZ93%GIO+?+0P)+%N(61+B35WMU>>;G*YZ(G;ZEW?!
M8/+]<,E'#^4[YU_T74.N?O;=X_INDSM(3)QYQ1$!=$4"(Y4<!A87,N10[I*0
M!A,!S93)1/ "@F2F'("8^@N]\@RY*17.K3XY?T4L@X9.7M(E$A2*L P%(1=R
MX^_ODVIWC-?Z+(%MA%0R9-47RD.)P3TS<D/85"7SKMHF"X7;XE3-NQJ^)F!+
MPWING2TG_]M>U#VT%SU&\Z.9X!ZSAW.;>KC"1:S_6-8>^3+?.7#;.MX#7N83
M+$.D?L%]BHJ $:MBOKJO3_DEG#NT>_&!()O\UMND]MW@#'S4JUJE9"L1/TL'
M?!^2!F.,6_0T7X\48JVFL:W&VC$,>8!8\PRA9CC?AT6:&C/5BZPYC0IO0=5
MY3_;U UH]@TT')$%7C&9MC:CY$X*/-S^[PVPPL2.X>V+OP%02P,$%     @
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
M@N&G0YX Q^>4BLV&O$"^I'WP'U!+ P04    " #9@U=6]*\OD#$"  "K!0
M&    'AL+W=O<FMS:&5E=',O<VAE970R+GAM;(V4VX[:,!"&7\5RI5ZMR %(
MMS2)!$NW714JM/0D5;TPR4"LC>W4=C;;MZ_MA)1*$'&3^##_[V^<S,2-D$^J
M -#HA95<);C0NIIYGLH*8$2-1 7<[.R%9$2;J3QXJI) <B=BI1?Z?N0Q0CE.
M8[>VD6DL:EU2#AN)5,T8D7\64(HFP0$^+CS20Z'M@I?&%3G %O37:B/-S.M=
M<LJ *RHXDK!/\#R8+2(;[P*^46C4R1C93'9"/-G)0YY@WP)!"9FV#L2\GN$.
MRM(:&8S?G2?NC[3"T_'1_=[E;G+9$05WHOQ.<UTD^!:C'/:D+O6C:#Y"E\_4
M^F6B5.Z)FC8V?(M15BLM6"<V!(SR]DU>NGLX$031!4'8"4+'W1[D*)=$DS26
MHD'21ALW.W"I.K6!H]Q^E*V69I<:G4[G=4XU>N#MYS7W%'O:V-I-+^LL%JU%
M>,$B"-%:<%TH])[GD/]OX!F>'BH\0BW"0<<E9",T#FY0Z(?A@-^X3W+L_,;7
M)HE^SG=*2_-+_#J7;^LV.>]FRV2F*I)!@DT=*)#/@-/7KX+(?S? .NE9)T/N
M+:N0Z)Y*AAZ6Y_"&#8+;Z0#&M,>87H7QF3 XQS"L_K19?T"KU68 ).I!HJM
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
MEBM2],;T]XE>F;NJO,]@"9'5$RG[62/[67.!=8%_SFESSF#+,P4[Z?:@[_;
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
MM34]4),F_\L&7T$=0"[3N"'2ZO@+LPJN!F0, :.[S;:UHDV2*MC6D";,LK=
MG/ 6:]N:T$^U.#_4/, S5@Y7+=(^]>O@!ZBZW_EJ&UQ7NRUF"W;K ]M]U#W\
MJOIMU/%//!)]SM/==LU VX@;OQM7NEN[>EV98&F3@4\1XKJN^MGWMKI\6LVK
MYR:Z2(;SBGRAT[%IP%<B2&OYZQO?17A?(]_3B@S\DM=$$M;Y:TRP=+1))$G$
M>*HP#-8.C64#->+2//!U:S:^^@$*V&(-@ Z:F[03AT5TC3.!'/X3NNWCOSV]
MNKKX6E7)[RZ_KGQ(7Q1#Z9>?8@/;EJ89%;'#UK?[RN\ZV\PQ/;859A5T,:-L
M8G>FBX;M!]Y@[FVUL!:FU#I@.Z\5RJQ+U<RK7Z.E";^+O4,4LN)X0!I8ADE>
M^H"&:"@*W.1N.]>OJU_G=_/J!]M96!]D!A3:+<U:8N*X38%,'-NH1L:FT7N\
M>PN'R>+0NDQ$5-_*LOJU@04MEW 3V1QV<)(25]D>/M ZLW#  $=@$>R][09Z
M10/9=T@W(L]-QBH*H5%.KI"G+LVF@QW"0?XY- I2R:4@-L].+F=<R%9>V] #
M!BH%[L@[2CY'3FH"= 2S^8.7XJMZ;;J5Q1X#Z-B?(APY0LE#V\ ?L.10+8,'
MYJQ]+%0TK^X&&,NH,K7=&3RVYQDA=T4V(**RD?D= Q.VKVK\L.B70YMM:9;D
MY:^CH<TB?]0OTT2$*,#:O\P"V 0T&V!(,)<%K,O"7QE4, \0^)Z4YSKL!+!S
M#S<W 98*J]%Y9H7PA4JWFIV9;#X/7+B$SE4"DG@[A*V/ @2T+3'2_"OOFYUK
M6QB([U;G+=*U1FU&G!AHTJT<+48_I;'&#7U@;BC;;X 3YETVLE.7P55H ;:C
MA&!>(>=#1M=5-T,(^&P_ 5UVXY9'8 L?92Q,F_U21CEG<)@B$)PDJ#%45KS%
MB,-8BH 2>??6A'GU6EUDZB%D-UF0AFX&G@3XZ=&XS1!(OS3@& ,0,)T'8+W1
M(7@?FS^ ^>I;&%[ME)T0$#%L!IE+XC/Y7;!KLH%[F]3\2>MC_'1>W9BXYL"!
M73]*%PCA7(-XR&A*60$<K76XNF$K3#(P9OG@5G#^%KB#J)E5BQA',5QR3=A!
M2X%/O0_1"7+25; T>"V<$3N\L%5-4ME1*O@R#X8<TVX66%/*,UG5AY_B?UHX
M(-]$N&S%"86K22,T\)R"6HUA!9<ES 7;N+YZ[>+;ZOL,8:[#C8.ND0,),@B\
M<XS*&7%*BV,#/1B\EL$##<XJC?T8[BDD+<?H$[ 6K!K.(_E#>2\"=@*?A:W-
M( &'I@<$PIZZ@;2@$6R_%?U+<9(_7EMX^,KZ53!;K(C@B%(RCF"W"5BJWP !
M8FKI,Z>6S*C>)!=H*5OB63S6A-WM -V'8#9'K$)U&GH UJO6**+G9*7X=DO?
MJN_GKXM9O<281<I=:-8Y$J(_,#.\W^Y,*\M<V)Y2L^P@L"THB/&CYZ@L,Q9
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
MQACX&B6"QP-1 $M;F TLIY5%GR.9R38!%!NICD?'GD(U[:0QR>9:CM!A*Z%
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
M   9    >&PO=V]R:W-H965T<R]S:&5E=#$R+GAM;)U5;6_;-A#^*P<5*#;
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
MVG\]\C=65>Z+S5)9A)Z[S 1F6DT;\'REH&ES0P>TG_"N_@=02P,$%     @
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
M:'@Z3CU0?8OM%T:VKJUMI,$FZ:85ODI,60,\+Z4TCPOK8'CGYK\ 4$L#!!0
M   ( -F#5U;H:LHO1@,  %4'   9    >&PO=V]R:W-H965T<R]S:&5E=#$X
M+GAM;(55;6\;-PS^*\1U*!+@D#OI7GQ.;0-YZ=H #1JT7?MAV ?YCK:UZB17
MDNOFWX_2V4XV.-X7B93(AP\I49ILC?WN5H@>?O5*NVFR\GY]F66N76$OW(59
MHZ:=A;&]\*3:9>;6%D47G7J5\3ROLUY(G<PF<>W!SB9FXY74^&#!;?I>V,=K
M5&8[35BR7_@DERL?%K+99"V6^!G]'^L'2UIV0.EDC]I)H\'B8II<L<OK,MA'
M@Z\2M^Z9#"&3N3'?@W+739,\$$*%K0\(@J:?>(-*!2"B\6.'F1Q"!L?G\A[]
M]Y@[Y3(7#F^,^B8[OYHF30(=+L1&^4]F^QYW^50!KS7*Q1&V@VU5)-!NG#?]
MSID8]%(/L_BUJ\,SAR9_P8'O''CD/02*+&^%%[.)-5NPP9K0@A!3C=Y$3NIP
M*)^]I5U)?G[VSIAN*Y6:9)[0PEK6[CRO!T_^@B?C<&^T7SEXJSOL_@V0$8T#
M%[[G<LU/(MYB>P$%2X'GG)_ *PZY%1&O^)_<0.@.[K07>BGG"N'*.?0.;J5K
ME7$;B_#GU=QY2S?DKV-U&**4QZ.$KKET:]'B-*&V<&A_8C)[_8K5^9L3.92'
M',I3Z+-W'S_>?KO[\.$8KY.>QWGMX>#+"J%=4470@=3@@RJL?91Z":(W&^W!
M+&"YKR!U?[1Y1&$!PWD#G1;V<[3[$\OC2'*H=CA!$%19X<A74>N[2_B*2_0B
M-N.]T-3RU-R>#J:C:VZE4/#VQT:NX^*-T<XHV0E/D<XB0;-QA.S.X5HHH5N"
M]O_EP,;P&S!>I\VX)&G$4L:;L#1NTD#HBQ7:J8&!Z/ZFL#$8*SBP-"]J&EG=
MP-.]>;(YXVE>5N=Q9@7-99I7S2DR/(]DRG3<L$ F3UG%(IDJ#1%?('/&THKE
M%&"4-S$<9S0_46JI1I:*,D[+,8?7KQK.^)N==H),C%SP=%P7)-5D7P:!=M(R
MKT^0:1I^'F96CF@NJ([C\^,5*H@X[>TI[?43I'BLT"BMZB#53<K']:Y"3=7
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
ML%L%B3?+4_M,TT$5EV)YC#74/.SNR,M1%[ZB.!MJZE&XGJ\N9ST_B>"K^Y%
M\Y@@A?]%&!+[<[45=S83?S9SX=60^F$R+)_(EI@'ETD$0"'V\8AZ!9&/Y\RK
MAQDIB*ZAP@C_QVS\_#E[92VVA)6NXON"P_84!>_*;2$V:!:;P,VI<1;L!'"W
M'D8?$)^2S=,RM6=-E,S<.PACV#/$TW&(IS\YQ/?*'8;X88@?AOAAB!^&^&&(
M'X;X_S[$ISL7(@U52W?MH\%%L;\;&:GCS=)%?Z&R9>^OI:Z)6C*AT7J%HH&?
MX5Q7_55/OS&R==<K"VF,;-RRI@1/7LN WRLIS69C#8SW;?-_ %!+ P04
M" #9@U=6R4M@H]L"   $!@  &0   'AL+W=O<FMS:&5E=',O<VAE970R,2YX
M;6Q]5-MNVS@0_96!MECL D(D49(O6=N [611 PD:)+T\%/M 2V.;*$5J23I.
M_KY#RE93P/$+.21G#L]P>&9RT.:'W2$Z>&FDLM-HYUQ[G22VVF'#[95N4=')
M1IN&.UJ:;6);@[P.08U,6)H.DH8+%<TF8>_!S"9Z[Z10^&# [IN&F]<%2GV8
M1EETVG@4VYWS&\ELTO(M/J'[TCX86B4]2BT:5%9H!08WTVB>72\*[Q\<O@H\
MV#<V^$S66O_PBU4]C5)/""56SB-PFIYQB5)Z(*+Q_Q$SZJ_T@6_M$_J_(7?*
M9<TM+K7\)FJWFT:C"&K<\+UTC_KP$8_YE!ZOTM*&$0Z=;YY'4.VMT\TQF!@T
M0G4S?SF^PYN 4?I. #L&L,"[NRBPO.&.SR9&'\!X;T+S1D@U1!,YH7Q1GIRA
M4T%Q;C:O*K/'&NX$7PLIG$ [21P!^^.D.H(L.A#V#DC&X%XKM[-PJVJL?P=(
MB%%/BYUH+=A%Q!NLKB#/8F I8Q?P\C[-/.#E[^ ]\%>^EFB!JQI"SEQ:^#Y?
M6V?H8_QW+N<.L3B/Z,5R;5M>X30B-5@TSQC-_OPC&Z3_7.!;]'R+2^BS^7+Y
M^.7V!NY6\\7J;O5Y=?MTCN)%D/,4SR##Z1/(7Y\ *DW"LP[T!MP.8:,EZ5>H
M+6E <E6AO08J$C9K-*%0?PE%CGIOZ87MWZ%N?LC@B?P-(<9P()5W%5AKM;=D
M?X!\&)?CM#.* 8,[)(GU1%ZAB >CTH]E"9_Y"\6PN& #R.)QRN ;-X8K<AO'
M>9'2."YS>$0G#%+C<- :_2Q"_V!Q.1K1.!X,81ED1;QK;+45SD(99^,A#.)\
ME,,G2M<05%DPR-*8I=G9]_D PRS.!R-OY'')<CA7]N2-,NG&;>@__G'WRG4B
M[7?[%C?OE/W+O>N/]]QLA;(@<4.AZ=6PC,!T/:=;.-T&G:^UH_2"N:,VC<8[
MT/E&:W=:^ OZQC_["5!+ P04    " #9@U=67PA/M(0&  "T$   &0   'AL
M+W=O<FMS:&5E=',O<VAE970R,BYX;6RE6%MOVS84_BN$!Q0MD-BQTQN:"^"D
MS1:@3;NF:1^&/5#2L464(A62BN/^^GV'E&1E<=)B>XE%\ER_<R-SN++NNR^)
M@KBMM/%'HS*$^LUDXO.2*NG'MB:#DX5UE0Q8NN7$UXYD$9DJ/9GM[;V<5%*9
MT?%AW/ODC@]M$[0R],D)WU25=.L3TG9U-)J.NHW/:ED&WI@<']9R29<4KNI/
M#JM)+Z50%1FOK!&.%D>C^?3-R7.FCP1?%:W\X%NP)YFUWWEQ7AR-]M@@TI0'
MEB#Q<T.GI#4+@AG7K<Q1KY(9A]^=]+/H.WS)I*=3J[^I(I1'H]<C4=!"-CI\
MMJL_J/7G!<O+K?;QKU@EVOV7(Y$W/MBJ988%E3+I5]ZV. P87N\]P#!K&6;1
M[J0H6OE6!GE\Z.Q*.*:&-/Z(KD9N&*<,!^4R.)PJ\(7C,ZF<^"IU0\(NQ)DR
MTN1*:G%N?' -T _^<!*@B,DG>2OT) F=/2!T.A,?K FE%^],0<5= 1-8V)LY
MZ\P\F3TJ\2WE8[$_W1&SO=GL$7G[O=O[4=[^S]U^JWRNK6\<>?'7/(/;R)2_
MMSF=1#[?+I*KYXVO94Y'(Y2')W=#H^,GOTU?[AT\8O#SWN#GCTD_/IN??Q9?
MY^^OWHF/9^+L_&)^<7H^?R_.+RZ_?+[Z\.[BR^4VD_^W4'$UOAR+W^?S3RC!
MZT8Q2M:)FERE@A<YN8#*%])["O%$*YDIK8("8; B(U&19'0+(8-8,.XW*=W
M!9EYXYPR2V8UUNP.=E!LR@L(MPU7GD9FDHB9[L<#LZ3V=F-;*$D4?40YIWEG
MH];SUJ)/<[5)<[$J"29!71W[!8R/O6-HL\QSVYC UI72PSEPU,[>*&2YR)J
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
M>9P+CI2E W@_4ZII%W1!]TGX[%]02P,$%     @ V8-75M^3PN$7%0  .T(
M !D   !X;"]W;W)K<VAE971S+W-H965T,C<N>&ULU5S[<]LXDOY74-YDSJY2
M9(IZYU7E.,Z,M^*,-_;,U-75_0"1D(4U16KXL*/YZ_?K!D"",N78LS5;=U6Q
M1%%$H]'H_OJ!5M[>9_EML5*J%-_625J\.UB5Y>;U\7$1K=1:%OULHU)\L\SR
MM2SQ,;\Y+C:YDC$/6B?'81!,CM=2IP?OW_*]R_S]VZPJ$YVJRUP4U7HM\^T'
ME63W[PX&!^[&5WVS*NG&\?NW&WFCKE3YR^8RQZ?CFDJLURHM=):*7"W?'9P,
M7G\8T?/\P*]:W1?>M:"5+++LECZ<Q^\. F)()2HJB8+$VYTZ54E"A,#&[Y;F
M03TE#?2O'?5/O':L92$+=9HEO^FX7+T[F!V(6"UEE91?L_N?E%W/F.A%65+P
MJ[@WSPXQ8U059;:V@_%YK5/S+K]9.7@#9L&> :$=$#+?9B+F\J,LY?NW>78O
M<GH:U.B"E\JCP9Q.:5.NRAS?:HPKWW]5I<X5I%R*#RI52UV*RT2FQ=OC$M3I
MF>/(4OI@*(5[* U"<9&EY:H09VFLXC:!8[!5\Q8ZWCZ$CU+\J**^& YZ(@S"
M\!%ZPWJM0Z8W?/):"_$_)XNBS*$;_]NU8D-OU$V/[.5UL9&1>G< @RA4?J<.
MWO_PM\$D>/,(MZ.:V]%CU-]_/;L^_WIV<?;E6GPX^W+VZ?Q:7'X^^7+5Q>>?
MHR0^0@:IBML[+\Y3$65I:LWF7I<K4:Z4^*06>06[%4/:D& B-E4>K6 0(EL*
MF23\4 H8D46A(%G<I3L_YC*F;]6W2-[),H,1505F+8H>?W^:K3<RW=*H:@U>
MBDV6%EE>K/2&2=QG-8DT2U^!LS+7BPJ$MF1]S/_"\K^Q8+&A=?3$(@/KH'&_
MTM%*R%R)99[]H>R:L&,;K%&4F7EP6945'G&T9!1AN4DA9!J[[U* #+0GERF
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
MUIFIW#8XT&QSL[>%7+>[/;A2LW/&0[#0=>#7;5/=17>=)-2.8\N_/C.NA/&
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
M&IU-\A$SX>X6-DZO_'UIKAUN7W[9X+HK#0G@_4)KM]N0@OT%^O(_4$L#!!0
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
M39/^LG!4[Z]<'Z59UOBQ:=0"3>.3+(W ]->8?N'T.EP=YMIA1D%<X<U/&:^
M^PNMW7[A QSNDN._ 5!+ P04    " #9@U=61NA8 !4%   1"P  &0   'AL
M+W=O<FMS:&5E=',O<VAE970S,2YX;6RE5EUOVS84_2N$"O3)M1TG;8-\&$B<
M; NPI$&3K0_#'FCIRN)"\:HD9=?[]3N7DI4$2()A X)8E"[//>=^D2<;]@^A
M(HKJ1VU=.,VJ&)NCR23D%=4ZC+DAAR\E^UI'+/UJ$AI/NDB;:CN93:>?)K4V
M+IN?I'>W?G[";;3&T:U7H:UK[;?G9'ESFNUENQ=?S:J*\F(R/VGTBNXH_M;<
M>JPF TIA:G+!L%.>RM/L;._H_$#LD\'OAC;AR;,2)4OF!UE<%:?95 B1I3P*
M@L;/FA9DK0"!QO<>,QM<RL:GSSOTGY)V:%GJ0 NVWTP1J]/L,%,%E;JU\2MO
M?J%>ST?!R]F&]%]M.MN/LTSE;8A<]YO!H#:N^]4_^C@\V7 X?67#K-\P2[P[
M1XGEA8YZ?N)YH[Q8 TT>DM2T&^2,DZ3<18^O!OOB?,%U;2*B'(/2KE +=M&X
M%;G<4#B91+@0PTG>PYUW<+-7X/9FZAH(55"7KJ#B.< $W :"LQW!\]F;B!>4
MC]7^WDC-IK/9&WC[@^#]A+?_7P2K"Q-RRZ'UI/XX6X;H435_OA2&SLG!RTZD
MDXY"HW,ZS= J@?R:LOG[=WN?IL=O2#@8)!R\A3Y??+F^OKJ_OKRYOU-G-Q=J
M\>7F_NKFY\N;Q=7EW4MD_P><NJ\(,:H;[;;*!#3O\B\TE(JLUMH;;H-J'22R
M75.A+*VT39W&+JA8Z:A@%$@9AQ4I]H5QZ'V5<^OQFDMED(=E&\ IA''R5G.(
M*IB5,Z7)M8MB%=J\&G ]61V1+'!H/!<MZ%BCE\::N!VI365@"ZK(*7EMK7A;
MDP>])20X)%>[G)0N(_E!!.9$^2%]A)VGB/I(0Z/F%I4R5M\J8VFW5+G5F$P%
M&A(]KY8D80D17(W(1U6)V($36CI6  U-'[FD!E_,2B<O4.DXX13P[-'FP$;L
M8@49$9Y&"7"7AB590VOJ YSBVL:<ZQ1/+!%8C"L !7BV5@EVI=>@+^_))Y(%
M0@)#*DLAQ>ZIA_?O#F=[GX^A$^%F:PKL*E2)U*%+L+GA8!)Q]B(+ S"(:YP4
M/@D*QZKB#2CZCC@,C'A6J5#:?Z=YK,YLX!'B] !A@/%@[]H258 D^? \)L]+
M4ZNE9XU$:G2V4"NID%H8*60I(IR6\SY3.-<PN9VR>M,-!$_?6^,I38@1ZB6W
M+8IV!6^,>"$B.7DG+[3QBFH3Y'R"98'146F_0EZ, X>-A'JCM_BTJXBN(D7^
M" EQ!3IQ)938X_R#'M -#?O8FT2<LFE2)0#@(^Y@#3F5_EO[(M5M5W@Y=>0W
M.D0:LBRN40,X\N17&(BNPG15!QRHB1JA[U[H$!CYE5SW%6L)!UYXW6-\L6J0
M(JE[TW/BLOR >J%'!1+]V$5-SNS&8E*JH$M"K\@.9 !65#>6MTD_-Q*6UB70
M-"60BB<96[6V \2X23E*S2B=CS"O4I3%T$2I$U.#13!+]'.:( @(JB8IUGF.
MZ9!ODZR^-5*3)9QNY'3-^Y+O6F^[/GO>3;OA5[92N&/UZV-!&U?@B$\-V1?6
M\[(>0OI8^5)YCXVF$!UM;)=;$QXD50Y(V([Q \2A^"0NVDF_.99,]U-P&"$[
MLL/$0.6W_G%@Y)C*01J^8[X;;BG)^.OG0.>)R_%+Q]SDR36E)G2*7,9DR&"F
M=C>6X>UPWSOKKCF/YMUE\1J-AFF- Z?$UNGX\\<,^M,%K%M$;M*E9\D15ZCT
M6.'.2EX,\+UDCKN%.!ANP?-_ %!+ P04    " #9@U=6\$2\Q% ?  #P:
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
M1;H6;U1ZID?E:V*OKU\GD]DXP0!]Q(?'*TEL6&(M"[B4(W4U^4UD.#*QX2;
M[!L.'BQWSATWRR6RJ*,FTD9PU""[B7BR7 0TB.N'5P::FF\3"9:%BA$YS>ER
MTZ3J\3(SO *'&G'C;>7X#,<XIJ;6++R\I#2K+F^]X[M2S'N]:RN666KF'25R
M?G*!TIKR=!VO &*<-.OOWH>CQGQ5H4F-XN&^*(+]\M[UO,Q\AVBSDG_?#9%%
MO ]1A<8H7=YJ4CN$^25GC[<YA*G2N)99[0C.'W35AHIJR/O3]04^N%?J-F7S
MVU&.DI@"J9'#3HJ F\62'3A?L!)9<=+6;=^E.Q?&+IR:8_) ;U&%C)Z_@W=S
M(IQ.E]C<#3WV@5ST= D_(=^1WS0E]?YP35]?-Z<38!YR.CY=9EUS=SLW@YAX
M>B=#H,DC)W[,\AYFN4M"//@ ODEH=F3@8_62KNE9$.:P6#Q1_\7W:I$DR-%[
M"C;0PX\; !MN[!=*_5P&74X,ZBU$Q=H-=/-DH"?AEJ]1:LZ/(J^G&(C[ G%H
MCB'IUHU+X OI2I2*K'B+WFUP]H3WC>9,WQ+[+TL<1D#@P5:?X<O]R)=7'Z2#
MJD1RH<&GT),+'[A3M'XL+-3<DHE0#BSL]'M@[!]TKR*?;#@18.*BK>4QJMKQ
MHR/2/C!H4Z(J(72N&SP$KC-?6\R3\\7+VY&+:(?SYGYL@4T]_*O!S'*^*>P/
M%@%#V,+1+KZ\&MV"*&3X3VU@ZI4S'*.Q>.E#\DW!HX[ZJ/P8#5T_0S<L'=W@
M.QN[GC;[LM6'=&-5Z&8/H<TL;_#+#>O1%;9^V[B.^]P9[I(?J"IM=GYL?:%Y
MECQ@-LWQ%3[HSN#1\;Q9&L[DG:J16[2X0LJQ0HXL2]PPZ%N,09Z8SWCTE4H/
MR& Z^XM9,_53QY@NV*Y3V1W<90A197A2SF^>"$2F".>=Y"SD9%Q,J@B#POM'
M^%,H]X:.UU.#&&S@1QIGP08_RJR>'7+"P(([S=M!.*4+0,X6*Y5T,Z91I^=#
MN9! ^\Y'QU;LM7\$8M7B\P1C9.<K4@1\$]';H3$K&^.S$X58?.>NO$R5DQZ.
M+_GCHEN*98^!(\J2CR/@]#FS^<3,-3H>=MG!&)V$MUG\\R$E&LU+[V7_" UD
M>AOZIW;HGS6H._[W:.*W\9_SN>9_Q"8]SO\6T"OM-F"ZP%:OX=6K^></+_@D
M2_C0-2W]DS:KIH.TDO[$V\R,PP?@]W4#FRL?<(+XCQP]_3]02P,$%     @
MV8-75N+E_43W @  9 8  !D   !X;"]W;W)K<VAE971S+W-H965T,S,N>&UL
M?57?;]HP$/Y73IDV;5)+0J"_&"!!NVI[J(9*1Q^F/9CD0BP<.[,=4O[[G1U(
M645YR9WMN^^^L^\NPUKIM<D1+;P40II1D%M;#L+0)#D6S'14B9).,J4+9FFI
M5Z$I-;+4.Q4BC*/H,BP8E\%XZ/=F>CQ4E15<XDR#J8J"Z>T4A:I'03?8;SSR
M56[=1C@>EFR%<[2_RIFF5=BBI+Q :;B2H#$;!9/N8-IW]MY@P;$V!SJX3)9*
MK=WB1SH*(D<(!2;6(3 2&[Q%(1P0T?B[PPS:D,[Q4-^CW_O<*9<E,WBKQ#-/
M;3X*K@-(,6.5L(^J_HZ[?"X<7J*$\5^H&]NKRP"2REA5[)R)0<%E(]G+[AX.
M'*ZC=QSBG4/L>3>!/,L[9MEXJ%4-VED3FE-\JMZ;R''I'F5N-9UR\K/C.5])
MGO&$20N3)%&5M%RN8*8$3S@:^/S$E@+-EV%H*9KS"9,=\K1!CM]![L;PH*3-
M#7R3*:;_ X1$L^4:[[E.XY.(=YATH-<]@SB*XQ-XO3;WGL?KO8-W+-_?DZ6Q
MFFKES[&,&[S^<3S7/P-3L@1' 36(0;W!8/SI0_<R^GJ";;]EVS^%/IY3/Z:5
M0% 9S'.F\=Q58PHSMJ4FH=>KF4[/8&Y5LH:?I:MY<P8+)BKFZW]BJ/&:[6.I
MG0[^E"/<JJ)D<@L)$TDEF*78EK8SQC5L* RI2H-J0E 9V[PY5X(ZWUUR[5L$
MTW.V04T=#^R5DO=U[^I?E]Z8R=1IT0#N78"%#W"["_TF'^_<).Y(TLAH3*A@
ML%BB;HO&8WM8>.1F?9YI1.#2(CV7!4TY0;=STX./).*+1L0D[OB&ITB,MAQ%
M"E''G46=OO\Z?:$<*\'MENXCL4H;Z/4ZSI7$C1-1)R+Q_/8*\*6D^417*7B&
M<$U&6V3D?40[5D/A0><7J%=^OAGP==T,@7:W':&39G*\FC?S]X'I%:>[%)B1
M:]2YN@A -S.M65A5^CFR5):FDE=S^@V@=@9TGBEE]PL7H/VQC/\!4$L#!!0
M   ( -F#5U8=%?S,* ,  #0'   9    >&PO=V]R:W-H965T<R]S:&5E=#,T
M+GAM;(U5VV[;.!#]E8%V422 U[I8MN74-A W76P?6@1-MWTH^D!+(XL(16I)
M*D[_OD-*5IRL8_1%O,V<.6?$&2[W2M^;"M'"8RVD6065M<U5&)J\PIJ9L6I0
MTDFI=,TL+?4N-(U&5GBG6H1)%,W"FG$9K)=^[U:OEZJU@DN\U6#:NF;ZYP:%
MVJ^".#AL?.:[RKJ-<+ULV [OT/[;W&I:A0-*P6N4ABL)&LM5<!U?;5)G[PV^
M<MR;HSDX)5NE[MWB0[$*(D<(!>;6(3 :'O ="N& B,9_/68PA'2.Q_,#^M]>
M.VG9,H/OE/C&"UNM@BR  DO6"OM9[?_!7L_4X>5*&/^%?6<[C0+(6V-5W3L3
M@YK+;F2/?1Z.'++7')+>(?&\NT">Y0VS;+W4:@_:61.:FWBIWIO(<>E^RIW5
M=,K)SZ[?,RVYW!FX10UW%=,(%U_85J"Y7(:6 CBS,._!-AU8\@I8G,!')6UE
MX+TLL'@.$!*S@5YRH+=)SB+>8#Z&23R")$J2,WB30>[$XTU^7^[WZZVQFF['
MCU.".[CT-)RKF"O3L!Q7 96$0?V P?K-'_$L>GN&;#J03<^AK^^H HM6(*@2
M_D]\!!MF> Y,%G##16M?)KP3<#;$:0%?*H12":I7B@C6W08P: UM:EN!I6.-
MN9(Y%YSYVBJUJEUQ$!VKH.C8 'M 384-N:IK,C*.M?%\'43.1-X*[V^<0DD=
MB$NR16A(X['3&#X]'1*)/I1#.L1ZAE8HBB.5I=.R1#V&"RXIIFH-N9@1X&..
MC?5A/#ZP6K72FDM_S=PG=I_H..R?$$?Q:)%D-,NB49).:3*=C[(HA>M30J_Z
M_W.Q]YT!B[\.^:#>:"PQ<=GM;"\ACD?9?.Z'B1_F6=+]5FI:T"B+TG(F7N32
MYYUZ1'X/JNFT3^<P7<!L<K@3OQ]_,4E]_,7,#R2P$X"'J_>4+TK!>.HR,1O/
MW9".%_$0\#7[M+.?>OLL@U,5$AYULAKUSO=K0ZKI]W1-;=@=GH3KKA,^F7?O
MR4>F=YP2(K DUX@"!Z"['MTMK&I\7]PJ2UW63RMZUE [ SHO%66]7[@ PT.Y
M_@502P,$%     @ V8-75FW_G'N: P  &0@  !D   !X;"]W;W)K<VAE971S
M+W-H965T,S4N>&ULC59=;^,V$/PKA%H4,<!&$B514FH;L),KVH>[2Y/T#D71
M!UJB;"(4Z9!4G/S[+B5;20#'N1=KN>3,SO#3TYTV]W;#N4-/K51V%FR<VUZ$
MH:TVO&7V7&^Y@IY&FY8Y:)IU:+>&L[H'M3(D443#E@D5S*=][MK,I[IS4BA^
M;9#MVI:9YR67>C<+XN"0N!'KC?.)<#[=LC6_Y>[O[;6!5CBRU*+ER@JMD.'-
M+%C$%\O4C^\'?!-\9U_%R#M9:7WO&W_6LR#R@KCDE?,,##Z/_))+Z8E QL.>
M,QA+>N#K^,#^>^\=O*R8Y9=:?A>UV\R"(D U;U@GW8W>_<'W?C+/5VEI^U^T
M&\:F-$!59YUN]V!0T HU?-G3?AY> 8KH'0#9 TBO>RC4J[QBCLVG1N^0\:.!
MS0>]U1X-XH3RBW+K#/0*P+GY-R8[-LR/JM%?'9.B>19JC195I3OE+#J[8RO)
M[60:.JCG46&UYUX.W.0=[IB@SUJYC46?5,WKMP0A"!W5DH/:)3G)>,6K<Y3$
M&)&(D!-\R>@^Z?F2=_AN>,7%8^\/_;M866=@E_QWS.G DQ[G\2?GPFY9Q6<!
M' W+S2,/YK_\%-/HMQ,JTU%E>HI]?@LGL>XD1[I!'Z[7,?$GZ8^+?UOGX:4.
M.^P+H2K9P;(BM^&HT1*.-_1?H#.A(*4["T [04LFF:HX6O*U4,HS@(M_.#/H
M"UPYEQMFUIY#HTMM@=57^_0$5XZ%);DS3%G9R[ 8P6))9JUH1#6D^L&+ZJ$3
M5@P)3_G=",=__=HT%FF#KH3=Z[UC]UR-<F!'CD+\9@+VWCDX@2N+^0U1C]"?
M44QP1G,?)#G.L@2B,Q)/_"=.(DR2PL=QB0L:OZ$2ZI$KI\TSTBNK@;;BOCSP
ME5&!*"[+ ICR?(+.*$Y)-($*F$3E&Y(=,S 3[AF5N(3:<8Q)&0$L30$&+9J5
M$^A+TLA[B3_RDN L+7T04QS'J3=!BV(P ZDT&LP,EG_,3$1R,),E,5"D%%1E
M.(M W=[G.V:BDJ(XPCF 81H)P$J<^ZD<?(*7Z",O%!>%7XTRP0E,)60R[Z.D
M.$_SR8O;'[!1P#(F*,449C_&:0Y>""8%G1P,'G4!^@GP%SBE%)$T]QX*2B=[
M>\>.?_CJNFXY['__*%G4FQIN[C$[OGN+X;I_&3X\FI_A^ C8^)(W (W.\RQ
M9GB(AH;3V_[R7VD'3TD?;N#MYL8/@/Y&:W=H^ +COX'Y_U!+ P04    " #9
M@U=6(#"QB),"  "&!0  &0   'AL+W=O<FMS:&5E=',O<VAE970S-BYX;6R%
M5$UOVS ,_2N$-PPM8-2V\N$T2PPT[8KU4*!HM_4P[*#83"Q4ECQ)3MI_/\I.
MO Q(LXM-B>33HZC'V5:;%ULB.GBMI++SH'2NGD:1S4NLN+W0-2KRK+2IN*.E
M64>V-LB+-JF2$8OC<51QH8)LUNX]F&RF&R>%P@<#MJDJ;MX6*/5V'B3!?N-1
MK$OG-Z)L5O,U/J'[7C\86D4]2B$J5%9H!097\^ JF2Z&/KX-^"%P:P]L\)4L
MM7[QB[MB'L2>$$K,G4?@]-O@-4KI@8C&[QUFT!_I$P_M/?IM6SO5LN06K[5\
M%H4KY\$D@ )7O)'N46^_XJZ>D<?+M;3M%[9=[( %D#?6Z6J73 PJH;H_?]W=
MPT'")'XG@>T26,N[.ZAE><,=SV9&;\'X:$+S1EMJFTWDA/)->7*&O(+R7':G
M-JB<-@(MG'WC2XGV?!8Y0O;^*-^A+#H4]@Y*PN!>*U=:^*(*+/X%B(A2SXOM
M>2W82<0;S"]@D(3 8L9.X WZ.@<MWN _=;[!C;"YU+8Q"#^OEM89>AB_CI7<
M 0Z/ WJQ3&W-<YP'I :+9H-!]NE#,HX_GZ [[.D.3Z%G3R2^HI$(>@4'+3I&
M\R30<9J'3<\U"<PZ+/Q1KD18:4E*%6H]!6H"5DLT;2/.A"*_;BQ7A3UO^^(_
M"=P*)>@!%K#6NK! ;JBY<18^4AX+4S8FBZ5IF(YC>":- B'51N=H+3 6LG0
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
M[Y=4.[3+'HV]@)8Q^*J5VUCXJ&JL_P=(B-K C^WY7;*3B!^P.H,\BX&EC)W
MRX=Z\X"7OX!WPY]#<<!5#:%X+BW\O%A:9^@/^76LYAZQ.([H57-N6U[A/")9
M6#2/&"W>O,I&Z?L3?(N!;W$*?7%'*JP[B:!7<*17Q^B>!#Q.=X\L#_Z"2I/R
MK/.)W09AI24)6*@UB4!R5:$]!VH.-DLTH4%OA2)'W5EZ6?LN],LO&=R1OR'$
M&+8D\_[EEUIUENS7D(_C<IKV1C%B<(VDL8'(,Q3Q:%+ZM2SAGC]1#(L+-H(L
MGJ8,'K@Q7)';-,Z+E-9IF<,M.F&0)H>#UNA'$08(B\O)A-;I: Q705?$N\96
M6^$LE'$V'<,HSB<Y?*-R#4&5!8,LC5F:P;'W>0WC+,Y'$V_D<<ER.-;NY$":
ME'$=!I!_W$ZY7J7#Z3#C+GII_W/O!^17;M9"69"XHM#T;%Q&8/JATV^<;H/0
ME]I1><'<T)Q&XQWH?J6UVV]\@F'R+_X"4$L#!!0    ( -F#5U8KW!UEQ0(
M .@%   9    >&PO=V]R:W-H965T<R]S:&5E=#0R+GAM;'U446_:,!#^*Z>L
MFEJ)-2$D#!@@%=BT2:U4M6Q[F/9@DH-8=>S,=J#]]SL[D-&)\A+?V7???6?G
MN_%.Z2=3(%IX+H4TDZ"PMAJ%H<D*+)FY5A5*.EDK73)+KMZ$IM+(<I]4BC".
MHGY8,BZ#Z=COW>OI6-56<(GW&DQ=EDR_S%"HW23H!H>-![XIK-L(I^.*;? 1
M[??J7I,7MB@Y+U$:KB1H7$^"F^YHEKAX'_"#X\X<V> Z62GUY)QO^22('"$4
MF%F'P&C9XAR%<$!$X\\>,VA+NL1C^X#^Q?=.O:R8P;D2/WENBTDP""#'-:N%
M?5"[K[CO)W5XF1+&?V'7Q"94,:N-5>4^F?R2RV9ES_M[.$H81&\DQ/N$V/-N
M"GF6"V;9=*S5#K2+)C1G^%9]-I'CTCW*H]5TRBG/3F^5W'Q8HBYA@2L+ETNV
M$FBNQJ$E<!<29GN@60,4OP'4C>%.25L8^"QSS%\#A,2JI18?J,WBLX@+S*ZA
MU^U ',7Q&;Q>VVK/X_7>Q*,&%]QD0IE:(_RZ61FKZ;?X?:K;!BLYC>6D,C(5
MRW 2D!8,ZBT&T_?ONOWHTQFF2<LT.8<^?23IY;5 4&N8J[)2$J4USGO]7*=X
MGT4^S7M9(&2OR@A7QKHRN;LT1K?%#*R5( V;$=7.L%RA]J]SR2780M6&R=Q<
M^<=RGR[,F'PBW6Z5V'*Y@4QCSBVL6<8%MR]P 6G<B:*(C,2OR[9>G P[PW@
M<3_M),,!S%G%+1,@D/0':B7XACE-&XJ$M ]+Y4Y]:B_J=H8I,>@/.VF:P"T:
M0SK2FEHCW=A:<\O10#>EFD._].(]P']=7T \Z'>&2<]9:=))J;%3CQL>J:]$
MO?$SAHJJ6MI&B.UN.\9N&O7^"V]FX!W3&TYM"5Q3:G3],0U -W.E<:RJO)97
MRM)D\&9!HQBU"Z#SM5+VX+@"[7"?_@502P,$%     @ V8-75N$&XY!P!P
M\1(  !D   !X;"]W;W)K<VAE971S+W-H965T-#,N>&ULI5C;;N-&$OV5@C(9
M2 !AD<V[QS;@6W:]F&0-VY-]6.Q#BVQ9Q)!LA=WR9;\^IYH2)2>RUMB\4$VR
MN^[G5(DGS[K[;A9*67IIZM:<CA;6+H^G4U,L5"/-D5ZJ%F_FNFNDQ6WW.#7+
M3LG2'6KJJ?#]9-K(JAV=G;AGM]W9B5[9NFK5;4=FU32R>[U0M7X^'06CS8.[
MZG%A^<'T[&0I']6]LM^6MQWNIH.4LFI4:RK=4J?FIZ/SX/@BX_UNPZ^5>C8[
M:V)/9EI_YYN;\G3DLT&J5H5E"1(_3^I2U34+@AF_K66.!I5\<'>]D?Z3\QV^
MS*11E[K^5U7:Q>DH&U&IYG)5VSO]_'>U]B=F>86NC;O2<[\WSD=4K(S5S?HP
M+&BJMO^5+^LX[!S(_'<.B/4!X>SN%3DKKZ259R>=?J:.=T,:+YRK[C2,JUI.
MRKWM\+;".7MVTQ:Z4?0@7Y2A\8.<U<I,3J86HGG#M%B+N>C%B'?$!()^UJU=
M&+IN2U6^%3"%38-A8F/8A3@H\4H51Q0&'@E?B /RPL'1T,D+_Z>C=%69HM9F
MU2GZ]_G,V ZE\9]]/O<2H_T2&2['9BD+=3H"'HSJGM3H[/,/0>)_.6!O--@;
M'9)^=@_XE:M:D9[3VO:9 @@5;3WQZ HK8ZN"9%L2RA1%V.[SY*"N_9Y<RZZM
MVD>S45OU:JVKE&>%)]+07-> M3DFI$LU,]6YE(VKENQ"KPRL,A.70;X$?/'_
MX,VNV..M/Y\H2[PD\[%((\]/>1'[7IZF&S<I2KTD]"F,O4AD)#(O==N#,/+"
MP*W\W(ORC$7D7AJG=" M\9"6^,-IN=3-4K>JM68G25Q@UR_@3*-H?*%:-:_L
M7D =U+,_)0\+1<4;I=OHD=HHG:V5_J4D7:ZZ#DK>9"3(O2!/>9%X692X"'N9
M"(>,! &>9Y1Y"=XB'W%.]U9:1:&7I!%%7AZ%6 N1$)*4!CF%OA>%,0GA97X&
M^^8*:LL=K6/AB2B9T#A)\PD%G@BS0=TX#O!"I!&N09#C?:]M'/G\7.#!.,OY
MK?#",.5=7I )?AK'$WK05M9OR_H3A=B:"2Q$[HDXY$7@Y5@<J)UDJ)WDP[5S
M/9\KUY!VZ^:.K;]3A6Z+JJXDMZU]E7-8RSEZY:X$UF87NT C:=T3KE_9OG[^
M(1-!^L70MZ/[(S((X<KJ[I7FJE3=FPA1QP9:[4XO._U4N=X,'.]N^@N<L%O'
M,')K"ROF] #EPH]Y(;P\C_M:3*.<!6 FX?)'_:Q<QY_0O-/-,?UCU56FK-PS
MN.-\*"O$'P5>0"KRF^6XQCE?_3 "?E6Q<LEAM,&:/I!UU52V7T99@+UA$%$
M:KJWNOCNAH/R[8D 3HY#P247)JCB(<*;@A.@, %(I"+".HZ3H;AW0R&2E%R6
MQ!=*_8CN/LMF^>6*X')962[K)(H=1KCPHP#KO]U\?;@!8_K#P=BGVTX]54A!
M_4JKEJODL:W^"YM9UT ;TXW6."#0JB< TW\BX9U'+89$X I*$B1AG$;9!#+W
ME\%A-&W+?R@K1.!'$BE?,OKQ -S2 6[IA^&V818'LW-C%.B36^;72LX %%LI
MLP]IAQ7\F8[WH:K<J-X%X-:">FO!'PG[B"Y59S%8 VL5@ONJ9+<5QW(&[20;
MO6(C%O*)6ZOBB;FHH:>:5[Q98V_+,_P&OD5/\+U0UV+:OK://HC;JW?].@8:
MGR".@0M05&8';EP47H3& .1Z09C0>5'TEL->53WQ $KKAD<AL"B KSNVK2;U
MVZI:-LY;! Z%MT1X7CU:UG+];+LCC%*8&;P/S0Q-*(TCNEW_P=CDX14EGP,V
MH1<" -?-LM:OBD/JT(%_$46W@BT"3@38Q),)+&'*V1'!MCS+KH-=KQMO&.P!
MQA><3*(!Y@PI]@-&M8^$J=0XH1ES K9]=9RV%8RNB088H84&="F7H*/:(7A@
M!&T02KP/M\!WX$6T$S3:P ,[K#O?@<($3A,8ZXC6=]W\JS+(ZZ^R7O7ADURA
MDA,Z1G-WS37R FZYO\"CPZ)!=&'64W<<I'L+:0<5AZJ)Q8U%@A;/OUDX^7]*
M91Q@8$Q#'@]"9JG).NK.8'9K<"^">S>0WSY67*9KC\:8BT*?1Y$@\_P(B_7\
M9ZC5=@,T<&[9=R8^RES)?U5IN>J6FK>"Q$44]3-*F$\.Y&B7,>!VF'M9D+L(
MA)C+DOC=%/3[@]036=!'S/="</@!KLT&KLT^S+7?=EL+\^UZ"C9T!U[CR@<T
MRGUT>U#'^R/QFG&IU.N0<P<K^AGG3WUNMC&&*7&!5"HR ")HLI N2_H):.&C
MK7JQZ.#4N#^V1P?\^AAA7LC: 4:Z5C%3CU7+?[#XQI'P)\=U##TQC#/&50K;
MC2JI&'E,E#7Z9;F7R -,$&BX,&A]O%RY@:V62^.2TX]4;KD=9[CZ?!X@>)1^
M:Z8"5+8&AG"C-W-?S4QW/D,TJGMT'UL,.7[OOT@,3X?O.>?]9XSM]OYCT,^R
M0W@,U6J.H_Y1BG]+7?^!I;^Q>ND^:LRTM;IQRX62&%AY ][/M;:;&U8P?.4Z
M^QU02P,$%     @ V8-75JQ?O+DF!@  @!8  !D   !X;"]W;W)K<VAE971S
M+W-H965T-#0N>&ULS5A9<]LV$/XK.XHG8V=H"A<OQ]:,["1M9I+6M7,\=/H
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
M>W_0&VFP/?HNA/> WLAOP5MO[P)ZEF%J86C];C_@<S07T]M[ Y]KM4BCM_N
MS_6U,?Y_#'RN[VGD.C6R,_"Y80M6>GM7X',U#]';.P#?*)"_;<#7[O(,,Y [
M7\OP1CI&]*3:09-J!SOOG=1>5>+EI-FTUYO>+\VFMS/A[IUE>\+=%E_DOJ9G
M5G0TN?IR_#:'KM)>41 1T&^(/15?T><,\G#(Y4\[2AL=Q/>N;W37 OZ&LQ*S
M5W!4$:<LPP'T@X9I6/Y&Q<(.7=B)C3:J%G80 GFOLVJARA6J='$$)F%#0 D@
MZF_LV!W+$?MU/]A6KUB3#_;BD)_:+;<])A4V)A7VFM2DVC.+76J7J?2._L'2
MY*CA;?13RZJCG\"[9;:%<'/W0H=6B?S*-VO851&\G]PX@]VG@*58UI=D ;&O
M6"=\3'1294ZUR,)L#00X"S%9O6WWT%Q+C+HJ)S7_X*.RQ G;WIN*'[*/D[9>
M*5:2EC"=+-9Z)Y9YB.R3P#L4Z1%LTV-X*E^! D7I%H10I.,L8@1S@CX/+^6O
M@Z//(/:DKN[6[%T+M]V7,<62?>+ ]1/-EBHVU(RQSFJ>?R(*+,&)O;\P?;:G
M'<)8.]O>5DUT&F$_W>^6778ML4MHY B#%T-F+_-_66//X4D&A#BIRN: HT3U
M@U['ITJ;S03[K_+6&+$&^ =(A/!M9>J/+[ERN^[%/P)P#EU9A_5"V*!<II!1
MQ'\T$4UH1<8'"S(0S[6E%-UJ.D!'GBAUPW\72/79AMW:AKVS;322-!"+7V6^
MTVD;O71WK]/%20)[':9\%MZ#?N-4ELUJG&J*<A4WT UBH3""%O+ VV=$AM%3
M+16YA4T;(V_$V5SVJKY.N$S.@@](.[:4409,PI&[6#OPQ(T+30>6'YJ>:%KR
MJ2^;TH "V<&7=L?%@Q#F8[1<KN &,GC?L,U17\"VVL-&J_<\\&):YGDB>15;
ML4J230DZ%_!GG#-:[4&CY?[4<&[]P$GC]]EOSRVL/0XN=HGG_>3^=^*Y+HPB
M1!O62 <KFP<CNV8$VR._*0.L9^X>+!T98-6UG__M,4C4E83.U/DJV8P5G6)M
M#SC;TP=/YC7F'JF +MVN*<<.Z4-[HF/U'^G\>/KP@T<Y/6E#;>OD1;2(.C#7
MS^'^6QF!V 0>]&P#-\-\#DPPQ-=.OFT3N9;3F1&HS>)0)@:N:P)K86]B8!FN
M+;>"$':\WL#25A>LW<L+^V4&/U!0J")U&_QG]=:8U%.W(1XM&$W;CR8HP%@%
MAB\%*DA6^;!N%GOG!-./]Y,Z[KLC4T5]S_55S/>=D8KXH>^K>!_ZX=9H[\+V
MW.I<E*'V:55*V%)^0,:1! SUE57SM/E([5)]FM5V5U^XW6&V%$ET0A8PU(1M
MR@ Q]=&8NBEH+C_4FM&BH*ELK@B>$R8ZP/L%A<2[NA$3-)_N7?P)4$L#!!0
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
MY6A1&E)'R\1_EM^K8C2H&'E5O(7<'%J_([]""=)(Q<K,N&ACWKE9'3+[8(3
M?06E N<BR8\_>+ICTF)46H)%&R=J\*\4W\!25 >+2HM1:0D6;9R<P<52OXT]
MS[9@+*NRV>FN%F<^,+WC)7UJ?&EXXJQ&KI:1LQK-GE0X^KANC34:W";UV\T;
M*;(ZU:96;R$7335NB@V4:]/2K#&-=JE0VEUFD#QBI]Q33TIG[CKN:$F/G<HY
M6D8SGW*#1:5^CWIMBG%1%TY=4$TJ*BU&I258M'$.!J-*\9TJ1;6JJ+08E99@
MT<;)&>PJ]9O"Q!C5HED(U@I6=4YRLVQQUQ%4J_K"L*;/>U74<218M+'\@UVE
M?K]ZS>Z?K4^H/A65%J/2$BS:^">AP:I&^%8U0K6JJ+08E99@T<;)&:QJY+>J
MKZ]/?M#!*?$/*_(\3$,=2()%&^L_F-S(;W+;A_Q$@RQ\CS']E(/%]X^)AA[Q
M48TK%JT5/]C[^;X N6[>FU"DJ3[M;]C]T?[=C//FC81'QR_I:=*^83%@VA<^
MKIDTED"1'%8&&;X_-HMJV;Y#T>YH434O"=P)K471;&Z 92!M _/]2@C]L&,[
MZ-]D6?X/4$L#!!0    ( -F#5U85.$'@  ,  $L)   9    >&PO=V]R:W-H
M965T<R]S:&5E=#4P+GAM;*U676_;(!3]*\B3IDU:XZ]\M%UB*8E7;0^5HD9K
M'Z8]$/O:1L7& Y(T_WZ '2^)2%95?;$!GW.XYX*YC+>,/XL"0**7DE9BXA12
MUK>N*Y("2BQZK(9*?<D8+[%479Z[HN: 4T,JJ1MXWM M,:F<:&S&%CP:L[6D
MI((%1V)=EICO9D#9=N+XSG[@@>2%U -N-*YQ#DN0/^L%5SVW4TE)"94@K$(<
MLHDS]6_CD<8;P".!K3AH(^UDQ=BS[OQ()XZG P(*B=0*6+TV, =*M9 *XT^K
MZ713:N)A>Z]^9[PK+RLL8,[H$TEE,7&N'91"AM=4/K#M=VC]#+1>PJ@P3[1M
ML9Z#DK60K&S)*H*25,T;O[1Y."#XPS.$H"4$IX3^&4+8$L+7$OHMH6\RTU@Q
M>8BQQ-&8LRWB&JW4=,,DT["5?5+I95]*KKX2Q9/1DN05R4B"*XFF2<+6E215
MCA:,DH2 0%=HJ79:NJ: 6(;N,.'H$=,UH*E0.Z76:R<0KE)T#[)@*:,LWZ%/
M,4A,J/@\=J6*4<_D)FT\LR:>X$P\?H#N624+@;Y5*:3' JXRUSD,]@YGP47%
M&)(>"OTO*/""P!+0_/5TWT*/7T_W+K@)N_4*C5YX1L^V1K^F*R&Y^H-^V_+=
MZ/7M>OI4N14U3F#BJ&-# -^ $WW\X ^]K[9<O:=8_$YB1WGL=WGL7U*/'HAX
MOLHX "*5!*4O$<<2; ELA*Z-D#Y%-Y'7\_R;<.QN#E-CAP6#8UA\!A9TL",[
M@\[.X**=F&Q("NHWW!&@J<W%P#:O=Q+=W([JGWCXG]:1A6%G87C1PB.C6!)*
MY YE:B\S+FPVAI:IPS XL6%'W9S8:% WQRB[B5%G8G31Q).I,Y!>X0UP5381
MO-2JPD&**,FLN^NRWC7: ;9F8OY68OP&8I,+]Z#,E,!S4ZX%,@=2<QYWH]V-
M8&H*X<GX3-T4FL+^3Z:Y9MQCGA-542AD2M+KC=16XTWI;CJ2U::8K9A4I=$T
M"W7; :X!ZGO&F-QW] 3=_2GZ"U!+ P04    " #9@U=6!&6CB3@"  "^!
M&0   'AL+W=O<FMS:&5E=',O<VAE970U,2YX;6R%5%]OTS 0_RJG,*%-@B7-
MV@(CC;2N0IO$1+5I\(!X<)-K8\VQ,_O2C&_/V>FB@KKQDOCL^_TYYRY99^R#
MJQ )GFJEW2RJB)KS.'9%A;5PIZ9!S2=K8VM!'-I-[!J+H@R@6L5IDDSC6D@=
MY5G86]H\,RTIJ7%IP;5U+>SO.2K3S:)1]+QQ*S<5^8TXSQJQP3ND^V9I.8H'
MEE+6J)TT&BRN9]'%Z'P^]ODAX;O$SNVMP5>R,N;!!]?E+$J\(518D&<0_-KB
M)2KEB=C&XXXS&B0]<'_]S/XEU,ZUK(3#2Z-^R)*J6?0Q@A+7HE5T:[HKW-4S
M\7R%42X\H>MSITD$1>O(U#LP.ZBE[M_B:7</>X T?0&0[@!I\-T+!9<+02+/
MK.G ^FQF\XM0:D"S.:G]1[DCRZ>2<93/6\<[SL&EJ5=2"W]5#HX72$(J=P+O
M8=%24<'2=&CA"*2&&ZF4S\IB8@.>)BYV8O->+'U![%M!IY!.WT&:I".XOUO
M\=')WS0Q^Q^*2(<BTL![]K\B+HK'5CH9OO?/K[P'UX2U^W7(:D\Y/DSI9^'<
M-:+ 6<3-[M!N,<K?OAE-D\^O&#X;#)^]QIXOT1:HB;L>S!IX5AP)74J]@4(T
MDH0"5PF6Y:;E@BR6APKH)3X%"3][VWR4Q=L#KL:#J_&KKO9OK[&RP$.J/<5D
M3S6=_",;[[6CG^P;83>2NTKAFD')Z0=&VWY:^H!,$SIT98C[/2PK_L&@]0E\
MOC:&G@/?],,O*_\#4$L#!!0    ( -F#5U;L?+Q0PP,  )$-   9    >&PO
M=V]R:W-H965T<R]S:&5E=#4R+GAM;*U776_;-A3]*X1:# G06M]?F6T@CCIL
M#RV">MD>BCXP$FT3H425I.WLWY>D9%66:,? G(=8I,XYY+FD+B^G>\I>^ 8A
M 5Y+4O&9M1&BOK-MGF]0"?F$UJB2;U:4E5#()EO;O&8(%II4$MMSG,@N(:ZL
M^53W/;+YE&X%P15Z9(!ORQ*R_Q:(T/W,<JU#QU>\W@C58<^G-5RC)1)/]2.3
M+;M3*7")*HYI!1A:S:Q[]RYS-4$C_L%HSWO/0%EYIO1%-?XJ9I:C9H0(RH62
M@/)GAQX0(4I)SN-'*VIU8RIB__F@_H<V+\T\0XX>*/D7%V(SLQ(+%&@%MT1\
MI?L_46LH5'HY)5S_!_L&&Z<6R+=<T+(ERQF4N&I^X6L;B![!C4X0O);@#0G!
M"8+?$OQ+"4%+"'1D&BLZ#AD4<#YE= ^80DLU]:"#J=G2/J[4NB\%DV^QY(GY
M)\@J7*TY>$0,+#>0(7"3(0$QX;?@(WA:9N#F_2UX#VS U5L.< 6>*BSX!]DI
MG__>T"V'5<&GMI#S4:IVWHZ]:,;V3HSM>N SK<2&@T]5@8IC 5L:Z=QX!S<+
M[ZQBAO()\-T/P',\SS"AA\OIKH&>74YWSKCQN[7QM9Y_^=I\NW_F@LF/Y;LI
MW(U<8)93&>2.US!',TNF"([8#EGSW]ZYD?.[*537%,NN)'84QJ +8W!.??Y%
M9D]<Y;1$II@UW%!S59+<S5W'3;UD:N_ZT1C#$L<+PF-4-D:%<>($'>IH_F$W
M__#L-KC?(293,) .2IDIF\_PSN0EO.;Z7U,LNY+84?RB+G[1V?5?0(YS<+/7
M1P J/L(VGO(4Y$)F+OF)M4&]!3?X$.!;4X";@:+^9G&3.'8<9[!=C$!_#,Q,
MP#CQ^L CTW%G.CYK.L-DJTY44%.!*H$A.=X_8,5H">3QDK\ 6JLCF+]E/AY-
M-30X-Z#2L>TQ*O)/>DXZS\G;GE%QG:5.# N3^L'8L F8I-'8LQ$8A"=MIYWM
M](+]C0Z'12T/"]X<Y-)A00F!K-=K--L,$/>SVR0<IL Q*)K$ U V!@63U#4;
M=)U?18IST<K^+Y/M& .7?MK_&U@V4*3G8=8WH())DIPPW:O,W+.FET<?)WK-
MR5962<V'6YP.2 Y)OB505]5O[/%V OTMZ861.]SA!I@;ADDT#,,8EB;1\/"S
M>[5JB=A:U_Q<)J=M)9I"K^OM[A7WNIH>]"_4?4/7P+]DFLO*9\C66(:,H)64
M=.2"68 U]7_3$+36%?$S%;*^UH\;>6="3 'D^Q652;-MJ &Z6]C\)U!+ P04
M    " #9@U=6@.0&>3X%  !%&@  &0   'AL+W=O<FMS:&5E=',O<VAE970U
M,RYX;6S-6>]OHS88_E<L=IKNI+9@\[M+(K7A3MN'V[JV=Z=IV@<7G 05< X[
M2?O?SP8* 0S+(J3M2POD>1_\O+;?]P%F!YH_LPTA'+RD2<;FVH;S[;6NLW!#
M4LRNZ)9DXI<5S5/,Q6F^UMDV)S@J@M)$1X;AZ"F.,VTQ*Z[=Y8L9W?$DSLA=
M#M@N37'^>DL2>IAK4'N[<!^O-UQ>T!>S+5Z3!\*_;.]R<:;7+%&<DHS%- ,Y
M6<VU&W@=(%,&%(BO,3FPHV,@I3Q1^BQ/?HGFFB%'1!(2<DF!Q;\]69(DD4QB
M'-\K4JV^IPP\/GYC_U2(%V*>,"-+FGR+([Z9:YX&(K+"NX3?T\//I!)D2[Z0
M)JSX"PX5UM! N&.<IE6P&$$:9^5__%(EXB@ .@,!J I W0!K(,"L LQ3 ZPJ
MP"HR4THI\A!@CA>SG!Y +M&"31X4R2RBA?PXD_/^P'/Q:RSB^.(K3G:XG($L
M K_O<!*O7N-L#6["D.XRSL E>!"++=HE!- 5^&?\^X!P'"?L@XC\\A" ]^\^
M@'<@SL#CANZ8B&(SG8N1R_OK837*VW*4:&"4$('/-.,;!CYF$8G:!+J07.M&
M;[IOT2AC0,(K8,(+@ R$% -:GAX.%>'!Z>'&B!JSGD6SX+,&^.X)(_F> %$'
M ,,)82"*63D?JF2/DLE*<\VV."1S3922@EA;_/@#=(R?5(F:DBR8B*R51*M.
MHE6PFP-)?/BXK)?Z!8#HTO OQ++;$U'FN%S S=J_242]Q%DH$BVW095^!OZ\
MITD"1$$ZX#SZ2Y5Z:\K43TD63$362KU=I]X>7;^W.)'9!+=D'6>9+">BU/Q!
M<*Y*84EE%U2RK>U%>; ==Z;OCW.C0)FVY;=1@0+E>)Y9HUIJG%J-,ZKF5]&N
MEQN<KTD$. 5+RGBY3CZ^B';-B')/EI1.:[RN;9L=60H8=""T.KKZ,-\T?4^M
MRZUUN>>N@<<<9RPI-@>[$/LA3#!C\2H.RTN%^IOP^RYF<7%!E0&W-^9+65M;
M\A48,5\=\7T0M-7*O5JY=ZYR.=G?\IB3R]]6*P9$ 0[>2B]XQ,\D4TGU^C*@
M:2"SHV2IPD'',KJ*%3C?<2U7K=JO5?LG[4K1<\?VH]]/M^\YW9E3H/J[-E"@
M6KNVI0,:C<DQ3NZ/<;87]9SFKX ^,2IZ94B$2*4G&27]M\5Z4K9@*K9V0H]<
M(_SO>V4UAJGR/R5;,!5;._^HR3^:KF%67.V]YW>+R%(),U!WBRI@'C('6B9L
M'"P<M[!G-<V*\W@LCN_WA"E0M@F[NOHHRS&&2D]C*N'9QFF*IEG=O=TUW:X9
M4J&@Y70ST$=!RX4#&6B\'1PU=Y,WS^IV;1-@R>>HMF8%S+:-KE-2P1#RG '5
MC0>$XR;PQ.8)5;X/&7Y7C +6W\*!$G:\A=MB&N,'1YU?JW^*<BW6+7]5JCG;
M0"HK]I1LP51L[10V#A)Z_X..>;:-5>9_2K9@*K9V_ALO"T\SLZ=US+X/]?W>
MLY@*9?B]JJKPM 8:\K2H\;1HW-.>U3 KSO;SHR@D'64JF.'VK( "YEG.0.E$
MC;E$9YNG*5IF=?=VQ;>L;@H4*%&9NQGHH]#08Q=JW!T:=7>3=TS4MVSR.=+N
M=AD5SG>[3Z6!$N8-SGMC =&X!3RQ958LQR]M?-/J+6$%JK>% Q7J> N72O2C
M]^LI$3M.?J=@H$A[^<JYOEI_"[DIO@!TKM_"ZZ#\HM'0E!]8/HN-'(L%G)"5
MH#2N7#&DO/QF49YPNBW>XC]1SFE:'&X(CD@N >+W%:7\[43>H/YRM/@;4$L#
M!!0    ( -F#5U9,3=CR4@4  -XF   9    >&PO=V]R:W-H965T<R]S:&5E
M=#4T+GAM;+V:76_;-A2&_PJA%4,+=-&7[5B9;2"Q5#1 ,V3)VEP,NV DVA8J
MD1Y)V3&P'S_J(Y+E,8S='>0FEA2>A^3[BJ2.Q,F6\>]B18A$3WE&Q=1:2;F^
ML&T1KTB.Q1E;$ZK^LV \QU*=\J4MUIS@I K*,]MSG)&=XY1:LTEU[9;/)JR0
M64K)+4>BR'/,=U<D8]NIY5K/%^[2Y4J6%^S99(V7Y)[(K^M;KL[LEI*D.:$B
M911QLIA:E^Y%Y W*@*K$MY1LQ=XQ*KORR-CW\N0ZF5I.V2*2D5B6"*Q^-F1.
MLJPDJ7;\W4"MMLXR</_XF?ZIZKSJS",69,ZRAS21JZDUME!"%KC(Y!W;?B9-
MAX8E+V:9J/ZB;5/6L5!<",GR)EBU($]I_8N?&B'V MS1"P%>$^ =!@Q>"/";
M /_8@$$3,#@V8-@$5%VWZ[Y7PH58XMF$LRWB96E%*P\J]:MHI5=*RQOE7G+U
MWU3%R=DWG!6XMHPFZ/<"9^EBE](ENHQC5E IT"_H,DG2L@C.T#6M[\TRX'U(
M)$XS\4$5^7H?HO?O/J!W**7HCQ4KA,*)B2U5$\N*[+AISE7='.^%YK@>NF%4
MK@2*:$*2/L!6?6L[Z#UW\,HS$D,2GR'?_8@\Q_,T#9H?'^YJPL/CPQU->'1T
MN!L8Q/!;M_V*Y[_ >S;U(_J-2:)^OC!,167]IY1B&I?.WY&8I!O\F!'TYQ<%
M0->2Y.(OG9EU;0-];>4<=R'6."932TUB@O -L68__^2.G%]U1D#"0DA8! 3K
M639H+1N8Z+-KNB%4,KY#[%&PC(B8T)B@IB+M$*N!PPI8+A2;F>NKA6-B;_;E
MUI3R@L-2H;%QI^H(!.OI.&QU'!ZIHYJ;E@2M"4]9HI//S/'1CF"NTWUN##SU
M!H:$14"PGO"C5OC1D<(W[%)Z=1-+Y8)._IH6[-^7!W>NL;Y3=8:$14"PGL[G
MK<[G1IUO.4N*6*(MYAQ3N5//8#%7ZWESIR.V0.1)/5\*(M00($FY4L<XBXNL
M6LYU5I@K5&MU7JW5NK%@##W5(TA8! 3K>31N/1K_+X_4PQ42.#O>(7-U1H>,
MH:<Z! F+@& ]AX+6H< HV4/CC$[LX#\K9N /#I?5NM!HOU P] ]656,;3I4+
M"-:3RW6Z_,$Q"G:3TC0O<NVCOC'RU,=#4%H(2HN@:'T/]G(X]TT?ZYOJH(R#
MI(6@M B*UC?.ZXSS?FP]R/#2\(3Z"M4WS/KFT)/-@*1%4+2^&5UN[!KSN-D-
M?GIQ)@--=$%I(2@M@J+U/>B277?PMC,99/XZ!Z6%H+0(BM8WKLNN77-:_*,S
MF9DZ,LUDH.DV*"V"HO7-Z#)NUYQR/ZQ81I:,)0+]@TS3&F3R.P>EA:"T"(K6
M-Z1+S=WSMYW6(#/B.2@M!*5%4+2^<5V^[IZ8L!NFLE=R\>J]H59^T$P<E!9!
MT?KR=\FX:\[&;S&7^J](D!GT')06@M(B*%K_XUF7WGO.F\Y<'N@[ 5!:"$J+
MH&A]X[IW IXQ=3UEYGJ%%#@HP3OM,Y@Y\F3]05-[*%I?_RZU]\Q)^%WSL:-[
MI9NDHAY+6@\@,^DY*"T$I450M+XO79;OO>TG< _TU0 H+02E15"TOG'=JP'/
M_"&\&5!"-Z(0HVA=3W@"B56Z7I,$%30AO+R<LV;WBCI><ISK!Z#F>W@P'AU^
M>]05\X:C\X,7_+IB_G 0](M%NF*C\;C[7%!K9>_M[\D)7U8;JP2J^EYO]6FO
MMINW+JLM2W97O-[Y=8/Y,E7W>T86*M0Y.U=U\WHS57TBV;K:+?3(I&1Y=;@B
M6"E9%E#_7S U;)J3LH)V2]OL7U!+ P04    " #9@U=6 ^]BXIX"  #Z!@
M&0   'AL+W=O<FMS:&5E=',O<VAE970U-2YX;6RM55UOFS 4_2L6JZ96Z@J8
M &U'D-I$U?HPJ6K6]6':@P,WP:JQF6U"^^]G T%I2K,^[ 7\<<_Q.=?V==((
M^:0* (V>2\;5U"FTKBY=5V4%E$2=B0JXF5D)61)MNG+MJDH"R5M0R5SL>9%;
M$LJ=-&G'[F2:B%HSRN%.(E67)9$OU\!$,W5\9SMP3]>%M@-NFE1D#0O0#]6=
M-#UW8,EI"5Q1P9&$U=2Y\B]GD8UO WY2:-1.&UDG2R&>;.<VGSJ>%00,,FT9
MB/EM8 :,62(CXT_/Z0Q+6N!N>\M^TWHW7I9$P4RP1YKK8NJ<.RB'%:F9OA?-
M-^C]A)8O$TRU7]3TL9Z#LEII4?9@HZ"DO/N3YSX/.P!_\@X ]P#\44#0 X+6
M:*>LM34GFJ2)% V2-MJPV4:;FQ9MW%!N=W&AI9FE!J?36[X!KH6DH- 7M#"'
M)*\9(+%"VYF74S2KI31M=#P'32A3)R;T83%'QT<GZ A1CGX4HE:$YRIQM1%E
MJ=VL%W#="<#O")A#=H8"_Q1A#^,1^.SC</\UW#6I&/*!AWS@EB_X1SY>T)RJ
MC E52T"_KI9*2W/B?H_YZP@GXX3V%EZJBF0P=<PU4R WX*2?/_F1]W7,[7\B
M>^4]&+P'A]C3&\JI.4DY6@N1*V3V$U5$ZM%-[9C"ELE6BDT:^#C&4>)N=NV\
M#<-Q'$?>$/9*Z&00.CDH]-%4!GOL*BDR4*/Z.H)H=V&,XV!/WDC4Y/PB'%<7
M#NK"@^KN26-NJ 9)"1O5%KY9U8_#<+*G;23J'$=X7%LT:(L.:MNYU!STF+CH
M[<:&. SW,S<2AKT+/]Z3Y^Y4)OLJ?"=R3;E"#%8&Z)W%AD%VE;;K:%&UQ6HI
MM"E];;,PCQ-(&V#F5T+H;<?6O^&Y2_\"4$L#!!0    ( -F#5U;,6@'A#@8
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
M9&&HZA>$'XFQ_/TWZ%E_Z)(T)5@X$5@K@4Z50&<(O4K@:U7[":9K K $<D?
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
MLF^(M=\EP7AXP[[ONQV!+3L/Y2%@TS>PZ0?'5@E.,=656C-]!E-]>!^P0R7
M0@3@+-BT;XR&)7T8 :M2Z'P_ LMV'NA#P*9O8-,?'UN=..535VK-]!D^]>']
MP YU @N!=7((B P,1 8P^YDZZ74_ JMW'6]7:LU<&-H,\)&52^"43UVI-=-G
M^#2 -T-?7B[/"$&W[[!IWQ@-1 8P^YERZ7=# LMW'O!#X&9@<#/PCZU>G%*L
M*[5F^FH_UH>W3#O4"RR$"5 O3E%S6'OI1R\5B_)=*(FF8IVIS?L_V[/;]ZW.
MR[>,AJ;YYF6M&Y8OXDRBA,^UJ?=VI!W--^\_;0Z46)6O$-T+I=>E\N.2:W3+
MBP;Z^[D0ZNF@Z&#[%MKD/U!+ P04    " #9@U=6=M9?9 D%   >(   &0
M 'AL+W=O<FMS:&5E=',O<VAE970U.2YX;6S-FF%OFS@8Q[^*Q4VG3;HUV"0D
M]))(;:K>*MVF:NWN7ISNA0M.X&IP9IMD/>W#SR84PG#=)")2WC20X+__SX,?
M^X?I>,WXHX@)D>!;2C,Q<6(IE^>]G@ACDF)QQI8D4[_,&4^Q5*=\T1-+3G!4
M-$II#[FNWTMQDCG3<?'=+9^.62YIDI%;#D2>II@_71+*UA,'.L]??$X6L=1?
M]*;C)5Z0.R*_+&^Y.NM5*E&2DDPD+ .<S"?.!3R?>46#XHJ_$K(66\= A_+
MV*,^N8DFCJL=$4I"J26P^EB1&:%4*RD?7TM1I^I3-]P^?E:_+H)7P3Q@06:,
M_IU$,IXX(P=$9(YS*C^S]0=2!C30>B&CHO@+UN6UK@/"7$B6EHV5@S3)-I_X
M6YF(K0:P_T(#5#9 NS;PR@9>$>C&61'6%99X.N9L#;B^6JGI@R(W16L539+I
MVW@GN?HU4>WD]":3.%LD#Y2 "R&(%. ]N(BB1.<84W"3;4:*SOC;*R)Q0L4[
M=<F7NROP]LT[\ 8D&;B/62YP%HEQ3RI+6K@7EMU?;KI'+W1_1<(SX,'? '(1
M,C2?[=X<-IOW5"*J;* J&ZC0\U[0NU-5$N4J%VP.+L*O><))I'*@AD62)9*\
MIVK(14"%"JZ++T [?0]/X"/^CW$PHU@(\,^?J@MP(TDJ_C6E9^.G;_:C:_A<
M+'%()HXJ4D'XBCC37W^!OON[*5D=B352YU6I\VSJTT]JR@DQYT])M@ K3/,B
MB4F5'Z$&MHS!<RI!+L@\IT!GU#AN-KT-BM[T7+2:0G\PZJN[O-H.V7#9<!CX
M?G59(YA^%4S?&LQ%&.9I3K'4=SME7";_%S5@,KI1\K<<^/W ^]EGO^6S'P3!
MT&QS4-D<6&V^4#27@Y8E./!<]R=+5NT#1XM?.?=?<^Z9G/L[.;=J'^A\6#D?
MON:\;W(^W,FY5?M YZ/*^>@UYP.3\]%.SJW:!SH/*N?!:\Y]D_-@)^=6[0.=
M0[=>7UVK]WN.(P(^X53-@-_!'^H,4VI<**TZ^RX%7:DUH]ZB"GAB"VEIJ*OT
M=:363%^-(="Z5$]GC854;%;2:NG<)$\6 RO3 \N8#]0J#L]OU8;=QZ%QULP
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
M<^9V!:Q5?J727_TF]NTP')N;7?!>ZX'@7@ONG0+WNL!K5; #[EFCT0%XK_5
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
MKJ,!5<0O CMQ=(^TE3EC3WKQ?3&R'*T(*&124V!UV<(8*-5,2L??/:G5Y-3
MX_L#^]?*O#(SQP+&C#Z2A5R/K-A""UCB#95W;/<-]H9"S9<Q*JI?M*MCP]!"
MV49(EN_!2D%.BOJ*G_>%. *XP0F MP=X[P7X>X!?&:V55;8F6.)TR-D.<1VM
MV/1-59L*K=R00K=Q)KEZ2Q1.IM=9QC>P0+<$SPDEDH! YQ.0F%#Q"7U&#[,)
M.C_[A,X0*=#]FFT$+A9B:$N56S/8V3[/39W'.Y%G MDE\MT+Y#F>9X"/WP]W
MW\)MY;BQ[36VO8K//\$WQ2]X3I57Y095-<!4H-_7<R&Y^F?],1FL&0,SH]YN
M5Z+$&8PLM9\$\"U8Z<</;N1\,=G]3V1OS/N->;^//9UABKEJ] 7:J9U:UV#.
MBHT 8V-KLK BTZ?"-O4'8>(,[>VQ(5-4$'E-U!NE0:,TZ%5Z"VJ'(KK_;[Z8
MU-4$T5'>((K#ECA34!B:M86-MK!7VSU^-M<K["3S B]J*>H&N8ESHEI1HRCJ
M5?2(.<>%N4Q1)U_B!^T>&H*2T#>+&C2B!KVB[D 2#NK@EZCD;$OT^6\2..A6
M+8SCED!#4!(-S +C1F#<*W!<';+ U>%?,D&DL:=Q)W'H)H.6NFY0Y,<GRI<T
MZI)>=3_E&KA)4=+M51AX+47=(-?Q'-<LR75>9X;3*^HP-.CKT#!.!*=S)@Q<
M/VHWU13FAUZ[</;1D--?&#\P7Y%"( I+A7,N!XJ UT.[7DA65G-OSJ1J<'6[
M5A\ZP'6 >K]D3!X6>I0VGT[I/U!+ P04    " #9@U=6%^=YO:0#  "-#@
M&0   'AL+W=O<FMS:&5E=',O<VAE970V-BYX;6RU5VUOVS80_BN$5@PMD$;O
MBI79 A:Y10-X0U"GVX=B'VB)MHE0I$?2=@KLQ^\H*8IERYJ[:5]L4;I[^#S'
M._(XW@OYI-:$:/1<,*XFUEKKS:UMJVQ-"JRNQ89P^+(4LL :AG)EJXTD."^=
M"F9[CA/9!:;<2L;ENP>9C,56,\K)@T1J6Q18?KLC3.PGEFN]O/A,5VMM7MC)
M>(-79$[TE\V#A)'=H.2T(%Q1P9$DRXGULWN;NH%Q*"U^HV2O#IZ1D;(0XLD,
M[O.)Y1A&A)%,&P@,?SN2$L8,$O#XLP:UFCF-X^'S"_K'4CR(66!%4L%^I[E>
M3ZR1A7*RQ%NF/XO])U(+"@U>)I@J?]&^MG4LE&V5%D7M# P*RJM__%P'XL#!
M"\XX>+6#=ZF#7SOXI="*62EKBC5.QE+LD336@&8>RMB4WJ"&<K.,<RWA*P4_
MG<P$7[U_)+) 4[+0Z#V:0Z+D6T:06**CCV^G1&/*U#LP^S*?HK=OWJ$WB'+T
MN!9;A7FNQK8&3@;9SNKY[ZKYO3/S3TEVC7SW"GF.YW6XIY>[NVUW&R+1A,-K
MPN&5>/Y9/-!YSY666\A5C;[.P #=:U*H/[K$56A!-YHIP5NUP1F96%!CBL@=
ML9(??W CYZ<NJ0.!M83[C7"_#SU)\89JS! C4!-(+!A=85-GG4M:084EE-DG
M=HD7C.W=H993DS!J3%H,@X9AT,OP41A^.2Q0%Z7*-SJ8SW?<./2.:)V:>5$<
MAD$WM;"A%O92FQ&EH%BE-"D#6\M64DU)9^C"$P)NZ#CQ$<U.*]_K9ADU+*,+
M LA,36M3T^="&9VN[BB* _^(8X=9&(3>&9(W#<F;7I(?*<<\(VAF\O *S2A>
M4$;UMRN45O&]0G.-H1Y-J&&+JNPI"'L0BI8GP]</S]J<,PO8Q#YPJ&-99G)G
M_?:3N7Q=TP& 6O$:-?$:_<MX_2IX]G^$K)_/A4F6_E>45K#B)EAQ/VQ?VO>Z
M?N]6/A!82Z7KO)[ISJ"G6 TWD/:AT-KB#QH:M[_6_G&#JP':YU<<>Z.C':[+
M+@J#>-2]Q;FO38;;>Y0GY7) )::2Y%2CO] =YD_0%.\$VU&^0EGU?HFSLI8[
M-0S:>0R%UH[':^_A^L/F:V\O\]WB!T)KBW]M:]S^ON:"? U.FRFXICG'Z7IJ
M%AQ:5?SL@[N"N:C]@N6*<@6-WQ+<G.L;\)?5W:<::+$IKP\+H>$R4CZNX;Y(
MI#& [TLA],O W$B:&VCR-U!+ P04    " #9@U=6\P@3PT@'  "Y/@  &0
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
M)-3^QN$[@:W86R,=R8*Q)VW<9A/+T8*@@%1J!JP>&[B!HM!$2L;OAM-JK]3
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
MW#272X)SPC5 O9\S)G<W>H'VGQ*S_P%02P,$%     @ V8-75@)[&ZT*!0
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
M. 6F!LCK:TK%OJ$FZ,IKX6]02P,$%     @ V8-75KS9&JRQ#   )IP  !D
M  !X;"]W;W)K<VAE971S+W-H965T-S4N>&ULQ9UO;]NZ%<:_"N%=#+W ;:S_
MMKLD0!N26X%US9K;70S#7J@VG0BUI5Q)3IKA?OA)LF*:CGPL&D_@-ZWMD#])
M?(Z.J,>'\OECEG\O[I0JV8_E(BTN!G=E>?]N."RF=VH9%V?9O4JKO\RS?!F7
MU=O\=EC<YRJ>-9V6BZ'G.-%P&2?IX/*\^>PZOSS/5N4B2=5USHK5<AGG3Q_4
M(GN\&+B#YP^^)+=W9?W!\/+\/KY5-ZK\>G^=5^^&&\HL6:JT2+*4Y6I^,7CO
MOI/CID/3XE^)>BRV7K/Z4+YEV??ZS<?9Q<"I]T@MU+2L$7'UWX.Z4HM%3:KV
MX_<6.MALL^ZX_?J9+IN#KP[F6URHJVSQ6S(K[RX&XP&;J7F\6I1?LL>_J?:
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
M8G@ZMNS6RM$G-9@04#\ "DTEI/8#2#\_X&+]6?:C_&&.6).VT:Q/9S 5H%8
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
M&S-?X68,>J%""\H_&85)Q632RN2>L$CO<)U$)IUAZ$2$;8B:\=/*^.G_62C
MXKY+9-HPR1*>)JBYCL(FJ+:.:ORN*W[7K85SGV;H0= (;/9?7[* 7E)9>"%E
M-;]A[] R>.V9T5$Z/R#8^S8SOLWS).9)0H1$&8@B9ZPI4\X\J17#P0B_29I^
ML- "&XX'TXD]<?!1SX3[5-=S>.+.)=\-"5LA=6[^@9O?K_J>PZZ8 OM=8>R'
M"VVX8#HPW9N5[*%WPJVM1E6@S^$:=$>R$Q*V0NKD#HT.[NAT3A;N<^@.^RW0
M7K"P$U:G?NA^<'O[L]^[2IIDJ0\T_VWOPLVVQK)Y65"6W<N".KU]X4.;A'OU
M219RY\1WW"^^O6!A)ZR@[AZ=7U,0Z_P>0**(;YDJSG75V^JNX38_8;]Y?V?N
M(/)S\4%-<8'QA0B]2TF4P$JK] 83'1-1W D4 \6S_)2\Y$J?N?/'#9 8A 'H
M[RO.U7Y@)JAN9A8_ 5!+ P04    " #9@U=6GD 3"DP$  !\%P  &0   'AL
M+W=O<FMS:&5E=',O<VAE970X,"YX;6S-6%USHS84_2L:NM/9G7',ES]3VS-)
M3*<[T^VZR;1]Z/1!@6M;$T!4$G'27U\), :;L)#JH7F( =US=.\]TH6KQ8&R
M)[X'$.@E"F.^-/9")->FR?T]1)@/:0*Q'-E2%F$A;]G.Y D#'&2@*#0=RYJ8
M$2:QL5IDSS9LM:"I"$D,&X9X&D68O=Y"2 ]+PS:.#^[);B_4 W.U2/ .'D#\
MEFR8O#-+EH!$$'-"8\1@NS1N[&O/'BE 9O$[@0.O7",5RB.E3^KF<[ T+.41
MA. +18'ESS/<01@J)NG'WP6I4<ZI@-7K(_N/6? RF$?,X8Z&?Y! [)?&S$ !
M;'$:BGMZ^ F*@,:*SZ<AS_ZC0V%K&<A/N:!1 98>1"3.?_%+D8@*P''? #@%
MP#D#R,PT ]P"X'8%C K J"M@7 "RT,T\]BQQ:RSP:L'H 3%E+=G419;]#"WS
M16*U4!X$DZ-$XL3J05#_"7U-E&H<7:$'N1*#- 1$M^@7&E_]FN*0; D$J&[Y
M-15<X#@@\0[)'^2] /,)QX\2^G$- I.0?Y)\D@.=.$[S?$ FXGO,@"],(>-0
MWIA^X?-M[K/SAL^V@[[06.PY\N( @CJ!*1-09L$Y9N'6:65<@S]$KCU CN4X
M#0[==8?;#?!U=[C5 /<ZP^UY2S+<<DFX&9_[UI)0LERIW1>@.QK)DL2QDFV
MLA&.;E*QIXS\(\=3*0"K+0VT"7',!\<% 6C#B _H'L<[0'_^+.="GP5$_*\F
MW7/'1LV.J9IYS1/LP]*019$#>P9C]?UW]L3ZH4DSG61KG62>)K*:NJ-2W5$;
M^^JX!6EE W\D<;$9/S6IDA-.,D+UXGE>V98E%^IS-=N71LZ%T?K2R+TP\BZ-
MQF[%J!;UN(QZW"EJJ):I]JC'7:*^-&J(^M*H(>I6_]^Y)B9E=B:MV?DP<H93
M2U7EF3N<SYNRT4K0=V?J)%OK)/,TD=54F)8J3/^O=7>J4UV=9&N=9)XFLIJZ
MLU+=6>L>RX607U5P%"A1 @V0_%274K)L."01$5EA"F@88L91(L>R(M58H_(I
M;:M26M16/BM2K8[U%40GF:>)K";(O!1D_CY!TB1YMR#YE-.*'JJBSN:5OS-Q
M6IWL*XY.,D\364T<VSKU)5;?[Y3!F52%1M]XCQ?S?.-%WNY-7QVTLGFZV.I*
M5#I$N[\2#-0IA/IX]&4KQF2_+YL\N5VVT*A!^PPV>@7,T A%>5LW1P%^;6H,
M[]J)>LNDD\W3Q5:7R3G)Y/SG#=.]D!6352O9V!V.[?-MT^I3;SUTLGFZV.IZ
MG+IHN[6-:VHYWEG W$X%3&N[JY7-T\565^+4\=K=6MXV)7KLC%&WG='J4V\]
M=+)YNMAR/<S*Z6,$;)<=^W+Y7DACD1]$ED_+H^6;[$#5/)GGY])?,-L1J50(
M6PFUAE/9%;/\J#>_$33)SC(?J1 TRB[W@&4OI SD^)92<;Q1$Y0'[JM_ 5!+
M P04    " #9@U=6MN,0R?0#  "J#P  &0   'AL+W=O<FMS:&5E=',O<VAE
M970X,2YX;6RM5UUSHS84_2L:VNGLSC0@B>_4]DQB=K=]V-E,,MT^*R#;3 "Y
MDAPG_[X2$&Q .,[4>8B1./=(Y^K>B^YLS_B3V% JP4M95&)N;:3<7CN.2#>T
M),)F6UJI-RO&2R+5D*\=L>649+5163@8PL I25Y9BUD]=\<7,[:315[1.P[$
MKBP)?[VE!=O/+62]3=SGZXW4$\YBMB5K^D#EW]L[KD9.QY+E):U$SBK Z6IN
MW:#K!'G:H$;\S.E>'#T#+>61L2<]^"N;6U#OB!8TE9J"J)]GNJ1%H9G4/OYM
M2:UN36UX_/S&_K46K\0\$D&7K/@GS^1F;D46R.B*[ IYS_9_TE:0K_E25HCZ
M/]BW6&B!="<D*UMCM8,RKYI?\M(ZXL@ !1,&N#7 0P-OPL!M#=QS#;S6H':U
MTTBI_9 0218SSO: :[1BTP^U,VMK)3^O]+D_2*[>YLI.+AXD2Y_ CZT^! &N
MP(,*K&Q74,!6X)X*R?-4T@PTL)L]X1FXT4>5RU?P*:&2Y(7XK.Q&V"OP*W"
MV!!.Q<R1:JMZ02=MMW7;; M/; MA\)U5<B/ ERJC69_ 41H[H?A-Z"T^R9C0
MU 8N^AU@B+%A0\OSS9'!/#G?')Y0XW;'YM9\[M2Q3?JUL?/,=KJ*7(LM2>G<
M4F5"4/Y,K<5OOZ  _F'RR27)D@N1]?SE=?[R3K$O?NRDD*3*\FH-B 2/=)U7
ME1ZH,'^EA(-/>=4&ZV>35QOVH&;7I?1Y$<$ !3/G^=A=8U2,H.?V4<D8%48A
M]#M43Z#?"?1/"OS&2:63[QT=_FAM+W+CH8XQRO4Q]@8Z#%R>"T.SCJ#3$9S4
M\>6%\C07[RL)1JM?X3C6J=V38H!Y?N"C@18#S$5^[)G%A)V8\*28):E2]85[
M5TLX7AUY 1Q(&:,&B,3 XX83@15U&J*/9 ZMLG-S)AIG0QBX0U5CE"&S$@-7
M+[-ZTN).6GRRB-8Y<Z4^FQ1\)3D'/TFQHR8E\25KZB7)D@N1]=R'X.'N /]_
M5<U841 NP);R)EJ,P=*N%!Z=,,*Q[0^*Y]*$@YX=AH. ,>!BSW8G$AH=79?0
MV77V3&7M!0P?;]EU[7"H#(UB'/DC628RA.QX(LL1/@C#'RB\9TK#AMU@;*-X
MJ,T$A,AVAWEN D:1'<.C/S0A]7!W0B>O&OVR?*92UR# <^UH^+UI@:>JM)$+
MPNG@/%QRT(=N.<-:?:94;YQA*ER#4;P:<(:,34RX?L8V:IVC)J:D?%TW@P*D
M;%?)YIK?S78-YTW=9@WF;W4C6C='!YJFB_U.N*I0 A1TI2BA':HK#&\:PV8@
MV;9NE1Z95(U7_;A1S33E&J#>KQB3;P.]0->>+_X#4$L#!!0    ( -F#5U8H
M]8FCW0@  -Q7   9    >&PO=V]R:W-H965T<R]S:&5E=#@R+GAM;,V<:V_C
MN!F%_PKA72QF@6YL79S+;!)@$I'H $T;3'9:%$4_T#83$Z.+5Z)S*>;'EY1D
MT]3('&MQ%O"7Q);%AY3.RU?B$<7+EZ+\4BV%4.0U2_/J:K14:O5^/*[F2Y'Q
MZJ18B5S_\EB4&5?Z:_DTKE:EX(NZ4):.P\GD=)QQF8^N+^MM]^7U9;%6J<S%
M?4FJ=9;Q\NU&I,7+U2@8;39\DD]+93:,KR]7_$D\"/5Y=5_J;^,M92$SD5>R
MR$DI'J]&'X+W+)Z: O4>_Y3BI=KY3,RAS(KBB_GR<7$UFI@6B53,E4%P_>]9
MW(HT-23=CM];Z&A;IRFX^WE#9_7!ZX.9\4K<%NF_Y$(MKT;G([(0CWR=JD_%
MRU]%>T!U ^=%6M5_R4N[[V1$YNM*%5E;6+<@DWGSG[^V)V*G0!CN*1"V!<).
M@?AL3X&H+1 =6D/<%H@/+3!M"TP[!8*+/05.VP*G];EO3E9]IA.N^/5E6;R0
MTNRM:>9#+5==6I]@F9O(>E"E_E7J<NKZDU"R%#I4%+D1N7B4BMRG/*_(+^3#
M8B&-^CPE'_,FADTLO$N$XC*M?B8_$IF3.YFF>G-U.5:Z.08ZGK=5WS15AWNJ
M#D)R5^1J61&:+\3"!8SU<6P/)MP<S$WH)29B?D*BX"\DG(01^?R0D'<__MS3
ML-O#,>$&0T2V2HLW(<A*GQ_=$V>57$C=&7OXR>'\P--,>CAFXL$P/X:)V0F9
M1 8S.:T/SJ-$M VKJ(9&>]OVJ+<L.C'%\P7YAUJ*DMP7E2KWA=YO?)8*\IMX
MU3^DQ?P+^<_?-(Q\5"*K_ML79TU;XOZVF-S\OEKQN;@:Z>1;B?)9C*Y_^B$X
MG?S:%QM(6(*$422,@6!.=,3;Z(A]].N_K[.9#H+BD>1%_LM<)X%2SM:J*-_,
M1:$.G%D;$:OV(K:J(^-K3WPV(>"M<&@((&$)$D:1,-; 3FN8N0-YO@XOQ\\]
MNDZWNDX/U'4CXU;;0S3TPH=J./4<7",,LCJ*A#$0S-'P=*OAJ5=#6BFIK_3=
MZW&CD+?H4(60L 0)HT@8 \$<,<^V8IX=T67X#!D=2%B"A%$DC(%@3G2<;Z/C
M_*"N;A(VSXJUC@#]:9V78EX\Y?)_.G#TP&_-2ZF' .+57(I%G^Y-+=.=5!NX
MJ?;6VXZA8B)A% EC()@CYL56S NOF _KU2JMN[$6BV[&*CO#N_L]5UTO=FBO
M1<(2)(PB80P$<X0.)G;(/CFBK-XV!A0@4%H"I5$HC:%H;I#L^#J!/Q_03_=D
M7HJ%U/=RQ/#E7.CA5"F+WEL[/VZPS/[&!1/R)GC99QHET(90*(VA:*ZFH=4T
M])ZV>U'.38)_JB_9.@GH5!_59Y+P9U&:[15/N1Y&RYR\+.5\27;RP&9(+:O:
MBUV0=ZLMK\\WNO&W9G!(-+2+G=N$R4EW3 :MDD)I#$5SQ;>.6N"U9'8&UXWP
M=0>R0NO,3WK,W(W8O?I"?;/O-#_R]'BH2P:E,13-%=T:98'?*=M15/?27A&A
MSM=WFG,Z]:@(-;J@-(:BN2I:6RSP^V+W]577=%T]X!*ZJW)%GD5E+LP]^?E%
MIJG^0E9<Z@'8H]*=?B&X6I*B)/,ESW66U[V^=M:*M#<DH$;:=X[M8D(6_*T_
M(J .&Y3&4#0W(JS)%OA=MG_7R5L'1&:>@*7F@EWI@5MJ D'?RE=5,9?&A-/!
MH(6O[^46LN(SF4K5]\3IQE_?8,W]K0]\:0#JQ$%I#$5S1;=F7.!U<PX;HI.O
MQ&O!^NL8+#349H/2*)3&4#17>VNU!>?'-&9'VEJW4%H"I5$HC:%H;I!8"R_P
M>W@H0[:MQC@0.V.MN&/*^ALS6%:H6P>E,13-G91B_;K0:_4<G/?O9"ZS==:G
MJ+^&H1T:2DN@- JE,13-5=Z:<&%P1%D_A%IX4%H"I5$HC:%H;I!85R_TNWJW
MZ[(TZO<,!:U!UZLWU)\+^_RYSH.\!%HEA=(8BN;*:/VYT&]P'9SE^>O>+ \U
MY*"T!$JC4!I#T5SEK4D7QL>4Y:&&'Y260&D42F,HFALDU@,,_3[9'\_R4#>O
MI?F?PD"KI% :0]%<&:UQ%WYG>ER;V*N??C@/@[-?#YEAX4<.5A Z;PY*HU :
M0]%<J:U=%Q[3Y+D0ZNM!:0F41J$TAJ*Y06)]O= _A\Z\WJ1C8?-RB)G>O/G<
MJS+4F&MISB3G>-I-YE"_#4IC*)HKGO7;0K_?MKDF'ZP>=*Y<2]M5;_K-> OJ
MJD%I#$5S7S"RKEKD=]4^?KC;>\7U%QW\1A#4+H/2*)3&4#174FN71<=DET50
MNPQ*2Z T"J4Q%,T-$FN717Z[[$.>KWGJOEG4/"SI%1GJD;6TSH.5[A7WH+UH
M_UZ=AS0,U7[W9.^\QNDWM3[G]?31!\65Z'W%UU]^\/G%OGR)??L2^_KEGV%9
M1=:RBH[)LHJ@EA64ED!I%$IC*)H;)-:RBOR6U<!,"_6I6EH0[&3'^!NCJF^O
MZ.2BFVE[]YIV,^V?82Q%UEB*_,:2'D@*^93OOZ6%FDA06@*E42B-H6BNK-9$
MBH[)1(J@)A*4ED!I%$IC*)H;)-9$BOPFTL!$"_606EKG-O2BFV@/V8L>M!=#
MM=\]V=;TB?RFCWV/0N9*E#EOU[C9KN@B1=5,T5[Q4LFY7)D963+O7]/ ].2*
M/\O\J6H6AOGJ7QKFQM^ZP>I]ZR%%7>F@%A*4QE T=Q42:R'%?@MI]YKKGW_E
M!PU5#4I+H#0*I3$4S178&DKQ,1E*,=10@M(2*(U":0Q%<X/$&DJQWU!J'^F6
MG<5JO _E_<C!4O=,O>ID<6B%%$IC*)JKG_6H8K]'U<WB^^=7^4&#58.:55 :
MA=(8BN8*O+-:V#&953'4K(+2$BB-0FD,17.#Q)I5L=^L^D-9'&I9Q7U3J[H/
M=*%54BB-H6B-@N.=14DS43[5R\=66AX]K&V6]-QNW2Y1^Z%>F+6S_29X3YN%
M9BVF6??VCI=/4O?Q5#QJY.3D3!] V2PEVWQ1Q:I>^G16*%5D]<>EX M1FAWT
M[X]%H39?3 7;!7VO_P]02P,$%     @ V8-75EZ6:BX)!0  *Q@  !D   !X
M;"]W;W)K<VAE971S+W-H965T.#,N>&ULQ5EM;]LV$/XKA%8,";#$(F5)=F8;
MJ.T&+; "0;QNGVF+MKE*HD92<?/O1[U$LB2*=A)O^Q+KY>[XW.GNGB,S.3#^
M7>P)D>!'%,9B:NVE3.X& ['9DPB+6Y:06+W9,AYAJ6[Y;B 23G"0*T7A -FV
M-X@PC:W9)'_VP&<3ELJ0QN2! Y%&$>;/<Q*RP]2"ULN#1[K;R^S!8#9)\(ZL
MB/R6/'!U-ZBL!#0BL: L!IQLI]9'>+= HTPAE_B#DH,XN@:9*VO&OF<W7X*I
M96>(2$@V,C.!U<\369 PS"PI''^71JUJS4SQ^/K%^GWNO')FC059L/!/&LC]
MU!I9("!;G(;RD1T^D](A-[.W8:'(_X)#*6M;8),*R:)262&(:%S\XA]E((X4
MH->C@$H%U%88]B@XI8*3.UH@R]U:8HEG$\X.@&?2REIVD<<FUU;>T#C[C"O)
MU5NJ].3LD4C*B?HN$LQ)3+94@H<0QP+<@)5*F2 -"6!;L%1O8A*T9)94;$(F
M4DX$N%H2B6DHKI7FM]427'VX!A\ C<'O>Y8*' =B,I *<+;L8%."FQ?@4 \X
MB,!7%LN] )_B@ 1- P/E:>4N>G%WCHP6EV1S"QSX"T V0AI B_/5H0&.4T7?
MR>TY>GM9C=Z)!&_(U%)%* A_(M9LL<?QCF2AVV+*P1,.T_P;)"KF  M!I/CY
M)^C9OQ9_=6$M5AV^9M5>8XL+&6L$:%@%:&BR/KOOBP# $JS)CL8QC7?9NV>"
MN2X4A7TWMY_UM*<9<CQ??;RG8Q^-*-[HHUOYZ+[=1Q(')N\*R]Z1=W"$O''+
M._=$#!JPO0JV9X3]4/;RK!7HH!FU7YN#%S+6<-2O'/7?4Z0)9W\I3E+-<5TV
M1[8.Z0YG+-5?H?XEHW,A8XWHC*KHC(QI,.\X?79ICCK)BY#K#5O)JY$:0MO6
M)^^X0CTVHEZI*- - 1LFI [:N+-H&U97PM5#@G9-Q;81U)=8$O6!9"^J4O]X
M4<]N ],(N:[3@^UH3(!&;+]1O*8AE<_9X)5B3G$(KG9J3+P&:@+0<SOL +D9
M^EZ[]>K$QN-A#V!4 T;GY*4 "::!%A[JK@OAT&[#TXKUY1^LF1\:>;.G;DZT
M^])FH]_[J,-F&K%F934QUV0,A__+N (O1+^E]_\&F<.:S>$[Z/RLO@B[K*Z;
M671BR/'[,K/F=6@F=K4E2'D,5$(>@=?B]#0%CCS4QMD50T.[9_J -2M#(ZW-
M/D5)R)X)5]TREIRNTZR&]#C]#H!.E9M$F@!K8H1G,:.A W6I3=N!M&*]':BF
M0&CFP/?,G;!+?[K!4R-FF#Q1S93(S)3W:;8?!$)BF6H_.>J2X'@\:J'3"*FX
M^CW@:JI$9JI<I4D2YEMJQ9%EEA)PM-'NFYC-=E_;!B]EK1F%FG\1^N^G9F3D
M_%='Z$+6FA&J)P#TE@G@+(9 FCD .LAK)[A&S%;X>S*\G@.0>5=^:GHNU1ME
M/VK/J1HAYZB!-*'5[(O,['MRAD8:UO0[G4$C9/?,]Z@F5F0FUC?,T$A#L<A&
M3AMO5\QW^V)9,RPR,^Q) D-=UKQQ8 ><1@IZ?6VVIE?TEHWG"=XJ;1X?A8Q=
MMSVQ:*2:Y55 'AP=NT:$[_+3:*$R+XUE<219/:U.O#_FY[RMYW-XMRC.K6LS
MQ3'Z5\Q5.Q @)%METK[U%29>G$P7-Y(E^>'NFDG)HOQR3W! >":@WF\9DR\W
MV0+5_P=F_P!02P,$%     @ V8-75FY'(T=- P  M P  !D   !X;"]W;W)K
M<VAE971S+W-H965T.#0N>&ULM5==;]HP%/TK5B9-F[22+SX[0"K0:95:"15U
M>YCVX"87L.K$F>U ^^]G.R$0E(1.L!>(G7N.SSWQC6^&6\9?Q!I HM>(QF)D
MK:5,KFU;!&N(L&BQ!&)U9\EXA*4:\I4M$@XX-*"(VI[C=.T(D]@:#\W<G(^'
M+)64Q##G2*11A/G;!"C;CBS7VDT\DM5:Z@E[/$SP"A8@GY(Y5R.[8 E)!+$@
M+$8<EB/KQKV>NKX&F(@?!+;BX!KI5)X9>]&#NW!D.5H14 BDIL#J;P-3H%0S
M*1U_<E*K6%,##Z]W[-],\BJ99RQ@RNA/$LKUR.I;*(0E3JE\9-OOD"?4T7P!
MH\+\HFT6V^U:*$B%9%$.5@HB$F?_^#4WX@#@U@&\'. = ]HU #\'&.?L3)E)
M:X8E'@\YVR*NHQ6;OC#>&+3*AL3Z,2XD5W>)PLGQ(TC"03T7B280PY)(-*<X
M%N@*+=26"5,*B"W1C5#/.='&"_0D($2?9B QH>+ST)9*AB:S@WS)2;:D5[.D
MZZ$'%LNU0+=Q"&&9P%;ZBR2\71(3KY%Q!D$+^>X7Y#F>5R%H^GZXVR#'+SSU
M#5^[AF^>[W)M9)4]C6A=M]<BP0&,+%68 O@&K/''#V[7^5J5VH7(2HFVBT3;
MAMVO-6ZI9L+2SD$S(@+*1,H!_;I7M]&=A$C\KC*B?4DC+D16,J)3&-%I?.(Z
M9Y:J&N)80E6F&;QOX/K-NAD[+:>C-MOF,(7***_7*<)*XKJ%N.YYXKJGELW4
M58?Y->IZA;I>H[I[%J^N)/#(R-/O&@XRY3%2!93H_82% "FJ=&?$@[*@[I'J
M7I7JGE>CNE^H[C>J7J1)0LUK$U-T&R64O0&@@Y=I7>TWTO[KEK\06<F!0>'
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
MV;BRF?NA:)Z7R2JQ&2MMX\IF-D/3MHQ1B<WZ&FO_?N\(&KS?9YI199-UV!-
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
M WYN>5._+[?6\O!!SS-Z WYN>E-_VL/6FAX>=KV_<(<Z4O??9.2Y^ \%=J<
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
M[Q!LS\8^_TW4Z8JEW+B..U._-6VJ\=T<^8@$*)A-[XZC8< 1XF%,5!PUX%!
MO$#R*3[X!Q]\JP_OBUJLC[19$6F[(EB[(DP>=43!T0C\"$$8:0X98#'!D>[/
M$!9 WR>QV9W@X$Y@=>=#GC2UZ;9FM7E:K.:GKF279-01F1*V\!"V\!QE(W09
M;)=DU!&9$NSH$.SHV\M&-$@+!",8Q5KZ+(:XV"<0>UJ6#6%1@#T"S5D6'SR(
M716->#  SP]AZ&ON&& !(A[2W#' (AA[(^X@*%41M#KTHA3ZA1OEB-7PU#7L
ME(VZ8E.#=B0ET3F*1G]75Q%WR49=L:D1QS+B^-LK1V^KY'H<X%C+- ,LQM#'
M6J:9V!#V1Q[/2.I39%5DIY2.GDFIA5&(=;UA@L5AI)<. PPC2,B(0U(#(KL(
M7+"<K9AQ_%;#DQ>R2S;JBDT-FA2=R#]+Z;!JW9,C[I*-NF)3(RYU,;(+8WOI
M" QJ(HP'I6,(BPB)!Z5C" M\@L8R36I49%5E)Y6.<# $@E&@JPXSC P<,L"(
M'XXY)'4@L@O!_F7EUR3?K(K,Z(>5X.0%[9*-NF)3@R<E*(K/4D*LRO?DB+MD
MHZ[8U#Z9%,G8+I*M):2W59(^]GSM?61A@(E$BK2F"#7 O##T0W/&82E9L56@
MG5)">B8EZ5$8A+I#!EC@!['NT!"&HL@;*2%8*D)L5X37)?LG28WCMQJ>NI"=
MLE%7;&K0I ;%9VF28J==4J=LU!6;&G$IDO%W=$I[6_7E/]+?_1<&F! 5^C.=
M&F#BP7\D4E07I&3%SAJE>-C;1!@->AXF&/3T?BHUP1#"8Z5#*D+\GXIPR\MT
M[#N,W?KDU>RT5>J*38V<%*+X+-U2[+1=ZI2-NF)3(RZ5,OZ.EBD>-CDQ(7 @
M/0RP, [TCJF1+?9&/K-@J5>QLYXI'K8Y<>0-&A\&&,$XT-]>3+ 8!B/U@T@Y
M2.QR\"4O,Y9_,7XN=-HT=<I&7;&I49,*E)RE:4J<-DV=LE%7;&K$I40FW]$T
M)89N*$+ZD]J BN)0>Q6@)BYRE+7J^(^^Z-L[IE=B:90L38P]1KOMR?/N]M/\
M_Z$YB=2<Q#M+ICGMZCIEHZ[8U(A+B4SL$MF>:4,9BP.$]/=I$PS&$=1SS:2=
MXWCD\P21HIC81?$)3VEB:'.&4'=G" KC@3.&]NN1+E%=D2J5V-NE;QIY;QRX
M4YWIE(VZ8E-C)G4FB<Y2,YRV<9VR45=L:L2E+"9V66RO&9WM\::G$'NZ9%\8
M8'X,!SN.###/%[I:2[3IT>Y*,>>;=I=J!9;%/J^[;86'JX>=L%?M_D_M^C6Z
MH-U^5DG3;:]]S<I-DE<@Y6M!"9^%8DQEMV.U.ZF+7;N'\V-1BX77'FXY6_&R
M 8C?UT51/YPT-SCL&Y[_"U!+ P04    " #9@U=68<]D#S<#  #($P  #0
M 'AL+W-T>6QE<RYX;6S=6%%OVC 0_BN1NTZM-#5 UI2L@+0A59JT397:A[U5
MACC!DF-GCNE@OWZ^."1 ?577APT65&+?Y^_N.]^E<3NJS%JPNP5C)E@50E9C
MLC"F_!"&U7S!"EI=J)))BV1*%]38J<[#JM2,IA60"A$.>KTX+"B79#*2R^*F
M,%4P5TMIQB1N38&[?4['I!^_)X%S-U4I&Y.'L[<_ELI<OPG<_>3=R4GOX?QZ
MWWY6 ^<D]#J]?('3BQ[NUV*8ZWC7]6;YJ?75<D\Q\I6'W#%1VO!%Z3R3#>8X
M\2:SE4I-#)M*3D:9DEU!(^(,UC,M6/!(Q9A,J> SS8&5T8*+M3,/P#!70NG
MV$ZRH?I@J7XYN.]FT&2-GX)+I>O8+H+[GC7+]X#-# 1R(5J! ^(,DU%)C6%:
MWMA)O;@V/H&"9GR_+JW"7--U?W!).D)]LT%F2J=,MV'Z9&.:C 3+0([F^0+N
M1I4A@,:HP@Y23G,E::UAPV@&UNV<"7$'3^#W;,?W*MNJ60\J)MNA%=0,G1LW
M ?_;WISO;;?1J_P&)7]4YM/2IB/K.309N]4LXZMZOLI: 9CW/NZ=EJ58?Q0\
MEP5SR;\XX&1$-[Q@H33_9:-!J\RM@6D2/#)M^'S;\E/3\IZMS*:=5AFN>7"$
MFO_N/N=,,DW%MFC;^X>\RZ]6W+RR_H7F^M?*OF*OR.CJ\#4VK^E#%QD?@\BC
M*/?P&$0FAR\R.DR-87/(V#K)[)QC6FL Y\4Q^08G3]$%#69++@R7S6S!TY3)
M)\<9Z][0F?TS9<>_79^RC"Z%N6_!,>G&7UG*ET72KKJ%C6A6=>,OD%X_;@^K
M-A:7*5NQ=-I,=3ZKAX$=V*C-!81]Y*:^_ C&<9@? 0R+@RG .(Z%Q?F?\AFB
M^3@,TS;T(D.4,T0YCN5#IO4'B^/G)/;R9YHD413'V(Y.IUX%4VS?XAA^_-XP
M;<# XD"D/]MKO-IXASS?!UA-G^L0+%.\$[%,\;T&Q+]OP$@2?[6Q.,# JH#U
M#L3WQX&>\G.B"*J*:<.>8!Q)$@R!7O3W:!PCNQ/#QU\?["F)HB3Q(X#Y%401
MAL#3B".8 M" (5%4OP?WWD?AYCT5=O^[F_P&4$L#!!0    ( -F#5U:7BKL<
MP    !,"   +    7W)E;',O+G)E;'.=DKENPS ,0'_%T)XP!] AB#-E\18$
M^0%6H@_8$@6*19V_K]JE<9 +&7D]/!+<'FE [3BDMHNI&/T04FE:U;@!2+8E
MCVG.D4*NU"P>-8?20$3;8T.P6BP^0"X99K>]9!:G<Z17B%S7G:4]VR]/06^
MKSI,<4)I2$LS#O#-TG\R]_,,-47E2B.56QIXT^7^=N!)T:$B6!::1<G3HAVE
M?QW']I#3Z:]C(K1Z6^CY<6A4"H[<8R6,<6*T_C6"R0_L?@!02P,$%     @
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
MBK$"  "^-@  &@   'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR96QSS=I-;N)
M$(;AJR ?(*:KNJK;HY#5;+*-<@&+-#\*8&1[E.3V@\@"/FL6LXG\K5#;HOPN
MK$>HZ<>7<FC'?7<:=OOSL/@\'D[#JMJ-X_E770_K73FVPT-W+J?+G4W7']OQ
MLNRW];E=O[?;4LMRZ75_/Z-Z>KR?N7C].I?_F=AM-OMU^=VM_QS+:?S'X/JC
MZ]^'72ECM7AM^VT95U7]>;A='NKK1WBX3*X6SV^KJG]^"U4]=Y! D,P?I!"D
M\P=%"(KS!QD$V?Q!#D$^?U""H#1_4(:@/']0 T'-_$%AB3(N"9(F6!-H'9#K
M0.!U0+ #@=@!R0X$9@=$.Q"H'9#M0.!V0+@#@=P!Z0X$=@?$.Q#H+:BW$.@M
MJ+<0Z"V3']L$>@OJ+01Z"^HM!'H+ZBT$>@OJ+01Z"^HM!'H+ZBT$>@OJ+01Z
M*^JM!'HKZJT$>BOJK01ZZV2SA$!O1;V50&]%O95 ;T6]E4!O1;V50&]%O95
M;T6]E4#OB'I' KTCZAT)](ZH=R30.Z+>D4#O.-GL)M [HMZ10.^(>D<"O2/J
M'0GTCJAW)- [HMZ10&]#O8U ;T.]C4!O0[V-0&]#O8U ;T.]C4!OF_Q92:"W
MH=Y&H+>AWD:@MZ'>1J"WH=Y&H+>CWDZ@MZ/>3J"WH]Y.H+>CWDZ@MZ/>3J"W
MH]Y.H+=/#IL0Z.VHMQ/H[:BW$^CMJ+<3Z)U0[T2@=T*]$X'>"?5.!'HGU#L1
MZ)U0[T2@=T*]$X'>"?5.!'JGR6%! KT3ZIT(]$ZH=R+0.Z/>F4#OC'IG KTS
MZIT)],ZH=R;0.Z/>F4#OC'IG KTSZIT)],ZH=R;0.T\.>Q/HG5'O3*!W@WHW
M!'HWJ'=#H'>#>C<$>C>H=_.3>@_CUZ$,MY[O-3[_)ZD>+]\MM\=?E]\7)Z_*
M%>?ZOF)X^@M02P,$%     @ V8-75GWS[C]# @   S4  !,   !;0V]N=&5N
M=%]4>7!E<UTN>&ULS=O?;MHP%,?Q5T&YK4B('=MA*KUI=[OU8B^0):9$Y)]L
MMZ-O/Q/:2ILZM(I)^]X0@>WS._&1/G=<?WN>K%\<^F[PFV07PO0IRWR]LWWE
MTW&R0US9CJZO0OSJ'K*IJO?5@\W$:J6S>AR"'<(R'&LD-]=W=EL]=F'Q^1!_
M]NTX;!)G.Y\L;D\;CUF;I)JFKJVK$->SIZ'Y+67YDI#&D_,>OVLG?Q4W)-F[
M"<>5/P>\G/OZ9)UK&[NXKUSX4O5Q5W;H,A^>.^O3\R7>Z7'<;MO:-F/]V,<C
MJ9^<K1J_LS;T77HJ>G4^.<0;MJ?/_.+\N<RYP+CSWHV3CQ-S]N-QKR,YGEY.
ML9!UH3W_BF^)L?3%[V>/TVYL\Y?9\7I_C&X_S\-G\^/R._YUQF_U/]B'@/0A
M(7T4D#X4I \-Z<- ^B@A?:PA?>0K2B,447,*J3G%U)R":DY1-:>PFE-<S2FP
MYA19!45609%54&05%%D%159!D5509!44605%5D&155)DE119)45629%54F25
M%%DE159)D5529)4460N*K 5%UH(B:T&1M:#(6E!D+2BR%A19"XJL!45619%5
M4615%%D5159%D5519%44615%5D6155%DU119-45639%54V35%%DU159-D553
M9-44635%5D.1U5!D-119#4560Y'54&0U%%D-159#D=509"TILI8464N*K"5%
MUI(B:TF1M:3(6E)D+2FREA19UQ19UQ19UQ19U_]3UN_CN/_'\?,S[:MV>,W/
MYO\^W?P$4$L! A0#%     @ V8-75@=!36*!    L0   !
M ( !     &1O8U!R;W!S+V%P<"YX;6Q02P$"% ,4    " #9@U=65I#8R.T
M   K @  $0              @ &O    9&]C4')O<',O8V]R92YX;6Q02P$"
M% ,4    " #9@U=6F5R<(Q &  "<)P  $P              @ '+ 0  >&PO
M=&AE;64O=&AE;64Q+GAM;%!+ 0(4 Q0    ( -F#5U8O&!_H=@<  -XN   8
M              " @0P(  !X;"]W;W)K<VAE971S+W-H965T,2YX;6Q02P$"
M% ,4    " #9@U=6]*\OD#$"  "K!0  &               @(&X#P  >&PO
M=V]R:W-H965T<R]S:&5E=#(N>&UL4$L! A0#%     @ V8-75C0?\5"_!@
M/!P  !@              ("!'Q(  'AL+W=O<FMS:&5E=',O<VAE970S+GAM
M;%!+ 0(4 Q0    ( -F#5U:N5I29I@(  $\'   8              " @109
M  !X;"]W;W)K<VAE971S+W-H965T-"YX;6Q02P$"% ,4    " #9@U=6M).*
M%OL%  !G'0  &               @('P&P  >&PO=V]R:W-H965T<R]S:&5E
M=#4N>&UL4$L! A0#%     @ V8-75AZ^<[P !   5 T  !@
M ("!(2(  'AL+W=O<FMS:&5E=',O<VAE970V+GAM;%!+ 0(4 Q0    ( -F#
M5U:@(0&C&0,  )\(   8              " @5<F  !X;"]W;W)K<VAE971S
M+W-H965T-RYX;6Q02P$"% ,4    " #9@U=6GO ;5/$&   '-@  &
M        @(&F*0  >&PO=V]R:W-H965T<R]S:&5E=#@N>&UL4$L! A0#%
M  @ V8-75F3U2,*% @  R08  !@              ("!S3   'AL+W=O<FMS
M:&5E=',O<VAE970Y+GAM;%!+ 0(4 Q0    ( -F#5U:_&J%Z#@D  !XK   9
M              " @8@S  !X;"]W;W)K<VAE971S+W-H965T,3 N>&UL4$L!
M A0#%     @ V8-75@(<PF]@&0  <T@  !D              ("!S3P  'AL
M+W=O<FMS:&5E=',O<VAE970Q,2YX;6Q02P$"% ,4    " #9@U=6Q-?;Z9 #
M  "N!P  &0              @(%D5@  >&PO=V]R:W-H965T<R]S:&5E=#$R
M+GAM;%!+ 0(4 Q0    ( -F#5U96EEUYA@,  )$'   9              "
M@2M:  !X;"]W;W)K<VAE971S+W-H965T,3,N>&UL4$L! A0#%     @ V8-7
M5K.3PKE\ P  V0<  !D              ("!Z%T  'AL+W=O<FMS:&5E=',O
M<VAE970Q-"YX;6Q02P$"% ,4    " #9@U=6"M<)]E (  #.$P  &0
M        @(&;80  >&PO=V]R:W-H965T<R]S:&5E=#$U+GAM;%!+ 0(4 Q0
M   ( -F#5U8>8JQXD (  'T%   9              " @2)J  !X;"]W;W)K
M<VAE971S+W-H965T,38N>&UL4$L! A0#%     @ V8-75E+LY@0M P  \P8
M !D              ("!Z6P  'AL+W=O<FMS:&5E=',O<VAE970Q-RYX;6Q0
M2P$"% ,4    " #9@U=6Z&K*+T8#  !5!P  &0              @(%-<
M>&PO=V]R:W-H965T<R]S:&5E=#$X+GAM;%!+ 0(4 Q0    ( -F#5U9G"=4%
M500  &D*   9              " @<IS  !X;"]W;W)K<VAE971S+W-H965T
M,3DN>&UL4$L! A0#%     @ V8-75EX=M]D:!0  >Q,  !D
M ("!5G@  'AL+W=O<FMS:&5E=',O<VAE970R,"YX;6Q02P$"% ,4    " #9
M@U=6R4M@H]L"   $!@  &0              @(&G?0  >&PO=V]R:W-H965T
M<R]S:&5E=#(Q+GAM;%!+ 0(4 Q0    ( -F#5U9?"$^TA 8  +00   9
M          " @;F   !X;"]W;W)K<VAE971S+W-H965T,C(N>&UL4$L! A0#
M%     @ V8-75EWF<X[O!@  .1   !D              ("!=(<  'AL+W=O
M<FMS:&5E=',O<VAE970R,RYX;6Q02P$"% ,4    " #9@U=6_O534R@)  !9
M%@  &0              @(&:C@  >&PO=V]R:W-H965T<R]S:&5E=#(T+GAM
M;%!+ 0(4 Q0    ( -F#5U9SV.;JV (  "D&   9              " @?F7
M  !X;"]W;W)K<VAE971S+W-H965T,C4N>&UL4$L! A0#%     @ V8-75G=P
M9$>W"0  'AX  !D              ("!")L  'AL+W=O<FMS:&5E=',O<VAE
M970R-BYX;6Q02P$"% ,4    " #9@U=6WY/"X1<5   [0@  &0
M    @('VI   >&PO=V]R:W-H965T<R]S:&5E=#(W+GAM;%!+ 0(4 Q0    (
M -F#5U:EG[WX5 8  $P/   9              " @42Z  !X;"]W;W)K<VAE
M971S+W-H965T,C@N>&UL4$L! A0#%     @ V8-75DSYT)JT P  9P@  !D
M             ("!S\   'AL+W=O<FMS:&5E=',O<VAE970R.2YX;6Q02P$"
M% ,4    " #9@U=6Y7JH+KL$  !7"@  &0              @(&ZQ   >&PO
M=V]R:W-H965T<R]S:&5E=#,P+GAM;%!+ 0(4 Q0    ( -F#5U9&Z%@ %04
M !$+   9              " @:S)  !X;"]W;W)K<VAE971S+W-H965T,S$N
M>&UL4$L! A0#%     @ V8-75O!$O,10'P  \&@  !D              ("!
M^,X  'AL+W=O<FMS:&5E=',O<VAE970S,BYX;6Q02P$"% ,4    " #9@U=6
MXN7]1/<"  !D!@  &0              @(%_[@  >&PO=V]R:W-H965T<R]S
M:&5E=#,S+GAM;%!+ 0(4 Q0    ( -F#5U8=%?S,* ,  #0'   9
M      " @:WQ  !X;"]W;W)K<VAE971S+W-H965T,S0N>&UL4$L! A0#%
M  @ V8-75FW_G'N: P  &0@  !D              ("!#/4  'AL+W=O<FMS
M:&5E=',O<VAE970S-2YX;6Q02P$"% ,4    " #9@U=6(#"QB),"  "&!0
M&0              @('=^   >&PO=V]R:W-H965T<R]S:&5E=#,V+GAM;%!+
M 0(4 Q0    ( -F#5U907.L]'P,  .H&   9              " @:?[  !X
M;"]W;W)K<VAE971S+W-H965T,S<N>&UL4$L! A0#%     @ V8-75NKSW-A+
M P  80<  !D              ("!_?X  'AL+W=O<FMS:&5E=',O<VAE970S
M."YX;6Q02P$"% ,4    " #9@U=6BKD[1GL#  !8"@  &0
M@(%_ @$ >&PO=V]R:W-H965T<R]S:&5E=#,Y+GAM;%!+ 0(4 Q0    ( -F#
M5U85BB!8>00  /(+   9              " @3$& 0!X;"]W;W)K<VAE971S
M+W-H965T-# N>&UL4$L! A0#%     @ V8-75EM -DO3 @  !08  !D
M         ("!X0H! 'AL+W=O<FMS:&5E=',O<VAE970T,2YX;6Q02P$"% ,4
M    " #9@U=6*]P=9<4"  #H!0  &0              @('K#0$ >&PO=V]R
M:W-H965T<R]S:&5E=#0R+GAM;%!+ 0(4 Q0    ( -F#5U;A!N.0< <  /$2
M   9              " @><0 0!X;"]W;W)K<VAE971S+W-H965T-#,N>&UL
M4$L! A0#%     @ V8-75JQ?O+DF!@  @!8  !D              ("!CA@!
M 'AL+W=O<FMS:&5E=',O<VAE970T-"YX;6Q02P$"% ,4    " #9@U=6V,%=
M'9X*  #&)P  &0              @('K'@$ >&PO=V]R:W-H965T<R]S:&5E
M=#0U+GAM;%!+ 0(4 Q0    ( -F#5U8H *B6?@0  -0*   9
M  " @< I 0!X;"]W;W)K<VAE971S+W-H965T-#8N>&UL4$L! A0#%     @
MV8-75E0]'W>@ P  5P@  !D              ("!=2X! 'AL+W=O<FMS:&5E
M=',O<VAE970T-RYX;6Q02P$"% ,4    " #9@U=6VN7>DYP$  "H"@  &0
M            @(%,,@$ >&PO=V]R:W-H965T<R]S:&5E=#0X+GAM;%!+ 0(4
M Q0    ( -F#5U8^74\R& 4  -4B   9              " @1\W 0!X;"]W
M;W)K<VAE971S+W-H965T-#DN>&UL4$L! A0#%     @ V8-75A4X0>   P
M2PD  !D              ("!;CP! 'AL+W=O<FMS:&5E=',O<VAE970U,"YX
M;6Q02P$"% ,4    " #9@U=6!&6CB3@"  "^!   &0              @(&E
M/P$ >&PO=V]R:W-H965T<R]S:&5E=#4Q+GAM;%!+ 0(4 Q0    ( -F#5U;L
M?+Q0PP,  )$-   9              " @11" 0!X;"]W;W)K<VAE971S+W-H
M965T-3(N>&UL4$L! A0#%     @ V8-75H#D!GD^!0  11H  !D
M     ("!#D8! 'AL+W=O<FMS:&5E=',O<VAE970U,RYX;6Q02P$"% ,4
M" #9@U=63$W8\E(%  #>)@  &0              @(&#2P$ >&PO=V]R:W-H
M965T<R]S:&5E=#4T+GAM;%!+ 0(4 Q0    ( -F#5U8#[V+BG@(  /H&   9
M              " @0Q1 0!X;"]W;W)K<VAE971S+W-H965T-34N>&UL4$L!
M A0#%     @ V8-75LQ: >$.!@  32\  !D              ("!X5,! 'AL
M+W=O<FMS:&5E=',O<VAE970U-BYX;6Q02P$"% ,4    " #9@U=6!W=VV9H$
M  "B&   &0              @($F6@$ >&PO=V]R:W-H965T<R]S:&5E=#4W
M+GAM;%!+ 0(4 Q0    ( -F#5U8:1YO-Q@8  )$V   9              "
M@?=> 0!X;"]W;W)K<VAE971S+W-H965T-3@N>&UL4$L! A0#%     @ V8-7
M5G;67V0)!0  'B   !D              ("!]&4! 'AL+W=O<FMS:&5E=',O
M<VAE970U.2YX;6Q02P$"% ,4    " #9@U=672KIAO\"  #%"   &0
M        @($T:P$ >&PO=V]R:W-H965T<R]S:&5E=#8P+GAM;%!+ 0(4 Q0
M   ( -F#5U8T1TF!^@(  /\*   9              " @6IN 0!X;"]W;W)K
M<VAE971S+W-H965T-C$N>&UL4$L! A0#%     @ V8-75IE3786= @  L@<
M !D              ("!FW$! 'AL+W=O<FMS:&5E=',O<VAE970V,BYX;6Q0
M2P$"% ,4    " #9@U=6_^7C388#  "(#   &0              @(%O= $
M>&PO=V]R:W-H965T<R]S:&5E=#8S+GAM;%!+ 0(4 Q0    ( -F#5U86I"%\
M:@(  ,4%   9              " @2QX 0!X;"]W;W)K<VAE971S+W-H965T
M-C0N>&UL4$L! A0#%     @ V8-75G'  HT( P  1@D  !D
M ("!S7H! 'AL+W=O<FMS:&5E=',O<VAE970V-2YX;6Q02P$"% ,4    " #9
M@U=6%^=YO:0#  "-#@  &0              @($,?@$ >&PO=V]R:W-H965T
M<R]S:&5E=#8V+GAM;%!+ 0(4 Q0    ( -F#5U;S"!/#2 <  +D^   9
M          " @>>! 0!X;"]W;W)K<VAE971S+W-H965T-C<N>&UL4$L! A0#
M%     @ V8-75D&)O?O? @  0P@  !D              ("!9HD! 'AL+W=O
M<FMS:&5E=',O<VAE970V."YX;6Q02P$"% ,4    " #9@U=6;IA<3+D#   7
M#@  &0              @(%\C $ >&PO=V]R:W-H965T<R]S:&5E=#8Y+GAM
M;%!+ 0(4 Q0    ( -F#5U:OCMN>= 0  * 0   9              " @6R0
M 0!X;"]W;W)K<VAE971S+W-H965T-S N>&UL4$L! A0#%     @ V8-75@)[
M&ZT*!0  J1,  !D              ("!%Y4! 'AL+W=O<FMS:&5E=',O<VAE
M970W,2YX;6Q02P$"% ,4    " #9@U=6"*VO>+$"  "2"   &0
M    @(%8F@$ >&PO=V]R:W-H965T<R]S:&5E=#<R+GAM;%!+ 0(4 Q0    (
M -F#5U:\!0N6( ,  $$(   9              " @4"= 0!X;"]W;W)K<VAE
M971S+W-H965T-S,N>&UL4$L! A0#%     @ V8-75@\VF_F. P  :A,  !D
M             ("!EZ ! 'AL+W=O<FMS:&5E=',O<VAE970W-"YX;6Q02P$"
M% ,4    " #9@U=6O-D:K+$,   FG   &0              @(%<I $ >&PO
M=V]R:W-H965T<R]S:&5E=#<U+GAM;%!+ 0(4 Q0    ( -F#5U82B07D< 0
M /82   9              " @42Q 0!X;"]W;W)K<VAE971S+W-H965T-S8N
M>&UL4$L! A0#%     @ V8-75A6VYYUU!@  BC0  !D              ("!
MZ[4! 'AL+W=O<FMS:&5E=',O<VAE970W-RYX;6Q02P$"% ,4    " #9@U=6
M&!BM()("  !Z!P  &0              @(&7O $ >&PO=V]R:W-H965T<R]S
M:&5E=#<X+GAM;%!+ 0(4 Q0    ( -F#5U::O6KZW@,  *41   9
M      " @6"_ 0!X;"]W;W)K<VAE971S+W-H965T-SDN>&UL4$L! A0#%
M  @ V8-75IY $PI,!   ?!<  !D              ("!=<,! 'AL+W=O<FMS
M:&5E=',O<VAE970X,"YX;6Q02P$"% ,4    " #9@U=6MN,0R?0#  "J#P
M&0              @('XQP$ >&PO=V]R:W-H965T<R]S:&5E=#@Q+GAM;%!+
M 0(4 Q0    ( -F#5U8H]8FCW0@  -Q7   9              " @2/, 0!X
M;"]W;W)K<VAE971S+W-H965T.#(N>&UL4$L! A0#%     @ V8-75EZ6:BX)
M!0  *Q@  !D              ("!-]4! 'AL+W=O<FMS:&5E=',O<VAE970X
M,RYX;6Q02P$"% ,4    " #9@U=6;D<C1TT#  "T#   &0
M@(%WV@$ >&PO=V]R:W-H965T<R]S:&5E=#@T+GAM;%!+ 0(4 Q0    ( -F#
M5U9>3A1:TP,  *,.   9              " @?O= 0!X;"]W;W)K<VAE971S
M+W-H965T.#4N>&UL4$L! A0#%     @ V8-75K^4UV$W P  '1   !D
M         ("!!>(! 'AL+W=O<FMS:&5E=',O<VAE970X-BYX;6Q02P$"% ,4
M    " #9@U=68IDFT[P0   -R0  &0              @(%SY0$ >&PO=V]R
M:W-H965T<R]S:&5E=#@W+GAM;%!+ 0(4 Q0    ( -F#5U:%6A&@(P,  #$+
M   9              " @6;V 0!X;"]W;W)K<VAE971S+W-H965T.#@N>&UL
M4$L! A0#%     @ V8-75M+<HR7I!0  ]R8  !D              ("!P/D!
M 'AL+W=O<FMS:&5E=',O<VAE970X.2YX;6Q02P$"% ,4    " #9@U=65BK%
MK3,"  #(!   &0              @('@_P$ >&PO=V]R:W-H965T<R]S:&5E
M=#DP+GAM;%!+ 0(4 Q0    ( -F#5U;.WUEW8 8  ,\H   9
M  " @4H" @!X;"]W;W)K<VAE971S+W-H965T.3$N>&UL4$L! A0#%     @
MV8-75F1"=#W5 P  )P\  !D              ("!X0@" 'AL+W=O<FMS:&5E
M=',O<VAE970Y,BYX;6Q02P$"% ,4    " #9@U=6#=QK;WP&  !#+   &0
M            @('M# ( >&PO=V]R:W-H965T<R]S:&5E=#DS+GAM;%!+ 0(4
M Q0    ( -F#5U9ASV0/-P,  ,@3   -              "  : 3 @!X;"]S
M='EL97,N>&UL4$L! A0#%     @ V8-75I>*NQS     $P(   L
M     ( ! A<" %]R96QS+RYR96QS4$L! A0#%     @ V8-75DC+R/EZ!@
MQCP   \              ( !ZQ<" 'AL+W=O<FMB;V]K+GAM;%!+ 0(4 Q0
M   ( -F#5U8H*(&*L0(  +XV   :              "  9(> @!X;"]?<F5L
M<R]W;W)K8F]O:RYX;6PN<F5L<U!+ 0(4 Q0    ( -F#5U9]\^X_0P(   ,U
M   3              "  7LA @!;0V]N=&5N=%]4>7!E<UTN>&UL4$L%!@
0  !E &4 NAL  .\C @    $!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>109
<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>110
<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>111
<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>448</ContextCount>
  <ElementCount>443</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>104</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>9</UnitCount>
  <MyReports>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>0000001 - Document - Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/Cover</Role>
      <ShortName>Cover</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>0000002 - Document - Audit Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/AuditInformation</Role>
      <ShortName>Audit Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>0000003 - Statement - Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/ConsolidatedBalanceSheets</Role>
      <ShortName>Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>0000004 - Statement - Consolidated Balance Sheets (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/ConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>Consolidated Balance Sheets (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>0000005 - Statement - Consolidated Statements of Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/ConsolidatedStatementsofIncome</Role>
      <ShortName>Consolidated Statements of Income</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>0000006 - Statement - Consolidated Statements of Comprehensive Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncome</Role>
      <ShortName>Consolidated Statements of Comprehensive Income</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>0000007 - Statement - Consolidated Statements of Comprehensive Income (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncomeParenthetical</Role>
      <ShortName>Consolidated Statements of Comprehensive Income (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="alg-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.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity</Role>
      <ShortName>Consolidated Statements of Stockholders' Equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="alg-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.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquityParenthetical</Role>
      <ShortName>Consolidated Statements of Stockholders' Equity (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>0000010 - Statement - Consolidated Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows</Role>
      <ShortName>Consolidated Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>0000011 - Disclosure - Significant Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/SignificantAccountingPolicies</Role>
      <ShortName>Significant Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>0000012 - Disclosure - Accounting Pronouncements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/AccountingPronouncements</Role>
      <ShortName>Accounting Pronouncements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>0000013 - Disclosure - Business Combinations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/BusinessCombinations</Role>
      <ShortName>Business Combinations</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>0000014 - Disclosure - Earnings Per Share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/EarningsPerShare</Role>
      <ShortName>Earnings Per Share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>0000015 - Disclosure - Valuation and Qualifying Accounts</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/ValuationandQualifyingAccounts</Role>
      <ShortName>Valuation and Qualifying Accounts</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>0000016 - Disclosure - Inventories</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/Inventories</Role>
      <ShortName>Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>0000017 - Disclosure - Property, Plant and Equipment</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/PropertyPlantandEquipment</Role>
      <ShortName>Property, Plant and Equipment</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>0000018 - Disclosure - Goodwill</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/Goodwill</Role>
      <ShortName>Goodwill</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>0000019 - Disclosure - Intangible Assets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/IntangibleAssets</Role>
      <ShortName>Intangible Assets</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>0000020 - Disclosure - Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/Leases</Role>
      <ShortName>Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>0000021 - Disclosure - Accrued Liabilities</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/AccruedLiabilities</Role>
      <ShortName>Accrued Liabilities</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>0000022 - Disclosure - Fair Value of Financial Instruments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/FairValueofFinancialInstruments</Role>
      <ShortName>Fair Value of Financial Instruments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>0000023 - Disclosure - Long-Term Debt</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/LongTermDebt</Role>
      <ShortName>Long-Term Debt</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>0000024 - Disclosure - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/IncomeTaxes</Role>
      <ShortName>Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>0000025 - Disclosure - Common Stock</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/CommonStock</Role>
      <ShortName>Common Stock</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>0000026 - Disclosure - Stock Options</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/StockOptions</Role>
      <ShortName>Stock Options</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>0000027 - Disclosure - Retirement Benefit Plans</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/RetirementBenefitPlans</Role>
      <ShortName>Retirement Benefit Plans</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>27</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>0000028 - Disclosure - Revenue and Segment Reporting</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/RevenueandSegmentReporting</Role>
      <ShortName>Revenue and Segment Reporting</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>28</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>0000029 - Disclosure - Accumulated Other Comprehensive Loss</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLoss</Role>
      <ShortName>Accumulated Other Comprehensive Loss</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>29</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>0000030 - Disclosure - International Operations and Geographic Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/InternationalOperationsandGeographicInformation</Role>
      <ShortName>International Operations and Geographic Information</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>30</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>0000031 - Disclosure - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/CommitmentsandContingencies</Role>
      <ShortName>Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>31</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>0000032 - Disclosure - Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies</Role>
      <ShortName>Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/SignificantAccountingPolicies</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>0000033 - Disclosure - Significant Accounting Policies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/SignificantAccountingPoliciesTables</Role>
      <ShortName>Significant Accounting Policies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/SignificantAccountingPolicies</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>0000034 - Disclosure - Earnings Per Share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/EarningsPerShareTables</Role>
      <ShortName>Earnings Per Share (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/EarningsPerShare</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>0000035 - Disclosure - Valuation and Qualifying Accounts (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/ValuationandQualifyingAccountsTables</Role>
      <ShortName>Valuation and Qualifying Accounts (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/ValuationandQualifyingAccounts</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>0000036 - Disclosure - Inventories (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/InventoriesTables</Role>
      <ShortName>Inventories (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/Inventories</ParentRole>
      <Position>36</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>0000037 - Disclosure - Property, Plant and Equipment (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/PropertyPlantandEquipmentTables</Role>
      <ShortName>Property, Plant and Equipment (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/PropertyPlantandEquipment</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>0000038 - Disclosure - Goodwill (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/GoodwillTables</Role>
      <ShortName>Goodwill (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/Goodwill</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>0000039 - Disclosure - Intangible Assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/IntangibleAssetsTables</Role>
      <ShortName>Intangible Assets (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/IntangibleAssets</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>0000040 - Disclosure - Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/LeasesTables</Role>
      <ShortName>Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/Leases</ParentRole>
      <Position>40</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>0000041 - Disclosure - Accrued Liabilities (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/AccruedLiabilitiesTables</Role>
      <ShortName>Accrued Liabilities (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/AccruedLiabilities</ParentRole>
      <Position>41</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>0000042 - Disclosure - Long-Term Debt (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/LongTermDebtTables</Role>
      <ShortName>Long-Term Debt (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/LongTermDebt</ParentRole>
      <Position>42</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>0000043 - Disclosure - Income Taxes (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/IncomeTaxesTables</Role>
      <ShortName>Income Taxes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/IncomeTaxes</ParentRole>
      <Position>43</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>0000044 - Disclosure - Stock Options (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/StockOptionsTables</Role>
      <ShortName>Stock Options (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/StockOptions</ParentRole>
      <Position>44</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>0000045 - Disclosure - Retirement Benefit Plans (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/RetirementBenefitPlansTables</Role>
      <ShortName>Retirement Benefit Plans (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/RetirementBenefitPlans</ParentRole>
      <Position>45</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>0000046 - Disclosure - Revenue and Segment Reporting (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/RevenueandSegmentReportingTables</Role>
      <ShortName>Revenue and Segment Reporting (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/RevenueandSegmentReporting</ParentRole>
      <Position>46</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>0000047 - Disclosure - Accumulated Other Comprehensive Loss (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossTables</Role>
      <ShortName>Accumulated Other Comprehensive Loss (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLoss</ParentRole>
      <Position>47</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>0000048 - Disclosure - International Operations and Geographic Information (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationTables</Role>
      <ShortName>International Operations and Geographic Information (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/InternationalOperationsandGeographicInformation</ParentRole>
      <Position>48</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>0000049 - Disclosure - Significant Accounting Policies - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails</Role>
      <ShortName>Significant Accounting Policies - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>49</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>0000050 - Disclosure - Significant Accounting Policies - Schedule of Fair Value Assumptions and Methodology (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/SignificantAccountingPoliciesScheduleofFairValueAssumptionsandMethodologyDetails</Role>
      <ShortName>Significant Accounting Policies - Schedule of Fair Value Assumptions and Methodology (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>0000051 - Disclosure - Business Combinations (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/BusinessCombinationsDetails</Role>
      <ShortName>Business Combinations (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/BusinessCombinations</ParentRole>
      <Position>51</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>0000052 - Disclosure - Earnings Per Share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/EarningsPerShareDetails</Role>
      <ShortName>Earnings Per Share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/EarningsPerShareTables</ParentRole>
      <Position>52</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>0000053 - Disclosure - Valuation and Qualifying Accounts - Schedule of Valuation and Qualifying Accounts (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails</Role>
      <ShortName>Valuation and Qualifying Accounts - Schedule of Valuation and Qualifying Accounts (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>0000054 - Disclosure - Valuation and Qualifying Accounts - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails</Role>
      <ShortName>Valuation and Qualifying Accounts - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>54</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>0000055 - Disclosure - Inventories - Schedule of Inventory, Current (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/InventoriesScheduleofInventoryCurrentDetails</Role>
      <ShortName>Inventories - Schedule of Inventory, Current (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>0000056 - Disclosure - Property, Plant and Equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/PropertyPlantandEquipmentDetails</Role>
      <ShortName>Property, Plant and Equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/PropertyPlantandEquipmentTables</ParentRole>
      <Position>56</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>0000057 - Disclosure - Goodwill (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/GoodwillDetails</Role>
      <ShortName>Goodwill (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/GoodwillTables</ParentRole>
      <Position>57</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>0000058 - Disclosure - Intangible Assets - Schedule of Definite and Indefinite Lived Intangible Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails</Role>
      <ShortName>Intangible Assets - Schedule of Definite and Indefinite Lived Intangible Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>58</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>0000059 - Disclosure - Intangible Assets - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails</Role>
      <ShortName>Intangible Assets - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>0000060 - Disclosure - Leases - Lease Cost (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/LeasesLeaseCostDetails</Role>
      <ShortName>Leases - Lease Cost (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>60</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>0000061 - Disclosure - Leases - Maturity Schedule (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/LeasesMaturityScheduleDetails</Role>
      <ShortName>Leases - Maturity Schedule (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>61</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>0000062 - Disclosure - Leases - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/LeasesAdditionalInformationDetails</Role>
      <ShortName>Leases - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>0000063 - Disclosure - Leases - Supplemental Balance Sheet Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/LeasesSupplementalBalanceSheetInformationDetails</Role>
      <ShortName>Leases - Supplemental Balance Sheet Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>63</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>0000064 - Disclosure - Leases - Supplemental Cash Flow Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/LeasesSupplementalCashFlowInformationDetails</Role>
      <ShortName>Leases - Supplemental Cash Flow Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>64</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>0000065 - Disclosure - Accrued Liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/AccruedLiabilitiesDetails</Role>
      <ShortName>Accrued Liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/AccruedLiabilitiesTables</ParentRole>
      <Position>65</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>0000066 - Disclosure - Long-Term Debt - Schedule of Long-Term Debt (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails</Role>
      <ShortName>Long-Term Debt - Schedule of Long-Term Debt (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>66</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>0000067 - Disclosure - Long-Term Debt - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails</Role>
      <ShortName>Long-Term Debt - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>67</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>0000068 - Disclosure - Income Taxes - Schedule of Income (Loss) before Provision for Income Taxes (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/IncomeTaxesScheduleofIncomeLossbeforeProvisionforIncomeTaxesDetails</Role>
      <ShortName>Income Taxes - Schedule of Income (Loss) before Provision for Income Taxes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>68</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>0000069 - Disclosure - Income Taxes - Schedule of Components of Income Tax Expense (Benefit) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails</Role>
      <ShortName>Income Taxes - Schedule of Components of Income Tax Expense (Benefit) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>69</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>0000070 - Disclosure - Income Taxes - Income Tax Reconciliation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails</Role>
      <ShortName>Income Taxes - Income Tax Reconciliation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>70</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>0000071 - Disclosure - Income Taxes - Schedule of Deferred Tax Assets and Liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails</Role>
      <ShortName>Income Taxes - Schedule of Deferred Tax Assets and Liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>71</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R72.htm</HtmlFileName>
      <LongName>0000072 - Disclosure - Income Taxes - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/IncomeTaxesAdditionalInformationDetails</Role>
      <ShortName>Income Taxes - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>72</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R73.htm</HtmlFileName>
      <LongName>0000073 - Disclosure - Income Taxes - Schedule of Unrecognized Tax Benefits (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/IncomeTaxesScheduleofUnrecognizedTaxBenefitsDetails</Role>
      <ShortName>Income Taxes - Schedule of Unrecognized Tax Benefits (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>73</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R74.htm</HtmlFileName>
      <LongName>0000074 - Disclosure - Common Stock (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/CommonStockDetails</Role>
      <ShortName>Common Stock (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/CommonStock</ParentRole>
      <Position>74</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R75.htm</HtmlFileName>
      <LongName>0000075 - Disclosure - Stock Options - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails</Role>
      <ShortName>Stock Options - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>75</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R76.htm</HtmlFileName>
      <LongName>0000076 - Disclosure - Stock Options - Schedule of Qualified Stock Option Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails</Role>
      <ShortName>Stock Options - Schedule of Qualified Stock Option Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>76</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R77.htm</HtmlFileName>
      <LongName>0000077 - Disclosure - Stock Options - Schedule of Qualified Stock Options Outstanding and Exercisable (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails</Role>
      <ShortName>Stock Options - Schedule of Qualified Stock Options Outstanding and Exercisable (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>77</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R78.htm</HtmlFileName>
      <LongName>0000078 - Disclosure - Stock Options - Equity Incentive Plan (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/StockOptionsEquityIncentivePlanDetails</Role>
      <ShortName>Stock Options - Equity Incentive Plan (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>78</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R79.htm</HtmlFileName>
      <LongName>0000079 - Disclosure - Stock Options - Schedule of Non-Qualified Stock Options Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails</Role>
      <ShortName>Stock Options - Schedule of Non-Qualified Stock Options Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>79</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R80.htm</HtmlFileName>
      <LongName>0000080 - Disclosure - Stock Options - Schedule of Non-Qualified Stock Options Outstanding and Exercisable (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails</Role>
      <ShortName>Stock Options - Schedule of Non-Qualified Stock Options Outstanding and Exercisable (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>80</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R81.htm</HtmlFileName>
      <LongName>0000081 - Disclosure - Stock Options - Schedule of Restricted Stock Award Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails</Role>
      <ShortName>Stock Options - Schedule of Restricted Stock Award Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>81</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R82.htm</HtmlFileName>
      <LongName>0000082 - Disclosure - Retirement Benefit Plans - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails</Role>
      <ShortName>Retirement Benefit Plans - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>82</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R83.htm</HtmlFileName>
      <LongName>0000083 - Disclosure - Retirement Benefit Plans - Schedule of Defined Benefit Plans Disclosures (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails</Role>
      <ShortName>Retirement Benefit Plans - Schedule of Defined Benefit Plans Disclosures (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>83</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R84.htm</HtmlFileName>
      <LongName>0000084 - Disclosure - Retirement Benefit Plans - Schedule of Assumptions Used (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofAssumptionsUsedDetails</Role>
      <ShortName>Retirement Benefit Plans - Schedule of Assumptions Used (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>84</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R85.htm</HtmlFileName>
      <LongName>0000085 - Disclosure - Retirement Benefit Plans - Schedule of Net Periodic Benefit Cost (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails</Role>
      <ShortName>Retirement Benefit Plans - Schedule of Net Periodic Benefit Cost (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>85</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R86.htm</HtmlFileName>
      <LongName>0000086 - Disclosure - Retirement Benefit Plans - Weighted Average Asset Allocations (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/RetirementBenefitPlansWeightedAverageAssetAllocationsDetails</Role>
      <ShortName>Retirement Benefit Plans - Weighted Average Asset Allocations (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>86</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R87.htm</HtmlFileName>
      <LongName>0000087 - Disclosure - Retirement Benefit Plans - Schedule of Fair Value of Plan Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails</Role>
      <ShortName>Retirement Benefit Plans - Schedule of Fair Value of Plan Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>87</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R88.htm</HtmlFileName>
      <LongName>0000088 - Disclosure - Retirement Benefit Plans - Schedule of Expected Benefit Payments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails</Role>
      <ShortName>Retirement Benefit Plans - Schedule of Expected Benefit Payments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>88</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R89.htm</HtmlFileName>
      <LongName>0000089 - Disclosure - Revenue and Segment Reporting - Schedule of Segment Reporting (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails</Role>
      <ShortName>Revenue and Segment Reporting - Schedule of Segment Reporting (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>89</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R90.htm</HtmlFileName>
      <LongName>0000090 - Disclosure - Revenue and Segment Reporting - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/RevenueandSegmentReportingAdditionalInformationDetails</Role>
      <ShortName>Revenue and Segment Reporting - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>90</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R91.htm</HtmlFileName>
      <LongName>0000091 - Disclosure - Accumulated Other Comprehensive Loss (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossDetails</Role>
      <ShortName>Accumulated Other Comprehensive Loss (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossTables</ParentRole>
      <Position>91</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R92.htm</HtmlFileName>
      <LongName>0000092 - Disclosure - International Operations and Geographic Information - Schedule of International Operations (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofInternationalOperationsDetails</Role>
      <ShortName>International Operations and Geographic Information - Schedule of International Operations (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>92</Position>
    </Report>
    <Report instance="alg-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R93.htm</HtmlFileName>
      <LongName>0000093 - Disclosure - International Operations and Geographic Information - Schedule of Selected Geographic Financial Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails</Role>
      <ShortName>International Operations and Geographic Information - Schedule of Selected Geographic Financial Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>93</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: 2 fact(s) appearing in ix:hidden were eligible for transformation: alg:ProductWarrantyAccrualLagPeriod -  alg-20221231.htm 4</Log>
  </Logs>
  <InputFiles>
    <File doctype="10-K" original="alg-20221231.htm">alg-20221231.htm</File>
    <File>a202210kex211.htm</File>
    <File>a202210kex231.htm</File>
    <File>a202210kex311.htm</File>
    <File>a202210kex312.htm</File>
    <File>a202210kex321.htm</File>
    <File>a202210kex322.htm</File>
    <File>alg-20221231.xsd</File>
    <File>alg-20221231_cal.xml</File>
    <File>alg-20221231_def.xml</File>
    <File>alg-20221231_lab.xml</File>
    <File>alg-20221231_pre.xml</File>
  </InputFiles>
  <SupplementalFiles>
    <File>alg-20221231_g1.jpg</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy items="1391">http://fasb.org/us-gaap/2022</BaseTaxonomy>
    <BaseTaxonomy items="37">http://xbrl.sec.gov/dei/2022</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>114
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "alg-20221231.htm": {
   "axisCustom": 0,
   "axisStandard": 29,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2022": 1391,
    "http://xbrl.sec.gov/dei/2022": 37
   },
   "contextCount": 448,
   "dts": {
    "calculationLink": {
     "local": [
      "alg-20221231_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "alg-20221231_def.xml"
     ]
    },
    "inline": {
     "local": [
      "alg-20221231.htm"
     ]
    },
    "labelLink": {
     "local": [
      "alg-20221231_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "alg-20221231_pre.xml"
     ]
    },
    "schema": {
     "local": [
      "alg-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": 703,
   "entityCount": 1,
   "hidden": {
    "http://fasb.org/us-gaap/2022": 10,
    "http://www.alamo-group.com/20221231": 2,
    "http://xbrl.sec.gov/dei/2022": 4,
    "total": 16
   },
   "keyCustom": 36,
   "keyStandard": 407,
   "memberCustom": 40,
   "memberStandard": 62,
   "nsprefix": "alg",
   "nsuri": "http://www.alamo-group.com/20221231",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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",
     "menuCat": "Cover",
     "order": "1",
     "role": "http://www.alamo-group.com/role/Cover",
     "shortName": "Cover",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000010 - Statement - Consolidated Statements of Cash Flows",
     "menuCat": "Statements",
     "order": "10",
     "role": "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows",
     "shortName": "Consolidated Statements of Cash Flows",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:ProvisionForDoubtfulAccounts",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000011 - Disclosure - Significant Accounting Policies",
     "menuCat": "Notes",
     "order": "11",
     "role": "http://www.alamo-group.com/role/SignificantAccountingPolicies",
     "shortName": "Significant Accounting Policies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000012 - Disclosure - Accounting Pronouncements",
     "menuCat": "Notes",
     "order": "12",
     "role": "http://www.alamo-group.com/role/AccountingPronouncements",
     "shortName": "Accounting Pronouncements",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000013 - Disclosure - Business Combinations",
     "menuCat": "Notes",
     "order": "13",
     "role": "http://www.alamo-group.com/role/BusinessCombinations",
     "shortName": "Business Combinations",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000014 - Disclosure - Earnings Per Share",
     "menuCat": "Notes",
     "order": "14",
     "role": "http://www.alamo-group.com/role/EarningsPerShare",
     "shortName": "Earnings Per Share",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000015 - Disclosure - Valuation and Qualifying Accounts",
     "menuCat": "Notes",
     "order": "15",
     "role": "http://www.alamo-group.com/role/ValuationandQualifyingAccounts",
     "shortName": "Valuation and Qualifying Accounts",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000016 - Disclosure - Inventories",
     "menuCat": "Notes",
     "order": "16",
     "role": "http://www.alamo-group.com/role/Inventories",
     "shortName": "Inventories",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000017 - Disclosure - Property, Plant and Equipment",
     "menuCat": "Notes",
     "order": "17",
     "role": "http://www.alamo-group.com/role/PropertyPlantandEquipment",
     "shortName": "Property, Plant and Equipment",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000018 - Disclosure - Goodwill",
     "menuCat": "Notes",
     "order": "18",
     "role": "http://www.alamo-group.com/role/Goodwill",
     "shortName": "Goodwill",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000019 - Disclosure - Intangible Assets",
     "menuCat": "Notes",
     "order": "19",
     "role": "http://www.alamo-group.com/role/IntangibleAssets",
     "shortName": "Intangible Assets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:AuditorFirmId",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "false",
     "longName": "0000002 - Document - Audit Information",
     "menuCat": "Cover",
     "order": "2",
     "role": "http://www.alamo-group.com/role/AuditInformation",
     "shortName": "Audit Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:AuditorFirmId",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000020 - Disclosure - Leases",
     "menuCat": "Notes",
     "order": "20",
     "role": "http://www.alamo-group.com/role/Leases",
     "shortName": "Leases",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000021 - Disclosure - Accrued Liabilities",
     "menuCat": "Notes",
     "order": "21",
     "role": "http://www.alamo-group.com/role/AccruedLiabilities",
     "shortName": "Accrued Liabilities",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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 of Financial Instruments",
     "menuCat": "Notes",
     "order": "22",
     "role": "http://www.alamo-group.com/role/FairValueofFinancialInstruments",
     "shortName": "Fair Value of Financial Instruments",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000023 - Disclosure - Long-Term Debt",
     "menuCat": "Notes",
     "order": "23",
     "role": "http://www.alamo-group.com/role/LongTermDebt",
     "shortName": "Long-Term Debt",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000024 - Disclosure - Income Taxes",
     "menuCat": "Notes",
     "order": "24",
     "role": "http://www.alamo-group.com/role/IncomeTaxes",
     "shortName": "Income Taxes",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000025 - Disclosure - Common Stock",
     "menuCat": "Notes",
     "order": "25",
     "role": "http://www.alamo-group.com/role/CommonStock",
     "shortName": "Common Stock",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000026 - Disclosure - Stock Options",
     "menuCat": "Notes",
     "order": "26",
     "role": "http://www.alamo-group.com/role/StockOptions",
     "shortName": "Stock Options",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000027 - Disclosure - Retirement Benefit Plans",
     "menuCat": "Notes",
     "order": "27",
     "role": "http://www.alamo-group.com/role/RetirementBenefitPlans",
     "shortName": "Retirement Benefit Plans",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000028 - Disclosure - Revenue and Segment Reporting",
     "menuCat": "Notes",
     "order": "28",
     "role": "http://www.alamo-group.com/role/RevenueandSegmentReporting",
     "shortName": "Revenue and Segment Reporting",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000029 - Disclosure - Accumulated Other Comprehensive Loss",
     "menuCat": "Notes",
     "order": "29",
     "role": "http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLoss",
     "shortName": "Accumulated Other Comprehensive Loss",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ComprehensiveIncomeNoteTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_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": "0000003 - Statement - Consolidated Balance Sheets",
     "menuCat": "Statements",
     "order": "3",
     "role": "http://www.alamo-group.com/role/ConsolidatedBalanceSheets",
     "shortName": "Consolidated Balance Sheets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alg:InternationalOperationsAndGeographicInformationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000030 - Disclosure - International Operations and Geographic Information",
     "menuCat": "Notes",
     "order": "30",
     "role": "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformation",
     "shortName": "International Operations and Geographic Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alg:InternationalOperationsAndGeographicInformationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000031 - Disclosure - Commitments and Contingencies",
     "menuCat": "Notes",
     "order": "31",
     "role": "http://www.alamo-group.com/role/CommitmentsandContingencies",
     "shortName": "Commitments and Contingencies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000032 - Disclosure - Significant Accounting Policies (Policies)",
     "menuCat": "Policies",
     "order": "32",
     "role": "http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies",
     "shortName": "Significant Accounting Policies (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConsolidationPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000033 - Disclosure - Significant Accounting Policies (Tables)",
     "menuCat": "Tables",
     "order": "33",
     "role": "http://www.alamo-group.com/role/SignificantAccountingPoliciesTables",
     "shortName": "Significant Accounting Policies (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000034 - Disclosure - Earnings Per Share (Tables)",
     "menuCat": "Tables",
     "order": "34",
     "role": "http://www.alamo-group.com/role/EarningsPerShareTables",
     "shortName": "Earnings Per Share (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alg:ScheduleOfValuationAndQualifyingAccountsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000035 - Disclosure - Valuation and Qualifying Accounts (Tables)",
     "menuCat": "Tables",
     "order": "35",
     "role": "http://www.alamo-group.com/role/ValuationandQualifyingAccountsTables",
     "shortName": "Valuation and Qualifying Accounts (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alg:ScheduleOfValuationAndQualifyingAccountsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000036 - Disclosure - Inventories (Tables)",
     "menuCat": "Tables",
     "order": "36",
     "role": "http://www.alamo-group.com/role/InventoriesTables",
     "shortName": "Inventories (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000037 - Disclosure - Property, Plant and Equipment (Tables)",
     "menuCat": "Tables",
     "order": "37",
     "role": "http://www.alamo-group.com/role/PropertyPlantandEquipmentTables",
     "shortName": "Property, Plant and Equipment (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000038 - Disclosure - Goodwill (Tables)",
     "menuCat": "Tables",
     "order": "38",
     "role": "http://www.alamo-group.com/role/GoodwillTables",
     "shortName": "Goodwill (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000039 - Disclosure - Intangible Assets (Tables)",
     "menuCat": "Tables",
     "order": "39",
     "role": "http://www.alamo-group.com/role/IntangibleAssetsTables",
     "shortName": "Intangible Assets (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:CommonStockParOrStatedValuePerShare",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommonStockParOrStatedValuePerShare",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000004 - Statement - Consolidated Balance Sheets (Parenthetical)",
     "menuCat": "Statements",
     "order": "4",
     "role": "http://www.alamo-group.com/role/ConsolidatedBalanceSheetsParenthetical",
     "shortName": "Consolidated Balance Sheets (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:CommonStockParOrStatedValuePerShare",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommonStockParOrStatedValuePerShare",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     }
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000040 - Disclosure - Leases (Tables)",
     "menuCat": "Tables",
     "order": "40",
     "role": "http://www.alamo-group.com/role/LeasesTables",
     "shortName": "Leases (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000041 - Disclosure - Accrued Liabilities (Tables)",
     "menuCat": "Tables",
     "order": "41",
     "role": "http://www.alamo-group.com/role/AccruedLiabilitiesTables",
     "shortName": "Accrued Liabilities (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000042 - Disclosure - Long-Term Debt (Tables)",
     "menuCat": "Tables",
     "order": "42",
     "role": "http://www.alamo-group.com/role/LongTermDebtTables",
     "shortName": "Long-Term Debt (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000043 - Disclosure - Income Taxes (Tables)",
     "menuCat": "Tables",
     "order": "43",
     "role": "http://www.alamo-group.com/role/IncomeTaxesTables",
     "shortName": "Income Taxes (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000044 - Disclosure - Stock Options (Tables)",
     "menuCat": "Tables",
     "order": "44",
     "role": "http://www.alamo-group.com/role/StockOptionsTables",
     "shortName": "Stock Options (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000045 - Disclosure - Retirement Benefit Plans (Tables)",
     "menuCat": "Tables",
     "order": "45",
     "role": "http://www.alamo-group.com/role/RetirementBenefitPlansTables",
     "shortName": "Retirement Benefit Plans (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R46": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000046 - Disclosure - Revenue and Segment Reporting (Tables)",
     "menuCat": "Tables",
     "order": "46",
     "role": "http://www.alamo-group.com/role/RevenueandSegmentReportingTables",
     "shortName": "Revenue and Segment Reporting (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R47": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000047 - Disclosure - Accumulated Other Comprehensive Loss (Tables)",
     "menuCat": "Tables",
     "order": "47",
     "role": "http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossTables",
     "shortName": "Accumulated Other Comprehensive Loss (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R48": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000048 - Disclosure - International Operations and Geographic Information (Tables)",
     "menuCat": "Tables",
     "order": "48",
     "role": "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationTables",
     "shortName": "International Operations and Geographic Information (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R49": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "us-gaap:RevenueFromContractWithCustomerPolicyTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "ibd895d48ac38440e907abfa04402881f_D20221001-20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NumberOfReportableSegments",
      "reportCount": 1,
      "unitRef": "segment",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000049 - Disclosure - Significant Accounting Policies - Additional Information (Details)",
     "menuCat": "Details",
     "order": "49",
     "role": "http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails",
     "shortName": "Significant Accounting Policies - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:RestrictedCash",
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i4a4acb75213e4a59aa709376381730bd_I20211231",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:RestrictedCash",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000005 - Statement - Consolidated Statements of Income",
     "menuCat": "Statements",
     "order": "5",
     "role": "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome",
     "shortName": "Consolidated Statements of Income",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:CostOfGoodsAndServicesSold",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R50": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "4",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000050 - Disclosure - Significant Accounting Policies - Schedule of Fair Value Assumptions and Methodology (Details)",
     "menuCat": "Details",
     "order": "50",
     "role": "http://www.alamo-group.com/role/SignificantAccountingPoliciesScheduleofFairValueAssumptionsandMethodologyDetails",
     "shortName": "Significant Accounting Policies - Schedule of Fair Value Assumptions and Methodology (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "4",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R51": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "idbd5d2e161fe40df8aef073e0d3c8443_I20211026",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000051 - Disclosure - Business Combinations (Details)",
     "menuCat": "Details",
     "order": "51",
     "role": "http://www.alamo-group.com/role/BusinessCombinationsDetails",
     "shortName": "Business Combinations (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "idbd5d2e161fe40df8aef073e0d3c8443_I20211026",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R52": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000052 - Disclosure - Earnings Per Share (Details)",
     "menuCat": "Details",
     "order": "52",
     "role": "http://www.alamo-group.com/role/EarningsPerShareDetails",
     "shortName": "Earnings Per Share (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R53": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "alg:ScheduleOfValuationAndQualifyingAccountsTableTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "ia9823408724d4000926edbb1d190feae_I20211231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ValuationAllowancesAndReservesBalance",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000053 - Disclosure - Valuation and Qualifying Accounts - Schedule of Valuation and Qualifying Accounts (Details)",
     "menuCat": "Details",
     "order": "53",
     "role": "http://www.alamo-group.com/role/ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails",
     "shortName": "Valuation and Qualifying Accounts - Schedule of Valuation and Qualifying Accounts (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "alg:ScheduleOfValuationAndQualifyingAccountsTableTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "ifb1091d992d44cf0b0f9802926f1c066_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R54": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "us-gaap:InventoryImpairmentPolicy",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryValuationReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000054 - Disclosure - Valuation and Qualifying Accounts - Additional Information (Details)",
     "menuCat": "Details",
     "order": "54",
     "role": "http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails",
     "shortName": "Valuation and Qualifying Accounts - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "us-gaap:InventoryImpairmentPolicy",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryValuationReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R55": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryFinishedGoodsNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000055 - Disclosure - Inventories - Schedule of Inventory, Current (Details)",
     "menuCat": "Details",
     "order": "55",
     "role": "http://www.alamo-group.com/role/InventoriesScheduleofInventoryCurrentDetails",
     "shortName": "Inventories - Schedule of Inventory, Current (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryFinishedGoodsNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R56": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000056 - Disclosure - Property, Plant and Equipment (Details)",
     "menuCat": "Details",
     "order": "56",
     "role": "http://www.alamo-group.com/role/PropertyPlantandEquipmentDetails",
     "shortName": "Property, Plant and Equipment (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i3348296671fa487a884971b97eb216d2_I20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R57": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfGoodwillTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i4a4acb75213e4a59aa709376381730bd_I20211231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000057 - Disclosure - Goodwill (Details)",
     "menuCat": "Details",
     "order": "57",
     "role": "http://www.alamo-group.com/role/GoodwillDetails",
     "shortName": "Goodwill (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfGoodwillTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:GoodwillForeignCurrencyTranslationGainLoss",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R58": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_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": "0000058 - Disclosure - Intangible Assets - Schedule of Definite and Indefinite Lived Intangible Assets (Details)",
     "menuCat": "Details",
     "order": "58",
     "role": "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails",
     "shortName": "Intangible Assets - Schedule of Definite and Indefinite Lived Intangible Assets (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R59": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FiniteLivedIntangibleAssetsNet",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000059 - Disclosure - Intangible Assets - Additional Information (Details)",
     "menuCat": "Details",
     "order": "59",
     "role": "http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails",
     "shortName": "Intangible Assets - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive",
       "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree",
       "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-5",
      "lang": "en-US",
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000006 - Statement - Consolidated Statements of Comprehensive Income",
     "menuCat": "Statements",
     "order": "6",
     "role": "http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncome",
     "shortName": "Consolidated Statements of Comprehensive Income",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R60": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FinanceLeaseRightOfUseAssetAmortization",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000060 - Disclosure - Leases - Lease Cost (Details)",
     "menuCat": "Details",
     "order": "60",
     "role": "http://www.alamo-group.com/role/LeasesLeaseCostDetails",
     "shortName": "Leases - Lease Cost (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FinanceLeaseRightOfUseAssetAmortization",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R61": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_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": "0000061 - Disclosure - Leases - Maturity Schedule (Details)",
     "menuCat": "Details",
     "order": "61",
     "role": "http://www.alamo-group.com/role/LeasesMaturityScheduleDetails",
     "shortName": "Leases - Maturity Schedule (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R62": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000062 - Disclosure - Leases - Additional Information (Details)",
     "menuCat": "Details",
     "order": "62",
     "role": "http://www.alamo-group.com/role/LeasesAdditionalInformationDetails",
     "shortName": "Leases - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R63": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "alg:AssetsAndLiabilitiesLesseeTableTextBlock",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000063 - Disclosure - Leases - Supplemental Balance Sheet Information (Details)",
     "menuCat": "Details",
     "order": "63",
     "role": "http://www.alamo-group.com/role/LeasesSupplementalBalanceSheetInformationDetails",
     "shortName": "Leases - Supplemental Balance Sheet Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "alg:AssetsAndLiabilitiesLesseeTableTextBlock",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R64": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "alg:SupplementalCashFlowInformationRelatedToLeasesTableTextBlock",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000064 - Disclosure - Leases - Supplemental Cash Flow Information (Details)",
     "menuCat": "Details",
     "order": "64",
     "role": "http://www.alamo-group.com/role/LeasesSupplementalCashFlowInformationDetails",
     "shortName": "Leases - Supplemental Cash Flow Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "alg:SupplementalCashFlowInformationRelatedToLeasesTableTextBlock",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R65": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccruedEmployeeBenefitsCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000065 - Disclosure - Accrued Liabilities (Details)",
     "menuCat": "Details",
     "order": "65",
     "role": "http://www.alamo-group.com/role/AccruedLiabilitiesDetails",
     "shortName": "Accrued Liabilities (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccruedEmployeeBenefitsCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R66": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDebtInstrumentsTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FinanceLeaseLiability",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000066 - Disclosure - Long-Term Debt - Schedule of Long-Term Debt (Details)",
     "menuCat": "Details",
     "order": "66",
     "role": "http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails",
     "shortName": "Long-Term Debt - Schedule of Long-Term Debt (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDebtInstrumentsTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FinanceLeaseLiability",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R67": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000067 - Disclosure - Long-Term Debt - Additional Information (Details)",
     "menuCat": "Details",
     "order": "67",
     "role": "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails",
     "shortName": "Long-Term Debt - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R68": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000068 - Disclosure - Income Taxes - Schedule of Income (Loss) before Provision for Income Taxes (Details)",
     "menuCat": "Details",
     "order": "68",
     "role": "http://www.alamo-group.com/role/IncomeTaxesScheduleofIncomeLossbeforeProvisionforIncomeTaxesDetails",
     "shortName": "Income Taxes - Schedule of Income (Loss) before Provision for Income Taxes (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R69": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000069 - Disclosure - Income Taxes - Schedule of Components of Income Tax Expense (Benefit) (Details)",
     "menuCat": "Details",
     "order": "69",
     "role": "http://www.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails",
     "shortName": "Income Taxes - Schedule of Components of Income Tax Expense (Benefit) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000007 - Statement - Consolidated Statements of Comprehensive Income (Parenthetical)",
     "menuCat": "Statements",
     "order": "7",
     "role": "http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncomeParenthetical",
     "shortName": "Consolidated Statements of Comprehensive Income (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R70": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_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": "0000070 - Disclosure - Income Taxes - Income Tax Reconciliation (Details)",
     "menuCat": "Details",
     "order": "70",
     "role": "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails",
     "shortName": "Income Taxes - Income Tax Reconciliation (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R71": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DeferredTaxAssetsInventory",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000071 - Disclosure - Income Taxes - Schedule of Deferred Tax Assets and Liabilities (Details)",
     "menuCat": "Details",
     "order": "71",
     "role": "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails",
     "shortName": "Income Taxes - Schedule of Deferred Tax Assets and Liabilities (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DeferredTaxAssetsInventory",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R72": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000072 - Disclosure - Income Taxes - Additional Information (Details)",
     "menuCat": "Details",
     "order": "72",
     "role": "http://www.alamo-group.com/role/IncomeTaxesAdditionalInformationDetails",
     "shortName": "Income Taxes - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R73": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i4a4acb75213e4a59aa709376381730bd_I20211231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:UnrecognizedTaxBenefits",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000073 - Disclosure - Income Taxes - Schedule of Unrecognized Tax Benefits (Details)",
     "menuCat": "Details",
     "order": "73",
     "role": "http://www.alamo-group.com/role/IncomeTaxesScheduleofUnrecognizedTaxBenefitsDetails",
     "shortName": "Income Taxes - Schedule of Unrecognized Tax Benefits (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i5d74fc3138934e70861715f06fa062c7_I20201231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:UnrecognizedTaxBenefits",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R74": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommonStockDividendsPerShareCashPaid",
      "reportCount": 1,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000074 - Disclosure - Common Stock (Details)",
     "menuCat": "Details",
     "order": "74",
     "role": "http://www.alamo-group.com/role/CommonStockDetails",
     "shortName": "Common Stock (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:StockRepurchaseProgramAuthorizedAmount1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R75": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i9f473c4749174271bfd71f93c77ca853_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod",
      "reportCount": 1,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000075 - Disclosure - Stock Options - Additional Information (Details)",
     "menuCat": "Details",
     "order": "75",
     "role": "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails",
     "shortName": "Stock Options - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231",
      "decimals": "2",
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     }
    },
    "R76": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "icd1fb9b0cdab41bd9c168d8388cb4c8d_I20211231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000076 - Disclosure - Stock Options - Schedule of Qualified Stock Option Activity (Details)",
     "menuCat": "Details",
     "order": "76",
     "role": "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails",
     "shortName": "Stock Options - Schedule of Qualified Stock Option Activity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "ifb8e3086f4284ecfafd4291e3c60da92_D20220101-20221231",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R77": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i0b10e572815d4913953edd8c1c32efa6_I20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000077 - Disclosure - Stock Options - Schedule of Qualified Stock Options Outstanding and Exercisable (Details)",
     "menuCat": "Details",
     "order": "77",
     "role": "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails",
     "shortName": "Stock Options - Schedule of Qualified Stock Options Outstanding and Exercisable (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "ibee7f745de38423e9660fafdbc60fe1e_D20220101-20221231",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     }
    },
    "R78": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i667450baff3d4245af27b6b303fd59cd_I20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000078 - Disclosure - Stock Options - Equity Incentive Plan (Details)",
     "menuCat": "Details",
     "order": "78",
     "role": "http://www.alamo-group.com/role/StockOptionsEquityIncentivePlanDetails",
     "shortName": "Stock Options - Equity Incentive Plan (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i667450baff3d4245af27b6b303fd59cd_I20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R79": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i1fd93aa3097f4b8dbbca4de45cf5ed5b_I20211231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000079 - Disclosure - Stock Options - Schedule of Non-Qualified Stock Options Activity (Details)",
     "menuCat": "Details",
     "order": "79",
     "role": "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails",
     "shortName": "Stock Options - Schedule of Non-Qualified Stock Options Activity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i520319aad6614d9ab90360d275ad50ca_D20220101-20221231",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i48e658fbd10f456086edb59193159816_I20191231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SharesOutstanding",
      "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.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity",
     "shortName": "Consolidated Statements of Stockholders' Equity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i48e658fbd10f456086edb59193159816_I20191231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SharesOutstanding",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R80": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i667450baff3d4245af27b6b303fd59cd_I20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000080 - Disclosure - Stock Options - Schedule of Non-Qualified Stock Options Outstanding and Exercisable (Details)",
     "menuCat": "Details",
     "order": "80",
     "role": "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails",
     "shortName": "Stock Options - Schedule of Non-Qualified Stock Options Outstanding and Exercisable (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "ifc1c7939faa3461a8d5c3b191e68cfcd_D20220101-20221231",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     }
    },
    "R81": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "ifc8f47975add4f749d27d6b110aa5ed3_I20211231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000081 - Disclosure - Stock Options - Schedule of Restricted Stock Award Activity (Details)",
     "menuCat": "Details",
     "order": "81",
     "role": "http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails",
     "shortName": "Stock Options - Schedule of Restricted Stock Award Activity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "ie83acb459d73467c87c99796c09994fb_I20191231",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R82": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i9023c726c26349e2a4c074fdc4a88989_I20060203",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "alg:DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans",
      "reportCount": 1,
      "unique": true,
      "unitRef": "plan",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000082 - Disclosure - Retirement Benefit Plans - Additional Information (Details)",
     "menuCat": "Details",
     "order": "82",
     "role": "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails",
     "shortName": "Retirement Benefit Plans - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i9023c726c26349e2a4c074fdc4a88989_I20060203",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "alg:DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans",
      "reportCount": 1,
      "unique": true,
      "unitRef": "plan",
      "xsiNil": "false"
     }
    },
    "R83": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i4a4acb75213e4a59aa709376381730bd_I20211231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DefinedBenefitPlanFairValueOfPlanAssets",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000083 - Disclosure - Retirement Benefit Plans - Schedule of Defined Benefit Plans Disclosures (Details)",
     "menuCat": "Details",
     "order": "83",
     "role": "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails",
     "shortName": "Retirement Benefit Plans - Schedule of Defined Benefit Plans Disclosures (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i157f5442992d4d448c7b527a323d059a_I20201231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:DefinedBenefitPlanBenefitObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R84": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "ib2d3d6c4caba470f9bbe23e7c7147456_I20221231",
      "decimals": "4",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000084 - Disclosure - Retirement Benefit Plans - Schedule of Assumptions Used (Details)",
     "menuCat": "Details",
     "order": "84",
     "role": "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofAssumptionsUsedDetails",
     "shortName": "Retirement Benefit Plans - Schedule of Assumptions Used (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "ib2d3d6c4caba470f9bbe23e7c7147456_I20221231",
      "decimals": "4",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R85": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DefinedBenefitPlanServiceCost",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000085 - Disclosure - Retirement Benefit Plans - Schedule of Net Periodic Benefit Cost (Details)",
     "menuCat": "Details",
     "order": "85",
     "role": "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails",
     "shortName": "Retirement Benefit Plans - Schedule of Net Periodic Benefit Cost (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfNetBenefitCostsTableTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i1db6e28dc0a04b83b522ab4f87991610_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R86": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "ib2d3d6c4caba470f9bbe23e7c7147456_I20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000086 - Disclosure - Retirement Benefit Plans - Weighted Average Asset Allocations (Details)",
     "menuCat": "Details",
     "order": "86",
     "role": "http://www.alamo-group.com/role/RetirementBenefitPlansWeightedAverageAssetAllocationsDetails",
     "shortName": "Retirement Benefit Plans - Weighted Average Asset Allocations (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "ib2d3d6c4caba470f9bbe23e7c7147456_I20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R87": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DefinedBenefitPlanFairValueOfPlanAssets",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000087 - Disclosure - Retirement Benefit Plans - Schedule of Fair Value of Plan Assets (Details)",
     "menuCat": "Details",
     "order": "87",
     "role": "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails",
     "shortName": "Retirement Benefit Plans - Schedule of Fair Value of Plan Assets (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "ifa59e56462b747ddaf8ef3be4a751883_I20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:DefinedBenefitPlanFairValueOfPlanAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R88": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "ib2d3d6c4caba470f9bbe23e7c7147456_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": "0000088 - Disclosure - Retirement Benefit Plans - Schedule of Expected Benefit Payments (Details)",
     "menuCat": "Details",
     "order": "88",
     "role": "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails",
     "shortName": "Retirement Benefit Plans - Schedule of Expected Benefit Payments (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "ib2d3d6c4caba470f9bbe23e7c7147456_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R89": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000089 - Disclosure - Revenue and Segment Reporting - Schedule of Segment Reporting (Details)",
     "menuCat": "Details",
     "order": "89",
     "role": "http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails",
     "shortName": "Revenue and Segment Reporting - Schedule of Segment Reporting (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i803060fc3e714dea8c404e56b28916c4_I20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:Assets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommonStockDividendsPerShareCashPaid",
      "reportCount": 1,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000009 - Statement - Consolidated Statements of Stockholders' Equity (Parenthetical)",
     "menuCat": "Statements",
     "order": "9",
     "role": "http://www.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquityParenthetical",
     "shortName": "Consolidated Statements of Stockholders' Equity (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": null
    },
    "R90": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "us-gaap:RevenueFromContractWithCustomerPolicyTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "ibd895d48ac38440e907abfa04402881f_D20221001-20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NumberOfReportableSegments",
      "reportCount": 1,
      "unitRef": "segment",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000090 - Disclosure - Revenue and Segment Reporting - Additional Information (Details)",
     "menuCat": "Details",
     "order": "90",
     "role": "http://www.alamo-group.com/role/RevenueandSegmentReportingAdditionalInformationDetails",
     "shortName": "Revenue and Segment Reporting - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R91": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i4a4acb75213e4a59aa709376381730bd_I20211231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000091 - Disclosure - Accumulated Other Comprehensive Loss (Details)",
     "menuCat": "Details",
     "order": "91",
     "role": "http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossDetails",
     "shortName": "Accumulated Other Comprehensive Loss (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i16b0080a3731492cbc6a4d1595ee7cfc_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R92": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000092 - Disclosure - International Operations and Geographic Information - Schedule of International Operations (Details)",
     "menuCat": "Details",
     "order": "92",
     "role": "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofInternationalOperationsDetails",
     "shortName": "International Operations and Geographic Information - Schedule of International Operations (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "if0ccda55f2d64fc59a818cd96115d9b6_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R93": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "id5f47ec62d0941e386fb0ddac530265e_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000093 - Disclosure - International Operations and Geographic Information - Schedule of Selected Geographic Financial Information (Details)",
     "menuCat": "Details",
     "order": "93",
     "role": "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails",
     "shortName": "International Operations and Geographic Information - Schedule of Selected Geographic Financial Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "alg-20221231.htm",
      "contextRef": "i7ca1a2570c4a481dabf1bad462d1644a_I20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:NoncurrentAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 104,
   "tag": {
    "alg_AccountingPoliciesLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "[Line Items] for Accounting Policies [Table]",
        "label": "Accounting Policies [Line Items]",
        "terseLabel": "Accounting Policies [Line Items]"
       }
      }
     },
     "localname": "AccountingPoliciesLineItems",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alg_AccountingPoliciesTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accounting Policies [Table]",
        "label": "Accounting Policies [Table]",
        "terseLabel": "Accounting Policies [Table]"
       }
      }
     },
     "localname": "AccountingPoliciesTable",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alg_AssetsAndLiabilitiesLesseeTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Assets And Liabilities, Lessee",
        "label": "Assets And Liabilities, Lessee [Table Text Block]",
        "terseLabel": "Supplemental Balance Sheet Information Related to Leases"
       }
      }
     },
     "localname": "AssetsAndLiabilitiesLesseeTableTextBlock",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "alg_AuditInformationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Audit Information",
        "label": "Audit Information [Abstract]"
       }
      }
     },
     "localname": "AuditInformationAbstract",
     "nsuri": "http://www.alamo-group.com/20221231",
     "xbrltype": "stringItemType"
    },
    "alg_AverageCommonSharesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Average Common Shares [Abstract]",
        "label": "Average Common Shares [Abstract]",
        "terseLabel": "Average common shares:"
       }
      }
     },
     "localname": "AverageCommonSharesAbstract",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "alg_AwardDateTwoMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Award Date Two",
        "label": "Award Date Two [Member]",
        "terseLabel": "Granted after 2020"
       }
      }
     },
     "localname": "AwardDateTwoMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_BushHogMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Bush Hog [Member]",
        "label": "Bush Hog [Member]",
        "terseLabel": "Bush Hog"
       }
      }
     },
     "localname": "BushHogMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_CashAndShortTermInvestmentsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cash And Short Term Investments [Member]",
        "label": "Cash And Short Term Investments [Member]",
        "terseLabel": "Cash &amp; Short-term Investments"
       }
      }
     },
     "localname": "CashAndShortTermInvestmentsMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_CurrentEmployeesCoveredByPensionPlan": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Current Employees Covered By Pension Plan",
        "label": "Current Employees Covered By Pension Plan",
        "terseLabel": "Current employees"
       }
      }
     },
     "localname": "CurrentEmployeesCoveredByPensionPlan",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "alg_DebtInstrumentNumberOfCovenants": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument, Number Of Covenants",
        "label": "Debt Instrument, Number Of Covenants",
        "terseLabel": "Number of covenants"
       }
      }
     },
     "localname": "DebtInstrumentNumberOfCovenants",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "alg_DeferredCompensationArrangementMaximumContractualTerm": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred Compensation Arrangement Maximum Contractual Term",
        "label": "Deferred Compensation Arrangement Maximum Contractual Term",
        "terseLabel": "Years of monthly installments associated with SERP disability"
       }
      }
     },
     "localname": "DeferredCompensationArrangementMaximumContractualTerm",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "alg_DeferredCompensationArrangementRequisiteServicePeriod": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred Compensation Arrangement Requisite Service Period",
        "label": "Deferred Compensation Arrangement Requisite Service Period",
        "terseLabel": "SERP credited service period"
       }
      }
     },
     "localname": "DeferredCompensationArrangementRequisiteServicePeriod",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "alg_DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred Compensation Arrangement With Individual, Duration Limit Vested Retirement Benefit Will Be Paid After Death Or Change In Control",
        "label": "Deferred Compensation Arrangement With Individual, Duration Limit Vested Retirement Benefit Will Be Paid After Death Or Change In Control",
        "terseLabel": "Period of time that vested retirement benefit will be paid after death or change in control"
       }
      }
     },
     "localname": "DeferredCompensationArrangementWithIndividualDurationLimitVestedRetirementBenefitWillBePaidAfterDeathOrChangeInControl",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "alg_DeferredCompensationArrangementWithIndividualRetirementAge": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred Compensation Arrangement With Individual, Retirement Age",
        "label": "Deferred Compensation Arrangement With Individual, Retirement Age",
        "terseLabel": "Retirement age"
       }
      }
     },
     "localname": "DeferredCompensationArrangementWithIndividualRetirementAge",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "alg_DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred Compensation Arrangement with Individual, Term Of Final Average Salary Used To Determine Retirement Benefit",
        "label": "Deferred Compensation Arrangement with Individual, Term Of Final Average Salary Used To Determine Retirement Benefit",
        "terseLabel": "Number of final years in which the Retirement Benefit is based"
       }
      }
     },
     "localname": "DeferredCompensationArrangementwithIndividualTermOfFinalAverageSalaryUsedToDetermineRetirementBenefit",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "alg_DeferredTaxAssetsLeaseLiability": {
     "auth_ref": [],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred Tax Assets, Lease Liability",
        "label": "Deferred Tax Assets, Lease Liability",
        "terseLabel": "Lease liability"
       }
      }
     },
     "localname": "DeferredTaxAssetsLeaseLiability",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alg_DeferredTaxLiabilitiesLeaseAsset": {
     "auth_ref": [],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred Tax Liabilities, Lease Asset",
        "label": "Deferred Tax Liabilities, Lease Asset",
        "negatedTerseLabel": "Lease asset"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesLeaseAsset",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alg_DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Defined Benefit Plan, Number Of Defined Benefit Pension Plans",
        "label": "Defined Benefit Plan, Number Of Defined Benefit Pension Plans",
        "terseLabel": "Number of non-contributory defined benefit pension plans"
       }
      }
     },
     "localname": "DefinedBenefitPlanNumberOfDefinedBenefitPensionPlans",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "alg_DefinedBenefitPlanRetirementBenefitPercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Defined Benefit Plan, Retirement Benefit Percentage",
        "label": "Defined Benefit Plan, Retirement Benefit Percentage",
        "terseLabel": "Current retirement benefit percentage"
       }
      }
     },
     "localname": "DefinedBenefitPlanRetirementBenefitPercentage",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "alg_DefinedContributionPlanNumberOfPlans": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Defined Contribution Plan, Number Of Plans",
        "label": "Defined Contribution Plan, Number Of Plans",
        "terseLabel": "Number of defined contribution plans"
       }
      }
     },
     "localname": "DefinedContributionPlanNumberOfPlans",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "alg_DefinedContributionPlanNumberOfSubsidiaries": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Defined Contribution Plan, Number Of Subsidiaries",
        "label": "Defined Contribution Plan, Number Of Subsidiaries",
        "terseLabel": "Number of international subsidiaries that participate in defined contribution and savings plan"
       }
      }
     },
     "localname": "DefinedContributionPlanNumberOfSubsidiaries",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "alg_DutchPowerCompanyBVMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Dutch Power Company B.V.",
        "label": "Dutch Power Company B.V. [Member]",
        "terseLabel": "Dutch Power"
       }
      }
     },
     "localname": "DutchPowerCompanyBVMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/BusinessCombinationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Effective Income Tax Rate Reconciliation, Before Tax Cuts And Jobs Act Of 2017, Percent",
        "label": "Effective Income Tax Rate Reconciliation, Before Tax Cuts And Jobs Act Of 2017, Percent",
        "terseLabel": "Effective tax rate"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationBeforeTaxCutsAndJobsActOf2017Percent",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "alg_EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount": {
     "auth_ref": [],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails": {
       "order": 10.0,
       "parentTag": "alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Effective Income Tax Rate Reconciliation, Executive Compensation Limitation, Amount",
        "label": "Effective Income Tax Rate Reconciliation, Executive Compensation Limitation, Amount",
        "terseLabel": "Executive compensation limitation"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationExecutiveCompensationLimitationAmount",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alg_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount": {
     "auth_ref": [],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails": {
       "order": 2.0,
       "parentTag": "alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Effective Income Tax Rate Reconciliation, Global Intangible Low-Taxed Income, Amount",
        "label": "Effective Income Tax Rate Reconciliation, Global Intangible Low-Taxed Income, Amount",
        "terseLabel": "GILTI"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alg_EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount": {
     "auth_ref": [],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails": {
       "order": 6.0,
       "parentTag": "alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Effective Income Tax Rate Reconciliation, Previously Unrecognized Tax Benefit, Amount",
        "label": "Effective Income Tax Rate Reconciliation, Previously Unrecognized Tax Benefit, Amount",
        "negatedTerseLabel": "Previously unrecognized tax (benefit)/expense"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationPreviouslyUnrecognizedTaxBenefitAmount",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alg_FormerEmployeesCoveredByPensionPlan": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Former Employees Covered By Pension Plan",
        "label": "Former Employees Covered By Pension Plan",
        "terseLabel": "Former employees"
       }
      }
     },
     "localname": "FormerEmployeesCoveredByPensionPlan",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "alg_GradallCompanyEmployeesRetirementPlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gradall Company Employees Retirement Plan",
        "label": "Gradall Company Employees Retirement Plan [Member]",
        "terseLabel": "Employees\u2019 Retirement Plan"
       }
      }
     },
     "localname": "GradallCompanyEmployeesRetirementPlanMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_GradallMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gradall [Member]",
        "label": "Gradall [Member]",
        "terseLabel": "Gradall"
       }
      }
     },
     "localname": "GradallMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_IncentiveStockOption2015PlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Incentive Stock Option 2015 Plan [Member]",
        "label": "Incentive Stock Option 2015 Plan [Member]",
        "terseLabel": "2015 ISO Plan"
       }
      }
     },
     "localname": "IncentiveStockOption2015PlanMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017": {
     "auth_ref": [],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Income Tax Expense (Benefit), Before Tax Cuts And Jobs Act Of 2017",
        "label": "Income Tax Expense (Benefit), Before Tax Cuts And Jobs Act Of 2017",
        "totalLabel": "Provision for income taxes"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alg_IncomeTaxRateReconciliationForeignTaxExpense": {
     "auth_ref": [],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails": {
       "order": 4.0,
       "parentTag": "alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Income Tax Rate Reconciliation, Foreign Tax Expense",
        "label": "Income Tax Rate Reconciliation, Foreign Tax Expense",
        "terseLabel": "Foreign tax expense"
       }
      }
     },
     "localname": "IncomeTaxRateReconciliationForeignTaxExpense",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alg_IncreaseDecreaseInRentalEquipment": {
     "auth_ref": [],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 13.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Increase (Decrease) In Rental Equipment",
        "label": "Increase (Decrease) In Rental Equipment",
        "negatedTerseLabel": "Rental equipment"
       }
      }
     },
     "localname": "IncreaseDecreaseInRentalEquipment",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alg_IndustrialManagementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Industrial Management [Member]",
        "label": "Industrial Management [Member]",
        "terseLabel": "Industrial Equipment"
       }
      }
     },
     "localname": "IndustrialManagementMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome",
      "http://www.alamo-group.com/role/GoodwillDetails",
      "http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "International Association Of Machinist And Aerospace Retirement Plan [Member]",
        "label": "International Association Of Machinist And Aerospace Retirement Plan [Member]",
        "terseLabel": "IAM Plan"
       }
      }
     },
     "localname": "InternationalAssociationOfMachinistAndAerospaceRetirementPlanMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_InternationalMutualFundsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "International Mutual Funds [Member]",
        "label": "International Mutual Funds [Member]",
        "terseLabel": "International"
       }
      }
     },
     "localname": "InternationalMutualFundsMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_InternationalOperationsAndGeographicInformationTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "International Operations And Geographic Information",
        "label": "International Operations And Geographic Information [Text Block]",
        "terseLabel": "INTERNATIONAL OPERATIONS AND GEOGRAPHIC INFORMATION"
       }
      }
     },
     "localname": "InternationalOperationsAndGeographicInformationTextBlock",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "alg_InventoryReservePercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inventory Reserve Percentage",
        "label": "Inventory Reserve Percentage",
        "terseLabel": "Inventory reserve percentage"
       }
      }
     },
     "localname": "InventoryReservePercentage",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "alg_InventoryUsagePeriod": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inventory Usage Period",
        "label": "Inventory Usage Period",
        "terseLabel": "Inventory usage period"
       }
      }
     },
     "localname": "InventoryUsagePeriod",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "alg_LesseeOperatingLeaseLeaseNotYetCommencedAmount": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Lessee, Operating Lease, Lease Not Yet Commenced, Amount",
        "label": "Lessee, Operating Lease, Lease Not Yet Commenced, Amount",
        "terseLabel": "Additional operating lease not yet commenced"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLeaseNotYetCommencedAmount",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alg_LiabilityDrivenSolutionCITIIMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Liability Driven Solution CIT II Member",
        "label": "Liability Driven Solution CIT II [Member]",
        "terseLabel": "Wells Fargo Liability Driven Solution CIT II"
       }
      }
     },
     "localname": "LiabilityDrivenSolutionCITIIMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_LiabilityDrivenSolutionCITIMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Liability Driven Solution CIT I [Member]",
        "label": "Liability Driven Solution CIT I [Member]",
        "terseLabel": "Wells Fargo Liability Driven Solution CIT I"
       }
      }
     },
     "localname": "LiabilityDrivenSolutionCITIMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_MidCapMutualFundsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Mid Cap Mutual Funds",
        "label": "Mid Cap Mutual Funds [Member]",
        "terseLabel": "Mid Cap"
       }
      }
     },
     "localname": "MidCapMutualFundsMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_NonQualifiedOptionsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Non Qualified Options [Member]",
        "label": "Non Qualified Options [Member]",
        "terseLabel": "Non Qualified Options"
       }
      }
     },
     "localname": "NonQualifiedOptionsMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/StockOptionsEquityIncentivePlanDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails",
      "http://www.alamo-group.com/role/StockOptionsTables"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_NonQualifiedStockOptionsExercisePriceRangeThreeMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Non- Qualified Stock Options Exercise Price Range Three [Member]",
        "label": "Non- Qualified Stock Options Exercise Price Range Three [Member]",
        "terseLabel": "$42.70 - $83.99"
       }
      }
     },
     "localname": "NonQualifiedStockOptionsExercisePriceRangeThreeMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_OtherGeographicalAreasMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Other Geographical Areas [Member]",
        "label": "Other Geographical Areas [Member]",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "OtherGeographicalAreasMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_PartsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Parts [Member]",
        "label": "Parts [Member]",
        "terseLabel": "Parts"
       }
      }
     },
     "localname": "PartsMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails",
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_PaymentsForRepurchaseOfTreasuryStock": {
     "auth_ref": [],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Payments for Repurchase of Treasury Stock",
        "label": "Payments for Repurchase of Treasury Stock",
        "negatedTerseLabel": "Treasury stock repurchased"
       }
      }
     },
     "localname": "PaymentsForRepurchaseOfTreasuryStock",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alg_PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage Of Final Three Years Average Salary Retirement Benefit Assumption",
        "label": "Percentage Of Final Three Years Average Salary Retirement Benefit Assumption",
        "terseLabel": "Percentage of final 3 year average salary in which retirement benefit is based (percentage)"
       }
      }
     },
     "localname": "PercentageOfFinalThreeYearsAverageSalaryRetirementBenefitAssumption",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "alg_ProductWarrantyAccrualLagPeriod": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Product Warranty Accrual Lag Period",
        "label": "Product Warranty Accrual Lag Period",
        "terseLabel": "Product warranty accrual lag period"
       }
      }
     },
     "localname": "ProductWarrantyAccrualLagPeriod",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "alg_ProductWarrantyAccrualPeriodForSalesUsedInCalculation": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Product Warranty Accrual Period For Sales Used In Calculation",
        "label": "Product Warranty Accrual Period For Sales Used In Calculation",
        "terseLabel": "Product warranty accrual period for sales used in calculation"
       }
      }
     },
     "localname": "ProductWarrantyAccrualPeriodForSalesUsedInCalculation",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "alg_ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Product Warranty Accrual Period Of Expenses Used In Calculation",
        "label": "Product Warranty Accrual Period Of Expenses Used In Calculation",
        "terseLabel": "Product warranty accrual period of expenses used in calculation"
       }
      }
     },
     "localname": "ProductWarrantyAccrualPeriodOfExpensesUsedInCalculation",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "alg_ProductWarrantyPeriod": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Product Warranty Period",
        "label": "Product Warranty Period",
        "terseLabel": "Product warranty period"
       }
      }
     },
     "localname": "ProductWarrantyPeriod",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "alg_QualifiedStockOptionsExercisePriceRangeOneMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Qualified Stock Options Exercise Price Range One [Member]",
        "label": "Qualified Stock Options Exercise Price Range One [Member]",
        "terseLabel": "$42.70 - $83.99"
       }
      }
     },
     "localname": "QualifiedStockOptionsExercisePriceRangeOneMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_QualifiedStockOptionsExercisePriceRangeThreeMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Qualified Stock Options Exercise Price Range Three [Member]",
        "label": "Qualified Stock Options Exercise Price Range Three [Member]",
        "terseLabel": "$156.38 - $234.57"
       }
      }
     },
     "localname": "QualifiedStockOptionsExercisePriceRangeThreeMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_QualifiedStockOptionsExercisePriceRangeTwoMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Qualified Stock Options Exercise Price Range Two [Member]",
        "label": "Qualified Stock Options Exercise Price Range Two [Member]",
        "terseLabel": "$92.50 - $138.75"
       }
      }
     },
     "localname": "QualifiedStockOptionsExercisePriceRangeTwoMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_QualifiedStockOptionsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Qualified Stock Options [Member]",
        "label": "Qualified Stock Options [Member]",
        "terseLabel": "Qualified Stock Options",
        "verboseLabel": "Qualified Stock Options"
       }
      }
     },
     "localname": "QualifiedStockOptionsMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails",
      "http://www.alamo-group.com/role/StockOptionsTables"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_RentalEquipmentNet": {
     "auth_ref": [],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 7.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Rental Equipment, Net",
        "label": "Rental Equipment, Net",
        "terseLabel": "Rental equipment, net"
       }
      }
     },
     "localname": "RentalEquipmentNet",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alg_RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Revenue From Contract With Customer, Shipping And Handling Costs",
        "label": "Revenue From Contract With Customer, Shipping And Handling Costs [Policy Text Block]",
        "terseLabel": "Shipping and Handling Costs"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerShippingAndHandlingCostsPolicyTextBlock",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "alg_SECSchedule1209SalesDiscountsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "SEC Schedule, 12-09, Sales Discounts [Member]",
        "label": "SEC Schedule, 12-09, Sales Discounts [Member]",
        "terseLabel": "Reserve for sales discounts"
       }
      }
     },
     "localname": "SECSchedule1209SalesDiscountsMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_ScheduleOfValuationAndQualifyingAccountsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule Of Valuation And Qualifying Accounts [Table Text Block]",
        "label": "Schedule Of Valuation And Qualifying Accounts [Table Text Block]",
        "terseLabel": "Schedule of Valuation and Qualifying Accounts"
       }
      }
     },
     "localname": "ScheduleOfValuationAndQualifyingAccountsTableTextBlock",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "[Line Items] for Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [Table]",
        "label": "Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [Line Items]",
        "terseLabel": "Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [Line Items]"
       }
      }
     },
     "localname": "ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassLineItems",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alg_ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [Table]",
        "label": "Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [Table]",
        "terseLabel": "Schedule of Acquired Indefinite-lived and Finite Intangible Assets by Major Class [Table]"
       }
      }
     },
     "localname": "ScheduleofAcquiredIndefinitelivedandFiniteIntangibleAssetsbyMajorClassTable",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alg_SecondAmendedAndRestatedRevolvingCreditAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Second Amended And Restated Revolving Credit Agreement [Member]",
        "label": "Second Amended And Restated Revolving Credit Agreement [Member]",
        "terseLabel": "the Credit Agreement"
       }
      }
     },
     "localname": "SecondAmendedAndRestatedRevolvingCreditAgreementMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_SharebasedCompensationAwardTrancheFiveMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based Compensation Award, Tranche Five [Member]",
        "label": "Share-based Compensation Award, Tranche Five [Member]",
        "terseLabel": "Year Five after Grant Date"
       }
      }
     },
     "localname": "SharebasedCompensationAwardTrancheFiveMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_SharebasedCompensationAwardTrancheFourMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based Compensation Award, Tranche Four [Member]",
        "label": "Share-based Compensation Award, Tranche Four [Member]",
        "terseLabel": "Year Four after Grant Date"
       }
      }
     },
     "localname": "SharebasedCompensationAwardTrancheFourMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Supplemental Cash Flow Information Related to Leases",
        "label": "Supplemental Cash Flow Information Related to Leases [Table Text Block]",
        "terseLabel": "Supplemental Cash Flow Information Related to Leases"
       }
      }
     },
     "localname": "SupplementalCashFlowInformationRelatedToLeasesTableTextBlock",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "alg_TRowePriceEquityIncomeMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "T Rowe Price Equity Income [Member]",
        "label": "T Rowe Price Equity Income [Member]",
        "terseLabel": "Wells Fargo/T. Rowe Price Equity Income Managed CIT"
       }
      }
     },
     "localname": "TRowePriceEquityIncomeMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tax Cuts And Jobs Act, Incomplete Accounting, Provisional Undistributed Accumulated Earnings Of Foreign Subsidiary",
        "label": "Tax Cuts And Jobs Act, Incomplete Accounting, Provisional Undistributed Accumulated Earnings Of Foreign Subsidiary",
        "terseLabel": "Withholding taxes"
       }
      }
     },
     "localname": "TaxCutsAndJobsActIncompleteAccountingProvisionalUndistributedAccumulatedEarningsOfForeignSubsidiary",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alg_TermFacilityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Term Facility",
        "label": "Term Facility [Member]",
        "terseLabel": "Term Facility"
       }
      }
     },
     "localname": "TermFacilityMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_TwoZeroZeroNineEquityIncentivePlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Two Zero Zero Nine Equity Incentive Plan [Member]",
        "label": "Two Zero Zero Nine Equity Incentive Plan [Member]",
        "terseLabel": "2009 Equity Incentive Plan"
       }
      }
     },
     "localname": "TwoZeroZeroNineEquityIncentivePlanMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_VegetationManagementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Vegetation Management Member",
        "label": "Vegetation Management [Member]",
        "terseLabel": "Vegetation Management"
       }
      }
     },
     "localname": "VegetationManagementMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome",
      "http://www.alamo-group.com/role/GoodwillDetails",
      "http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_WellsFargoCausewayMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Wells Fargo Causeway [Member]",
        "label": "Wells Fargo Causeway [Member]",
        "terseLabel": "Wells Fargo/Causeway International Value"
       }
      }
     },
     "localname": "WellsFargoCausewayMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_WellsFargoInternationalEquityIndexFundMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Wells Fargo International Equity Index Fund [Member]",
        "label": "Wells Fargo International Equity Index Fund [Member]",
        "terseLabel": "Wells Fargo BlackRock International Equity"
       }
      }
     },
     "localname": "WellsFargoInternationalEquityIndexFundMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_WellsFargoLargeCapGrowthIndexFundMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Wells Fargo Large Cap Growth Index Fund [Member]",
        "label": "Wells Fargo Large Cap Growth Index Fund [Member]",
        "terseLabel": "Wells Fargo BlackRock Large Cap Growth Index Fund"
       }
      }
     },
     "localname": "WellsFargoLargeCapGrowthIndexFundMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_WellsFargoLargeCapValueIndexFundMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Wells Fargo Large Cap Value Index Fund [Member]",
        "label": "Wells Fargo Large Cap Value Index Fund [Member]",
        "terseLabel": "Wells Fargo BlackRock Large Cap Value Index Fund"
       }
      }
     },
     "localname": "WellsFargoLargeCapValueIndexFundMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_WellsFargoMFSValueCITFMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Wells Fargo MFS Value CIT F [Member]",
        "label": "Wells Fargo MFS Value CIT F [Member]",
        "terseLabel": "Wells Fargo/MFS Value CIT F"
       }
      }
     },
     "localname": "WellsFargoMFSValueCITFMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_WellsFargoMultiManagerSmallCapMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Wells Fargo Multi-Manager Small Cap [Member]",
        "label": "Wells Fargo Multi-Manager Small Cap [Member]",
        "terseLabel": "Wells Fargo Multi-Manager Small Cap"
       }
      }
     },
     "localname": "WellsFargoMultiManagerSmallCapMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_WellsFargoRussellTwoZeroZeroZeroIndexFundMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Wells Fargo Russell Two Zero Zero Zero Index Fund [Member]",
        "label": "Wells Fargo Russell Two Zero Zero Zero Index Fund [Member]",
        "terseLabel": "Wells Fargo BlackRock Russell 2000 Index Fund"
       }
      }
     },
     "localname": "WellsFargoRussellTwoZeroZeroZeroIndexFundMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_WellsFargoStandardAndPoorsMidCapIndexFundMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Wells Fargo Standard And Poors Mid Cap Index Fund [Member]",
        "label": "Wells Fargo Standard And Poors Mid Cap Index Fund [Member]",
        "terseLabel": "Wells Fargo BlackRock S&amp;P Mid Cap Index Fund"
       }
      }
     },
     "localname": "WellsFargoStandardAndPoorsMidCapIndexFundMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_WellsFargoTRowePriceILargeCapGrowthManagedCITMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Wells Fargo T Rowe Price I Large Cap Growth Managed CIT [Member]",
        "label": "Wells Fargo T Rowe Price I Large Cap Growth Managed CIT [Member]",
        "terseLabel": "Wells Fargo/T. Rowe Price Large-Cap Growth Managed CIT"
       }
      }
     },
     "localname": "WellsFargoTRowePriceILargeCapGrowthManagedCITMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_WellsFargoVoyaLargeCapGrowthCITFMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Wells Fargo Voya Large Cap Growth CIT F [Member]",
        "label": "Wells Fargo Voya Large Cap Growth CIT F [Member]",
        "terseLabel": "Wells Fargo Voya Large Cap Growth CIT F"
       }
      }
     },
     "localname": "WellsFargoVoyaLargeCapGrowthCITFMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alg_WholegoodUnitsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Wholegood Units [Member]",
        "label": "Wholegood Units [Member]",
        "terseLabel": "Wholegoods"
       }
      }
     },
     "localname": "WholegoodUnitsMember",
     "nsuri": "http://www.alamo-group.com/20221231",
     "presentation": [
      "http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails",
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "country_AU": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "AUSTRALIA",
        "terseLabel": "Australia"
       }
      }
     },
     "localname": "AU",
     "nsuri": "http://xbrl.sec.gov/country/2022",
     "presentation": [
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "country_BR": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "BRAZIL",
        "terseLabel": "Brazil"
       }
      }
     },
     "localname": "BR",
     "nsuri": "http://xbrl.sec.gov/country/2022",
     "presentation": [
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "country_CA": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CANADA",
        "terseLabel": "Canada"
       }
      }
     },
     "localname": "CA",
     "nsuri": "http://xbrl.sec.gov/country/2022",
     "presentation": [
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "country_DE": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "GERMANY",
        "terseLabel": "Germany"
       }
      }
     },
     "localname": "DE",
     "nsuri": "http://xbrl.sec.gov/country/2022",
     "presentation": [
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "country_FR": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "FRANCE",
        "terseLabel": "France"
       }
      }
     },
     "localname": "FR",
     "nsuri": "http://xbrl.sec.gov/country/2022",
     "presentation": [
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "country_GB": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "UNITED KINGDOM",
        "terseLabel": "United Kingdom"
       }
      }
     },
     "localname": "GB",
     "nsuri": "http://xbrl.sec.gov/country/2022",
     "presentation": [
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "country_NL": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "NETHERLANDS",
        "terseLabel": "Netherlands"
       }
      }
     },
     "localname": "NL",
     "nsuri": "http://xbrl.sec.gov/country/2022",
     "presentation": [
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "country_US": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "UNITED STATES",
        "terseLabel": "United States"
       }
      }
     },
     "localname": "US",
     "nsuri": "http://xbrl.sec.gov/country/2022",
     "presentation": [
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_AmendmentFlag": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.",
        "label": "Amendment Flag",
        "terseLabel": "Amendment Flag"
       }
      }
     },
     "localname": "AmendmentFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.alamo-group.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_AuditorFirmId": {
     "auth_ref": [
      "r783",
      "r784",
      "r785"
     ],
     "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.alamo-group.com/role/AuditInformation"
     ],
     "xbrltype": "nonemptySequenceNumberItemType"
    },
    "dei_AuditorLocation": {
     "auth_ref": [
      "r783",
      "r784",
      "r785"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Location",
        "terseLabel": "Auditor Location"
       }
      }
     },
     "localname": "AuditorLocation",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AuditInformation"
     ],
     "xbrltype": "internationalNameItemType"
    },
    "dei_AuditorName": {
     "auth_ref": [
      "r783",
      "r784",
      "r785"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Name",
        "terseLabel": "Auditor Name"
       }
      }
     },
     "localname": "AuditorName",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.alamo-group.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.alamo-group.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CoverAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cover page.",
        "label": "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.alamo-group.com/role/Cover"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentAnnualReport": {
     "auth_ref": [
      "r783",
      "r784",
      "r785"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r786"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "xbrltype": "submissionTypeItemType"
    },
    "dei_DocumentsIncorporatedByReferenceTextBlock": {
     "auth_ref": [
      "r781"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r780"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "All the names of the entities being reported upon in a document. Any legal structure used to conduct activities or to hold assets. Some examples of such structures are corporations, partnerships, limited liability companies, grantor trusts, and other trusts. This item does not include business and geographical segments which are included in the geographical or business segments domains.",
        "label": "Entity [Domain]",
        "terseLabel": "Entity [Domain]"
       }
      }
     },
     "localname": "EntityDomain",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r780"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r780"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r787"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "xbrltype": "monetaryItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r780"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r780"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r780"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r780"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityWellKnownSeasonedIssuer": {
     "auth_ref": [
      "r788"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_IcfrAuditorAttestationFlag": {
     "auth_ref": [
      "r783",
      "r784",
      "r785"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_LegalEntityAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The set of legal entities associated with a report.",
        "label": "Legal Entity [Axis]",
        "terseLabel": "Legal Entity [Axis]"
       }
      }
     },
     "localname": "LegalEntityAxis",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "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.alamo-group.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r779"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r782"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "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.alamo-group.com/role/Cover"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [
      "r387",
      "r388",
      "r389",
      "r390",
      "r541",
      "r691",
      "r709",
      "r736",
      "r737",
      "r755",
      "r768",
      "r777",
      "r844",
      "r960",
      "r961",
      "r962",
      "r963",
      "r964",
      "r965"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum [Member]",
        "terseLabel": "High",
        "verboseLabel": "Maximum"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails",
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails",
      "http://www.alamo-group.com/role/PropertyPlantandEquipmentDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails",
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails",
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [
      "r387",
      "r388",
      "r389",
      "r390",
      "r541",
      "r691",
      "r709",
      "r736",
      "r737",
      "r755",
      "r768",
      "r777",
      "r844",
      "r960",
      "r961",
      "r962",
      "r963",
      "r964",
      "r965"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum [Member]",
        "terseLabel": "Low",
        "verboseLabel": "Minimum"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails",
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails",
      "http://www.alamo-group.com/role/PropertyPlantandEquipmentDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails",
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails",
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ProductOrServiceAxis": {
     "auth_ref": [
      "r341",
      "r693",
      "r756",
      "r775",
      "r839",
      "r840",
      "r846",
      "r969"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Axis]",
        "terseLabel": "Product and Service [Axis]"
       }
      }
     },
     "localname": "ProductOrServiceAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails",
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ProductsAndServicesDomain": {
     "auth_ref": [
      "r341",
      "r693",
      "r756",
      "r775",
      "r839",
      "r840",
      "r846",
      "r969"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Domain]",
        "terseLabel": "Product and Service [Domain]"
       }
      }
     },
     "localname": "ProductsAndServicesDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails",
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [
      "r387",
      "r388",
      "r389",
      "r390",
      "r484",
      "r541",
      "r578",
      "r579",
      "r580",
      "r690",
      "r691",
      "r709",
      "r736",
      "r737",
      "r755",
      "r768",
      "r777",
      "r838",
      "r844",
      "r961",
      "r962",
      "r963",
      "r964",
      "r965"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]",
        "terseLabel": "Range [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails",
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails",
      "http://www.alamo-group.com/role/PropertyPlantandEquipmentDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails",
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails",
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [
      "r387",
      "r388",
      "r389",
      "r390",
      "r484",
      "r541",
      "r578",
      "r579",
      "r580",
      "r690",
      "r691",
      "r709",
      "r736",
      "r737",
      "r755",
      "r768",
      "r777",
      "r838",
      "r844",
      "r961",
      "r962",
      "r963",
      "r964",
      "r965"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Domain]",
        "terseLabel": "Range [Domain]"
       }
      }
     },
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails",
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails",
      "http://www.alamo-group.com/role/PropertyPlantandEquipmentDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails",
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails",
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScenarioForecastMember": {
     "auth_ref": [
      "r546",
      "r817"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forecast [Member]",
        "terseLabel": "Estimated"
       }
      }
     },
     "localname": "ScenarioForecastMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScenarioUnspecifiedDomain": {
     "auth_ref": [
      "r290",
      "r546",
      "r790",
      "r817"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Domain]",
        "terseLabel": "Scenario, Unspecified [Domain]"
       }
      }
     },
     "localname": "ScenarioUnspecifiedDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_SegmentGeographicalDomain": {
     "auth_ref": [
      "r342",
      "r343",
      "r727",
      "r728",
      "r729",
      "r730",
      "r731",
      "r732",
      "r733",
      "r734",
      "r735",
      "r757",
      "r776",
      "r846"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Domain]",
        "terseLabel": "Geographical [Domain]"
       }
      }
     },
     "localname": "SegmentGeographicalDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofInternationalOperationsDetails",
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementGeographicalAxis": {
     "auth_ref": [
      "r342",
      "r343",
      "r721",
      "r727",
      "r728",
      "r729",
      "r730",
      "r731",
      "r732",
      "r733",
      "r734",
      "r735",
      "r757",
      "r776",
      "r846"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]",
        "terseLabel": "Geographical [Axis]"
       }
      }
     },
     "localname": "StatementGeographicalAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofInternationalOperationsDetails",
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_StatementScenarioAxis": {
     "auth_ref": [
      "r290",
      "r546",
      "r790",
      "r791",
      "r817"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Axis]",
        "terseLabel": "Scenario [Axis]"
       }
      }
     },
     "localname": "StatementScenarioAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "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.alamo-group.com/role/ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ValuationAndQualifyingAccountsDisclosureTable": {
     "auth_ref": [
      "r267",
      "r268",
      "r269",
      "r271",
      "r272"
     ],
     "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.alamo-group.com/role/ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails"
     ],
     "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": "AOCI Attributable to Parent, Net of Tax [Roll Forward]"
       }
      }
     },
     "localname": "AOCIAttributableToParentNetOfTaxRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountingChangesAndErrorCorrectionsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Changes and Error Corrections [Abstract]"
       }
      }
     },
     "localname": "AccountingChangesAndErrorCorrectionsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "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.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": {
     "auth_ref": [
      "r18"
     ],
     "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 LIABILITIES"
       }
      }
     },
     "localname": "AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AccruedLiabilities"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AccountsPayableCurrent": {
     "auth_ref": [
      "r17",
      "r774"
     ],
     "calculation": {
      "http://www.alamo-group.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": "Trade accounts payable"
       }
      }
     },
     "localname": "AccountsPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r347",
      "r348"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.",
        "label": "Accounts Receivable, after Allowance for Credit Loss, Current",
        "terseLabel": "Accounts receivable, net"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedEmployeeBenefitsCurrent": {
     "auth_ref": [
      "r21"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/AccruedLiabilitiesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations, excluding pension and other postretirement benefits, incurred through that date and payable for perquisites provided to employees pertaining to services received from them. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued Employee Benefits, Current",
        "terseLabel": "Salaries, wages and bonuses"
       }
      }
     },
     "localname": "AccruedEmployeeBenefitsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AccruedLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedIncomeTaxesCurrent": {
     "auth_ref": [
      "r2",
      "r191",
      "r206"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations.",
        "label": "Accrued Income Taxes, Current",
        "terseLabel": "Income taxes payable"
       }
      }
     },
     "localname": "AccruedIncomeTaxesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedIncomeTaxesNoncurrent": {
     "auth_ref": [
      "r4",
      "r191",
      "r206"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "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 domestic and foreign income tax obligations due beyond one year or the operating cycle, whichever is longer. Alternate captions include income taxes payable, noncurrent.",
        "label": "Accrued Income Taxes, Noncurrent",
        "terseLabel": "Long-term tax liability"
       }
      }
     },
     "localname": "AccruedIncomeTaxesNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r21"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/AccruedLiabilitiesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.alamo-group.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 liabilities",
        "totalLabel": "Accrued liabilities"
       }
      }
     },
     "localname": "AccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AccruedLiabilitiesDetails",
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember": {
     "auth_ref": [
      "r31",
      "r36",
      "r178",
      "r797",
      "r798",
      "r799"
     ],
     "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": "Defined Benefit Plans Items"
       }
      }
     },
     "localname": "AccumulatedDefinedBenefitPlansAdjustmentMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "auth_ref": [
      "r99",
      "r223"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.",
        "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment",
        "terseLabel": "Accumulated depreciation relating to rental equipment"
       }
      }
     },
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember": {
     "auth_ref": [
      "r238",
      "r247",
      "r248",
      "r635",
      "r743",
      "r797"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated other comprehensive income (loss) from gain (loss) of derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness, attributable to parent.",
        "label": "Accumulated Gain (Loss), Net, Cash Flow Hedge, Parent [Member]",
        "terseLabel": "Gains (Losses) on Cash Flow Hedges"
       }
      }
     },
     "localname": "AccumulatedGainLossNetCashFlowHedgeParentMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "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.alamo-group.com/role/AccumulatedOtherComprehensiveLossDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r33",
      "r35",
      "r36",
      "r231",
      "r704",
      "r714",
      "r717"
     ],
     "calculation": {
      "http://www.alamo-group.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",
        "terseLabel": "Accumulated other comprehensive loss"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossTable": {
     "auth_ref": [
      "r246",
      "r247",
      "r653",
      "r654",
      "r655",
      "r656",
      "r657",
      "r659"
     ],
     "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.alamo-group.com/role/AccumulatedOtherComprehensiveLossDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "auth_ref": [
      "r32",
      "r36",
      "r178",
      "r684",
      "r710",
      "r711",
      "r797",
      "r798",
      "r799",
      "r814",
      "r815",
      "r816"
     ],
     "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 Income"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossDetails",
      "http://www.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccumulatedTranslationAdjustmentMember": {
     "auth_ref": [
      "r30",
      "r36",
      "r178",
      "r247",
      "r248",
      "r654",
      "r655",
      "r656",
      "r657",
      "r659",
      "r797"
     ],
     "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.alamo-group.com/role/AccumulatedOtherComprehensiveLossDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdditionalPaidInCapitalCommonStock": {
     "auth_ref": [
      "r9"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.",
        "label": "Additional Paid in Capital, Common Stock",
        "terseLabel": "Additional paid-in capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "auth_ref": [
      "r587",
      "r588",
      "r589",
      "r814",
      "r815",
      "r816",
      "r947"
     ],
     "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.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "auth_ref": [
      "r150",
      "r151",
      "r550"
     ],
     "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-based compensation expense"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.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 cash provided by operating activities:"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AdvertisingCostsPolicyTextBlock": {
     "auth_ref": [
      "r592"
     ],
     "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.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AdvertisingExpense": {
     "auth_ref": [
      "r593"
     ],
     "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 expense"
       }
      }
     },
     "localname": "AdvertisingExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "auth_ref": [
      "r582"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.",
        "label": "Share-Based Payment Arrangement, Expense",
        "terseLabel": "Stock option expense"
       }
      }
     },
     "localname": "AllocatedShareBasedCompensationExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfDeferredCharges": {
     "auth_ref": [
      "r47"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of amortization of deferred charges applied against earnings during the period.",
        "label": "Amortization of Deferred Charges",
        "terseLabel": "Amortization expense"
       }
      }
     },
     "localname": "AmortizationOfDeferredCharges",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfFinancingCosts": {
     "auth_ref": [
      "r43",
      "r423",
      "r663",
      "r801"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization expense attributable to debt issuance costs.",
        "label": "Amortization of Debt Issuance Costs",
        "terseLabel": "Amortization of debt issuance"
       }
      }
     },
     "localname": "AmortizationOfFinancingCosts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfIntangibleAssets": {
     "auth_ref": [
      "r63",
      "r86",
      "r93"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.",
        "label": "Amortization of Intangible Assets",
        "terseLabel": "Amortization of intangibles"
       }
      }
     },
     "localname": "AmortizationOfIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "auth_ref": [
      "r300"
     ],
     "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": "Stock options excluded from diluted earnings per share calculation (in shares)"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r189",
      "r205",
      "r227",
      "r262",
      "r325",
      "r331",
      "r337",
      "r351",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r633",
      "r636",
      "r649",
      "r774",
      "r842",
      "r843",
      "r958"
     ],
     "calculation": {
      "http://www.alamo-group.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": "Identifiable assets",
        "totalLabel": "Total assets",
        "verboseLabel": "Identifiable Assets"
       }
      }
     },
     "localname": "Assets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets",
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofInternationalOperationsDetails",
      "http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails"
     ],
     "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.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r219",
      "r234",
      "r262",
      "r351",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r633",
      "r636",
      "r649",
      "r774",
      "r842",
      "r843",
      "r958"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 6.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.alamo-group.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.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AwardDateAxis": {
     "auth_ref": [
      "r913",
      "r914",
      "r915",
      "r916",
      "r917",
      "r918",
      "r919",
      "r920",
      "r921",
      "r922",
      "r923",
      "r924",
      "r925",
      "r926",
      "r927",
      "r928",
      "r929",
      "r930",
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937",
      "r938"
     ],
     "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.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AwardDateDomain": {
     "auth_ref": [
      "r913",
      "r914",
      "r915",
      "r916",
      "r917",
      "r918",
      "r919",
      "r920",
      "r921",
      "r922",
      "r923",
      "r924",
      "r925",
      "r926",
      "r927",
      "r928",
      "r929",
      "r930",
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937",
      "r938"
     ],
     "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.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AwardTypeAxis": {
     "auth_ref": [
      "r553",
      "r554",
      "r555",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581"
     ],
     "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.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails",
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/StockOptionsEquityIncentivePlanDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsTables"
     ],
     "xbrltype": "stringItemType"
    },
    "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.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BuildingAndBuildingImprovementsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Facility held for productive use including, but not limited to, office, production, storage and distribution facilities and any addition, improvement, or renovation to the structure, for example, but not limited to, interior masonry, interior flooring, electrical, and plumbing.",
        "label": "Building and Building Improvements [Member]",
        "terseLabel": "Buildings and improvements"
       }
      }
     },
     "localname": "BuildingAndBuildingImprovementsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/PropertyPlantandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BusinessAcquisitionAcquireeDomain": {
     "auth_ref": [
      "r631",
      "r762",
      "r765"
     ],
     "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.alamo-group.com/role/BusinessCombinationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BusinessAcquisitionAxis": {
     "auth_ref": [
      "r164",
      "r165",
      "r631",
      "r762",
      "r765"
     ],
     "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.alamo-group.com/role/BusinessCombinationsDetails"
     ],
     "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.alamo-group.com/role/BusinessCombinationsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired": {
     "auth_ref": [
      "r163"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of voting equity interests acquired at the acquisition date in the business combination.",
        "label": "Business Acquisition, Percentage of Voting Interests Acquired",
        "terseLabel": "Percentage of outstanding capital shares acquired"
       }
      }
     },
     "localname": "BusinessAcquisitionPercentageOfVotingInterestsAcquired",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/BusinessCombinationsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_BusinessCombinationAndAssetAcquisitionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination and Asset Acquisition [Abstract]"
       }
      }
     },
     "localname": "BusinessCombinationAndAssetAcquisitionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessCombinationConsiderationTransferred1": {
     "auth_ref": [
      "r169",
      "r170",
      "r171"
     ],
     "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",
        "verboseLabel": "Acquisition price"
       }
      }
     },
     "localname": "BusinessCombinationConsiderationTransferred1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/BusinessCombinationsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationDisclosureTextBlock": {
     "auth_ref": [
      "r172",
      "r632"
     ],
     "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]",
        "terseLabel": "BUSINESS COMBINATIONS"
       }
      }
     },
     "localname": "BusinessCombinationDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/BusinessCombinations"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r65",
      "r222",
      "r738"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.",
        "label": "Cash and Cash Equivalents, at Carrying Value",
        "terseLabel": "Cash and cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsPolicyTextBlock": {
     "auth_ref": [
      "r66"
     ],
     "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 Equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "auth_ref": [
      "r60",
      "r65",
      "r68"
     ],
     "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 the year",
        "periodStartLabel": "Cash and cash equivalents at beginning of the year"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "auth_ref": [
      "r60",
      "r183"
     ],
     "calculation": {
      "http://www.alamo-group.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 change in cash and cash equivalents"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ClassOfStockLineItems": {
     "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": "Class of Stock [Line Items]",
        "terseLabel": "Class of Stock [Line Items]"
       }
      }
     },
     "localname": "ClassOfStockLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/CommonStockDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies Disclosure [Abstract]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "auth_ref": [
      "r102",
      "r385",
      "r386",
      "r722",
      "r841"
     ],
     "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.alamo-group.com/role/CommitmentsandContingencies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommitmentsAndContingenciesPolicyTextBlock": {
     "auth_ref": [
      "r105",
      "r723"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for commitments and contingencies, which may include policies for recognizing and measuring loss and gain contingencies.",
        "label": "Commitments and Contingencies, Policy [Policy Text Block]",
        "terseLabel": "Commitments and Contingencies"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommonStockDividendsPerShareCashPaid": {
     "auth_ref": [
      "r120"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate dividends paid during the period for each share of common stock outstanding.",
        "label": "Common Stock, Dividends, Per Share, Cash Paid",
        "terseLabel": "Dividends paid (in dollars per share)"
       }
      }
     },
     "localname": "CommonStockDividendsPerShareCashPaid",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/CommonStockDetails",
      "http://www.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquityParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockDividendsPerShareDeclared": {
     "auth_ref": [
      "r120"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate dividends declared during the period for each share of common stock outstanding.",
        "label": "Common Stock, Dividends, Per Share, Declared",
        "terseLabel": "Dividends per share (in dollars per share)"
       }
      }
     },
     "localname": "CommonStockDividendsPerShareDeclared",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/CommonStockDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [
      "r814",
      "r815",
      "r947"
     ],
     "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.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r8"
     ],
     "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.alamo-group.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r8"
     ],
     "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.alamo-group.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "auth_ref": [
      "r8",
      "r113"
     ],
     "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.alamo-group.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r8",
      "r774"
     ],
     "calculation": {
      "http://www.alamo-group.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 common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.",
        "label": "Common Stock, Value, Issued",
        "terseLabel": "Common stock, $.10 par value, 20,000,000 shares authorized; 11,913,890 and 11,874,178 outstanding at December 31, 2022 and December 31, 2021, respectively"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CompensationAndRetirementDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retirement Benefits [Abstract]"
       }
      }
     },
     "localname": "CompensationAndRetirementDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "auth_ref": [
      "r38",
      "r242",
      "r244",
      "r252",
      "r701",
      "r706"
     ],
     "calculation": {
      "http://www.alamo-group.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": "Comprehensive income"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNoteTextBlock": {
     "auth_ref": [
      "r51",
      "r251",
      "r700",
      "r705"
     ],
     "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]",
        "terseLabel": "ACCUMULATED OTHER COMPREHENSIVE LOSS"
       }
      }
     },
     "localname": "ComprehensiveIncomeNoteTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLoss"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConcentrationRiskCreditRisk": {
     "auth_ref": [
      "r202",
      "r310"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for credit risk.",
        "label": "Concentration Risk, Credit Risk, Policy [Policy Text Block]",
        "terseLabel": "Concentrations of Credit Risk"
       }
      }
     },
     "localname": "ConcentrationRiskCreditRisk",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConsolidationPolicyTextBlock": {
     "auth_ref": [
      "r176",
      "r744"
     ],
     "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": "Basis of Presentation and Principles of Consolidation"
       }
      }
     },
     "localname": "ConsolidationPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ContractWithCustomerLiabilityCurrent": {
     "auth_ref": [
      "r446",
      "r447",
      "r458"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/AccruedLiabilitiesDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "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": "Customer deposits"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AccruedLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "auth_ref": [
      "r46",
      "r693"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.",
        "label": "Cost of Goods and Services Sold",
        "terseLabel": "Cost of sales"
       }
      }
     },
     "localname": "CostOfGoodsAndServicesSold",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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.alamo-group.com/role/LongTermDebtAdditionalInformationDetails",
      "http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails"
     ],
     "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.alamo-group.com/role/LongTermDebtAdditionalInformationDetails",
      "http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CurrentFederalTaxExpenseBenefit": {
     "auth_ref": [
      "r806",
      "r943",
      "r945"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails": {
       "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": "Domestic"
       }
      }
     },
     "localname": "CurrentFederalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentForeignTaxExpenseBenefit": {
     "auth_ref": [
      "r806",
      "r943"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails": {
       "order": 3.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.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r161",
      "r613",
      "r624",
      "r806"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.",
        "label": "Current Income Tax Expense (Benefit)",
        "totalLabel": "Provision for current income tax expense (benefit)"
       }
      }
     },
     "localname": "CurrentIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails"
     ],
     "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.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": {
     "auth_ref": [
      "r806",
      "r943",
      "r945"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails": {
       "order": 2.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.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CustomerRelationshipsMember": {
     "auth_ref": [
      "r167"
     ],
     "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 and dealer relationships"
       }
      }
     },
     "localname": "CustomerRelationshipsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Disclosure [Abstract]"
       }
      }
     },
     "localname": "DebtDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "auth_ref": [
      "r109",
      "r260",
      "r406",
      "r407",
      "r408",
      "r409",
      "r410",
      "r411",
      "r412",
      "r417",
      "r424",
      "r425",
      "r427"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.",
        "label": "Debt Disclosure [Text Block]",
        "terseLabel": "LONG-TERM DEBT"
       }
      }
     },
     "localname": "DebtDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebt"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DebtInstrumentAxis": {
     "auth_ref": [
      "r1",
      "r2",
      "r3",
      "r190",
      "r193",
      "r204",
      "r266",
      "r401",
      "r402",
      "r403",
      "r404",
      "r405",
      "r407",
      "r413",
      "r414",
      "r415",
      "r416",
      "r418",
      "r419",
      "r420",
      "r421",
      "r422",
      "r423",
      "r664",
      "r750",
      "r751",
      "r752",
      "r753",
      "r754",
      "r804"
     ],
     "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.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentInterestRateStatedPercentage": {
     "auth_ref": [
      "r23",
      "r402"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contractual interest rate for funds borrowed, under the debt agreement.",
        "label": "Debt Instrument, Interest Rate, Stated Percentage",
        "terseLabel": "Debt instrument, interest rate, stated percentage"
       }
      }
     },
     "localname": "DebtInstrumentInterestRateStatedPercentage",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "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.alamo-group.com/role/LongTermDebtAdditionalInformationDetails",
      "http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "auth_ref": [
      "r25",
      "r266",
      "r401",
      "r402",
      "r403",
      "r404",
      "r405",
      "r407",
      "r413",
      "r414",
      "r415",
      "r416",
      "r418",
      "r419",
      "r420",
      "r421",
      "r422",
      "r423",
      "r664",
      "r750",
      "r751",
      "r752",
      "r753",
      "r754",
      "r804"
     ],
     "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.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentPeriodicPayment": {
     "auth_ref": [
      "r25",
      "r200"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the required periodic payments including both interest and principal payments.",
        "label": "Debt Instrument, Periodic Payment",
        "terseLabel": "Debt instrument, periodic payment"
       }
      }
     },
     "localname": "DebtInstrumentPeriodicPayment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentTable": {
     "auth_ref": [
      "r25",
      "r114",
      "r117",
      "r118",
      "r119",
      "r184",
      "r185",
      "r187",
      "r201",
      "r266",
      "r401",
      "r402",
      "r403",
      "r404",
      "r405",
      "r407",
      "r413",
      "r414",
      "r415",
      "r416",
      "r418",
      "r419",
      "r420",
      "r421",
      "r422",
      "r423",
      "r426",
      "r664",
      "r750",
      "r751",
      "r752",
      "r753",
      "r754",
      "r804"
     ],
     "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.alamo-group.com/role/LongTermDebtAdditionalInformationDetails",
      "http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount": {
     "auth_ref": [
      "r24"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of unused borrowing capacity under the long-term financing arrangement that is available to the entity as of the balance sheet date.",
        "label": "Debt Instrument, Unused Borrowing Capacity, Amount",
        "terseLabel": "Debt instrument, unused borrowing capacity, amount"
       }
      }
     },
     "localname": "DebtInstrumentUnusedBorrowingCapacityAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredFederalIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r806",
      "r944",
      "r945"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails": {
       "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": "Domestic"
       }
      }
     },
     "localname": "DeferredFederalIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredForeignIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r161",
      "r806",
      "r944"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails": {
       "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.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxAssetsNet": {
     "auth_ref": [
      "r597",
      "r598"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.",
        "label": "Deferred Income Tax Assets, Net",
        "terseLabel": "Deferred income taxes"
       }
      }
     },
     "localname": "DeferredIncomeTaxAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r63",
      "r161",
      "r614",
      "r623",
      "r624",
      "r806"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails": {
       "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)",
        "terseLabel": "Provision for deferred income tax (benefit) expense",
        "totalLabel": "Provision for deferred income tax expense (benefit)"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows",
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails"
     ],
     "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.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilities": {
     "auth_ref": [
      "r5",
      "r6",
      "r192",
      "r203",
      "r608"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences.",
        "label": "Deferred Tax Liabilities, Gross",
        "negatedTotalLabel": "Total deferred income tax liabilities"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilitiesNet": {
     "auth_ref": [
      "r597",
      "r598"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 5.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",
        "terseLabel": "Deferred income taxes"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilitiesNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r806",
      "r944",
      "r945"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails": {
       "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.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsGross": {
     "auth_ref": [
      "r609"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails": {
       "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",
        "totalLabel": "Total deferred income tax assets"
       }
      }
     },
     "localname": "DeferredTaxAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsGrossAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred Tax Assets, Gross [Abstract]",
        "terseLabel": "Deferred income tax assets:"
       }
      }
     },
     "localname": "DeferredTaxAssetsGrossAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment": {
     "auth_ref": [
      "r159",
      "r942"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from in-process research and development costs expensed in connection with a business combination.",
        "label": "Deferred Tax Assets, in Process Research and Development",
        "terseLabel": "Capitalized R&amp;D costs"
       }
      }
     },
     "localname": "DeferredTaxAssetsInProcessResearchAndDevelopment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsInventory": {
     "auth_ref": [
      "r159",
      "r942"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from inventory.",
        "label": "Deferred Tax Assets, Inventory",
        "terseLabel": "Inventory basis difference"
       }
      }
     },
     "localname": "DeferredTaxAssetsInventory",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsNet": {
     "auth_ref": [
      "r941"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredTaxLiabilities",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.",
        "label": "Deferred Tax Assets, Net of Valuation Allowance",
        "totalLabel": "Net deferred income tax assets"
       }
      }
     },
     "localname": "DeferredTaxAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign": {
     "auth_ref": [
      "r159",
      "r942"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails": {
       "order": 8.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible foreign operating loss carryforwards.",
        "label": "Deferred Tax Assets, Operating Loss Carryforwards, Foreign",
        "terseLabel": "Foreign net operating loss"
       }
      }
     },
     "localname": "DeferredTaxAssetsOperatingLossCarryforwardsForeign",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards that are not subject to expiration dates.",
        "label": "Deferred Tax Assets, Operating Loss Carryforwards, Not Subject to Expiration",
        "terseLabel": "Net operating loss carryforwards with unlimited carryforward period"
       }
      }
     },
     "localname": "DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsOther": {
     "auth_ref": [
      "r159",
      "r942"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails": {
       "order": 11.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",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "DeferredTaxAssetsOther",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment": {
     "auth_ref": [],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails": {
       "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 temporary differences from property, plant, and equipment.",
        "label": "Deferred Tax Assets, Property, Plant and Equipment",
        "terseLabel": "Rental equipment and Property, plant and equipment"
       }
      }
     },
     "localname": "DeferredTaxAssetsPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits": {
     "auth_ref": [
      "r159",
      "r942"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails": {
       "order": 7.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences from employee benefits, classified as other.",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Employee Benefits",
        "terseLabel": "Employee benefit accrual"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions": {
     "auth_ref": [
      "r942"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails": {
       "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 pension benefits.",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Pensions",
        "terseLabel": "Pension liability"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost": {
     "auth_ref": [
      "r159",
      "r942"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails": {
       "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 share-based compensation.",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Share-Based Compensation Cost",
        "terseLabel": "Stock based compensation"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts": {
     "auth_ref": [
      "r159",
      "r942"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails": {
       "order": 9.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 difference from allowance for credit loss on accounts receivable.",
        "label": "Deferred Tax Asset, Tax Deferred Expense, Reserve and Accrual, Accounts Receivable, Allowance for Credit Loss",
        "terseLabel": "Accounts receivable reserve"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves": {
     "auth_ref": [
      "r159",
      "r942"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails": {
       "order": 10.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 warranty reserves.",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Warranty Reserves",
        "terseLabel": "Product liability and warranty reserves"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r610"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails": {
       "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",
        "negatedTerseLabel": "Less: Valuation allowance"
       }
      }
     },
     "localname": "DeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilities": {
     "auth_ref": [
      "r153",
      "r941"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences without jurisdictional netting.",
        "label": "Deferred Tax Liabilities, Net",
        "negatedTotalLabel": "Net deferred income taxes"
       }
      }
     },
     "localname": "DeferredTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred Tax Liabilities, Gross [Abstract]",
        "terseLabel": "Deferred income tax liabilities:"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts": {
     "auth_ref": [
      "r159",
      "r942"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax consequences attributable to taxable temporary differences derived from inventory.",
        "label": "Deferred Tax Liabilities, Inventory",
        "negatedTerseLabel": "Inventory basis differences"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets": {
     "auth_ref": [
      "r159",
      "r942"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails": {
       "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 intangible assets other than goodwill.",
        "label": "Deferred Tax Liabilities, Intangible Assets",
        "negatedTerseLabel": "Intangible assets"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesOther": {
     "auth_ref": [
      "r159",
      "r942"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails": {
       "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",
        "negatedLabel": "Expenses not currently deductible for book purposes"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesOther",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment": {
     "auth_ref": [
      "r159",
      "r942"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails": {
       "order": 5.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",
        "negatedTerseLabel": "Rental equipment and Property, plant and equipment"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofDeferredTaxAssetsandLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets": {
     "auth_ref": [
      "r475",
      "r760"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in plan assets of defined benefit plan from actual return (loss) determined by change in fair value of plan assets adjusted for contributions, benefit payments, and other expenses.",
        "label": "Defined Benefit Plan, Plan Assets, Increase (Decrease) for Actual Return (Loss)",
        "terseLabel": "Return on plan assets"
       }
      }
     },
     "localname": "DefinedBenefitPlanActualReturnOnPlanAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanActuarialGainLoss": {
     "auth_ref": [
      "r468"
     ],
     "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)",
        "negatedTerseLabel": "Liability actuarial (gain) loss"
       }
      }
     },
     "localname": "DefinedBenefitPlanActuarialGainLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses": {
     "auth_ref": [
      "r462",
      "r500",
      "r526",
      "r760",
      "r761"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails": {
       "order": 3.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": "Amortization of net (gain)/loss"
       }
      }
     },
     "localname": "DefinedBenefitPlanAmortizationOfGainsLosses",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit": {
     "auth_ref": [
      "r462",
      "r501",
      "r527",
      "r760",
      "r761"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails": {
       "order": 4.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 prior service cost"
       }
      }
     },
     "localname": "DefinedBenefitPlanAmortizationOfPriorServiceCostCredit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate": {
     "auth_ref": [
      "r507"
     ],
     "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.alamo-group.com/role/RetirementBenefitPlansScheduleofAssumptionsUsedDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease": {
     "auth_ref": [
      "r508"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average rate increase of compensation, used to determine benefit obligation of defined benefit plan. Plan includes, but is not limited to, pay-related defined benefit plan.",
        "label": "Defined Benefit Plan, Assumptions Used Calculating Benefit Obligation, Rate of Compensation Increase",
        "terseLabel": "Composite rate of compensation increase"
       }
      }
     },
     "localname": "DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofAssumptionsUsedDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate": {
     "auth_ref": [
      "r507"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average rate for present value of future retirement benefits cash flows, used to determine net periodic benefit cost of defined benefit plan.",
        "label": "Defined Benefit Plan, Assumptions Used Calculating Net Periodic Benefit Cost, Discount Rate",
        "terseLabel": "Discount rate"
       }
      }
     },
     "localname": "DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofAssumptionsUsedDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets": {
     "auth_ref": [
      "r509",
      "r531"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average rate of return on plan assets, reflecting average rate of earnings expected on existing plan assets and expected contributions, used to determine net periodic benefit cost of defined benefit plan.",
        "label": "Defined Benefit Plan, Assumptions Used Calculating Net Periodic Benefit Cost, Expected Long-Term Rate of Return on Plan Assets",
        "terseLabel": "Long-term rate of return on plan assets"
       }
      }
     },
     "localname": "DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofAssumptionsUsedDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease": {
     "auth_ref": [
      "r508"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average rate of compensation increase used to determine net periodic benefit cost of defined benefit plan. Plan includes, but is not limited to, pay-related defined benefit plan.",
        "label": "Defined Benefit Plan, Assumptions Used Calculating Net Periodic Benefit Cost, Rate of Compensation Increase",
        "terseLabel": "Composite rate of compensation increase"
       }
      }
     },
     "localname": "DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofAssumptionsUsedDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedBenefitPlanBenefitObligation": {
     "auth_ref": [
      "r463"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails": {
       "order": 2.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": "Benefit obligation at end of year",
        "periodStartLabel": "Benefit obligation at beginning of year"
       }
      }
     },
     "localname": "DefinedBenefitPlanBenefitObligation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid": {
     "auth_ref": [
      "r470",
      "r534"
     ],
     "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",
        "negatedLabel": "Benefits paid"
       }
      }
     },
     "localname": "DefinedBenefitPlanBenefitObligationBenefitsPaid",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis": {
     "auth_ref": [
      "r484",
      "r485",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r512",
      "r758",
      "r759",
      "r760"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by defined benefit plan asset investment.",
        "label": "Defined Benefit Plan, Plan Assets, Category [Axis]",
        "terseLabel": "Defined Benefit Plan, Plan Assets, Category [Axis]"
       }
      }
     },
     "localname": "DefinedBenefitPlanByPlanAssetCategoriesAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansWeightedAverageAssetAllocationsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "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": "Change in projected benefit obligation"
       }
      }
     },
     "localname": "DefinedBenefitPlanChangeInBenefitObligationRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward": {
     "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 Fair Value of Plan Assets [Roll Forward]",
        "terseLabel": "Change in fair value of plan assets"
       }
      }
     },
     "localname": "DefinedBenefitPlanChangeInFairValueOfPlanAssetsRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DefinedBenefitPlanContributionsByEmployer": {
     "auth_ref": [
      "r477",
      "r487",
      "r530",
      "r758",
      "r759",
      "r760",
      "r761"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of contribution received by defined benefit plan from employer which increases plan assets.",
        "label": "Defined Benefit Plan, Plan Assets, Contributions by Employer",
        "terseLabel": "Employer contributions"
       }
      }
     },
     "localname": "DefinedBenefitPlanContributionsByEmployer",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanDebtSecurityMember": {
     "auth_ref": [
      "r870"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt instrument issued by corporation, government and governmental agency, municipality, and other institution; in which defined benefit plan asset is invested.",
        "label": "Defined Benefit Plan, Debt Security [Member]",
        "terseLabel": "Debt securities"
       }
      }
     },
     "localname": "DefinedBenefitPlanDebtSecurityMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansWeightedAverageAssetAllocationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "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.alamo-group.com/role/RetirementBenefitPlansScheduleofAssumptionsUsedDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansTables",
      "http://www.alamo-group.com/role/RetirementBenefitPlansWeightedAverageAssetAllocationsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DefinedBenefitPlanEquitySecuritiesMember": {
     "auth_ref": [
      "r758",
      "r760"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Security representing ownership in corporation or other legal entity for which ownership is represented by share of stock, in which defined benefit plan asset is invested. Includes, but is not limited to, common stock, preferred stock, convertible security, stock right and stock warrant.",
        "label": "Defined Benefit Plan, Equity Securities [Member]",
        "terseLabel": "Equity securities"
       }
      }
     },
     "localname": "DefinedBenefitPlanEquitySecuritiesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansWeightedAverageAssetAllocationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter": {
     "auth_ref": [
      "r494"
     ],
     "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",
        "terseLabel": "Years 2028 through 2032"
       }
      }
     },
     "localname": "DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths": {
     "auth_ref": [
      "r494"
     ],
     "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.alamo-group.com/role/RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive": {
     "auth_ref": [
      "r494"
     ],
     "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.alamo-group.com/role/RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour": {
     "auth_ref": [
      "r494"
     ],
     "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.alamo-group.com/role/RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree": {
     "auth_ref": [
      "r494"
     ],
     "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.alamo-group.com/role/RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo": {
     "auth_ref": [
      "r494"
     ],
     "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.alamo-group.com/role/RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets": {
     "auth_ref": [
      "r462",
      "r499",
      "r525",
      "r760",
      "r761"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expected return (loss) recognized in net periodic benefit (cost) credit, calculated based on expected long-term rate of return and market-related value of plan assets of defined benefit plan.",
        "label": "Defined Benefit Plan, Expected Return (Loss) on Plan Assets",
        "negatedTerseLabel": "Expected return on plan assets"
       }
      }
     },
     "localname": "DefinedBenefitPlanExpectedReturnOnPlanAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanFairValueOfPlanAssets": {
     "auth_ref": [
      "r474",
      "r485",
      "r487",
      "r488",
      "r758",
      "r759",
      "r760"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DefinedBenefitPlanFundedStatusOfPlan",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of asset segregated and restricted to provide benefit under defined benefit plan. Asset includes, but is not limited to, stock, bond, other investment, earning from investment, and contribution by employer and employee.",
        "label": "Defined Benefit Plan, Plan Assets, Amount",
        "periodEndLabel": "Fair value of plan assets at end of year",
        "periodStartLabel": "Fair value of plan assets at beginning of year",
        "terseLabel": "Fair value of plan assets"
       }
      }
     },
     "localname": "DefinedBenefitPlanFairValueOfPlanAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanFundedStatusOfPlan": {
     "auth_ref": [
      "r460",
      "r483",
      "r760"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of funded (unfunded) status of defined benefit plan, measured as difference between fair value of plan assets and benefit obligation. Includes, but is not limited to, overfunded (underfunded) status.",
        "label": "Defined Benefit Plan, Funded (Unfunded) Status of Plan",
        "totalLabel": "Funded status"
       }
      }
     },
     "localname": "DefinedBenefitPlanFundedStatusOfPlan",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanInterestCost": {
     "auth_ref": [
      "r462",
      "r466",
      "r498",
      "r524",
      "r760",
      "r761"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails": {
       "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.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost": {
     "auth_ref": [
      "r496",
      "r522",
      "r760",
      "r761"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails": {
       "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 benefit cost"
       }
      }
     },
     "localname": "DefinedBenefitPlanNetPeriodicBenefitCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid": {
     "auth_ref": [
      "r479",
      "r909"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of payment to participant under defined benefit plan which decreases plan assets. For pension plan, payment includes, but is not limited to, pension benefits and death benefits. For other postretirement plan, payment includes, but is not limited to, prescription drug benefits, health care benefits, life insurance benefits, and legal, educational and advisory services.",
        "label": "Defined Benefit Plan, Plan Assets, Benefits Paid",
        "negatedTerseLabel": "Benefits paid"
       }
      }
     },
     "localname": "DefinedBenefitPlanPlanAssetsBenefitsPaid",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanServiceCost": {
     "auth_ref": [
      "r464",
      "r497",
      "r523",
      "r760",
      "r761"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails": {
       "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.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations": {
     "auth_ref": [
      "r869"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of actual investment allocation to total plan assets. Includes, but is not limited to, percentage on weighted-average basis if more than one plan.",
        "label": "Defined Benefit Plan, Plan Assets, Actual Allocation, Percentage",
        "terseLabel": "Asset allocations as a percentage of plan assets"
       }
      }
     },
     "localname": "DefinedBenefitPlanWeightedAverageAssetAllocations",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansWeightedAverageAssetAllocationsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable": {
     "auth_ref": [
      "r130",
      "r131",
      "r132",
      "r133",
      "r134"
     ],
     "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.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "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.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of discretionary contributions made by an employer to a defined contribution plan.",
        "label": "Defined Contribution Plan, Employer Discretionary Contribution Amount",
        "terseLabel": "Annual contribution amount"
       }
      }
     },
     "localname": "DefinedContributionPlanEmployerDiscretionaryContributionAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of employees' gross pay for which the employer contributes a matching contribution to a defined contribution plan.",
        "label": "Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay",
        "terseLabel": "Employer contribution percentage"
       }
      }
     },
     "localname": "DefinedContributionPlanEmployerMatchingContributionPercent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_Depreciation": {
     "auth_ref": [
      "r63",
      "r97"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.",
        "label": "Depreciation",
        "terseLabel": "Depreciation - PP&amp;E"
       }
      }
     },
     "localname": "Depreciation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "auth_ref": [
      "r846"
     ],
     "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.alamo-group.com/role/RevenueandSegmentReportingTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "auth_ref": [
      "r552",
      "r583",
      "r584",
      "r586",
      "r591",
      "r769"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for share-based payment arrangement.",
        "label": "Share-Based Payment Arrangement [Text Block]",
        "terseLabel": "STOCK OPTIONS"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptions"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement [Abstract]"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DividendsCash": {
     "auth_ref": [
      "r120",
      "r199"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of paid and unpaid cash dividends declared for classes of stock, for example, but not limited to, common and preferred.",
        "label": "Dividends, Cash",
        "negatedTerseLabel": "Dividends paid"
       }
      }
     },
     "localname": "DividendsCash",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DomesticPlanMember": {
     "auth_ref": [
      "r910",
      "r911",
      "r912"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Location of employer sponsoring plan, designed to provide retirement benefits, determined as principal place of business. Includes, but is not limited to, defined benefit and defined contribution plans.",
        "label": "Domestic Plan [Member]",
        "terseLabel": "Domestic Plan"
       }
      }
     },
     "localname": "DomesticPlanMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EarningsPerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share [Abstract]",
        "terseLabel": "Net income per common share:"
       }
      }
     },
     "localname": "EarningsPerShareAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasic": {
     "auth_ref": [
      "r253",
      "r282",
      "r283",
      "r284",
      "r285",
      "r286",
      "r293",
      "r295",
      "r297",
      "r298",
      "r299",
      "r303",
      "r641",
      "r642",
      "r702",
      "r707",
      "r747"
     ],
     "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",
        "terseLabel": "Basic (in dollars per share)",
        "verboseLabel": "Basic earnings per share (in dollars per share)"
       }
      }
     },
     "localname": "EarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome",
      "http://www.alamo-group.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareDiluted": {
     "auth_ref": [
      "r253",
      "r282",
      "r283",
      "r284",
      "r285",
      "r286",
      "r295",
      "r297",
      "r298",
      "r299",
      "r303",
      "r641",
      "r642",
      "r702",
      "r707",
      "r747"
     ],
     "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",
        "terseLabel": "Diluted (in dollars per share)",
        "verboseLabel": "Diluted earnings per share (in dollars per share)"
       }
      }
     },
     "localname": "EarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome",
      "http://www.alamo-group.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerSharePolicyTextBlock": {
     "auth_ref": [
      "r70",
      "r71"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements.",
        "label": "Earnings Per Share, Policy [Policy Text Block]",
        "terseLabel": "Earnings per Common Share (\"EPS\")"
       }
      }
     },
     "localname": "EarningsPerSharePolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "auth_ref": [
      "r300",
      "r301",
      "r302",
      "r304"
     ],
     "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.alamo-group.com/role/EarningsPerShare"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": {
     "auth_ref": [
      "r949"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies; including, but not limited to, 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, Including Disposal Group and Discontinued Operations",
        "terseLabel": "Effect of exchange rate changes on cash"
       }
      }
     },
     "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "auth_ref": [
      "r585"
     ],
     "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": "Total unrecognized compensation cost related to non-vested share-based compensation arrangements"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "auth_ref": [
      "r585"
     ],
     "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": "Period cost is expected to be recognized (years)"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_EmployeeStockOptionMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time.",
        "label": "Share-Based Payment Arrangement, Option [Member]",
        "terseLabel": "Options"
       }
      }
     },
     "localname": "EmployeeStockOptionMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquipmentExpense": {
     "auth_ref": [],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This element represents equipment expense including depreciation, repairs, rentals, and service contract costs. This item also includes equipment purchases which do not qualify for capitalization in accordance with the entity's accounting policy. This item may also include furniture expenses.",
        "label": "Equipment Expense",
        "terseLabel": "Depreciation - Rental"
       }
      }
     },
     "localname": "EquipmentExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tangible personal property used to produce goods and services.",
        "label": "Equipment [Member]",
        "terseLabel": "Rental Equipment"
       }
      }
     },
     "localname": "EquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity [Abstract]"
       }
      }
     },
     "localname": "EquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r113",
      "r215",
      "r246",
      "r247",
      "r248",
      "r273",
      "r274",
      "r275",
      "r279",
      "r287",
      "r289",
      "r306",
      "r352",
      "r445",
      "r587",
      "r588",
      "r589",
      "r616",
      "r617",
      "r640",
      "r653",
      "r654",
      "r655",
      "r656",
      "r657",
      "r659",
      "r684",
      "r710",
      "r711",
      "r712"
     ],
     "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.alamo-group.com/role/AccumulatedOtherComprehensiveLossDetails",
      "http://www.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock": {
     "auth_ref": [
      "r179",
      "r180"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of assets, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, by class that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date 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 (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3).",
        "label": "Fair Value, Assets Measured on Recurring Basis [Table Text Block]",
        "terseLabel": "Fair Value, Assets Measured on Recurring Basis"
       }
      }
     },
     "localname": "FairValueAssetsMeasuredOnRecurringBasisTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueByFairValueHierarchyLevelAxis": {
     "auth_ref": [
      "r415",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r646",
      "r687",
      "r688",
      "r689",
      "r751",
      "r752",
      "r758",
      "r759",
      "r760"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient.",
        "label": "Fair Value Hierarchy and NAV [Axis]",
        "terseLabel": "Fair Value Hierarchy and NAV [Axis]"
       }
      }
     },
     "localname": "FairValueByFairValueHierarchyLevelAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueDisclosuresAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Disclosures [Abstract]"
       }
      }
     },
     "localname": "FairValueDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueDisclosuresTextBlock": {
     "auth_ref": [
      "r647"
     ],
     "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 OF FINANCIAL INSTRUMENTS"
       }
      }
     },
     "localname": "FairValueDisclosuresTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/FairValueofFinancialInstruments"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueInputsLevel1Member": {
     "auth_ref": [
      "r415",
      "r487",
      "r492",
      "r646",
      "r687",
      "r758",
      "r759",
      "r760"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date.",
        "label": "Fair Value, Inputs, Level 1 [Member]",
        "terseLabel": "Quoted Prices in Active Markets for Identical Assets (Level 1)"
       }
      }
     },
     "localname": "FairValueInputsLevel1Member",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueInputsLevel2Member": {
     "auth_ref": [
      "r415",
      "r487",
      "r492",
      "r646",
      "r688",
      "r751",
      "r752",
      "r758",
      "r759",
      "r760"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inputs other than quoted prices included within level 1 that are observable for an asset or liability, either directly or indirectly, including, but not limited to, quoted prices for similar assets or liabilities in active markets, or quoted prices for identical or similar assets or liabilities in inactive markets.",
        "label": "Fair Value, Inputs, Level 2 [Member]",
        "terseLabel": "Significant Other Observable Inputs (Level 2)"
       }
      }
     },
     "localname": "FairValueInputsLevel2Member",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueInputsLevel3Member": {
     "auth_ref": [
      "r415",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r646",
      "r689",
      "r751",
      "r752",
      "r758",
      "r759",
      "r760"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.",
        "label": "Fair Value, Inputs, Level 3 [Member]",
        "terseLabel": "Significant Unobservable Inputs (Level 3)"
       }
      }
     },
     "localname": "FairValueInputsLevel3Member",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": {
     "auth_ref": [
      "r415",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r687",
      "r688",
      "r689",
      "r751",
      "r752",
      "r758",
      "r759",
      "r760"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value.",
        "label": "Fair Value Hierarchy and NAV [Domain]",
        "terseLabel": "Fair Value, Measurements, Fair Value Hierarchy [Domain]"
       }
      }
     },
     "localname": "FairValueMeasurementsFairValueHierarchyDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueOfFinancialInstrumentsPolicy": {
     "auth_ref": [
      "r181",
      "r182"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for determining the fair value of financial instruments.",
        "label": "Fair Value of Financial Instruments, Policy [Policy Text Block]",
        "terseLabel": "Fair Value of Financial Instruments"
       }
      }
     },
     "localname": "FairValueOfFinancialInstrumentsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FinanceLeaseInterestExpense": {
     "auth_ref": [
      "r670",
      "r673",
      "r773"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/LeasesLeaseCostDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of interest expense on finance lease liability.",
        "label": "Finance Lease, Interest Expense",
        "terseLabel": "Interest on lease liabilities"
       }
      }
     },
     "localname": "FinanceLeaseInterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiability": {
     "auth_ref": [
      "r668",
      "r681"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease.",
        "label": "Finance Lease, Liability",
        "verboseLabel": "Capital lease obligations"
       }
      }
     },
     "localname": "FinanceLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList": {
     "auth_ref": [
      "r669"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates line item in statement of financial position that includes current finance lease liability.",
        "label": "Finance Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration]",
        "terseLabel": "Finance Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration]"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails"
     ],
     "xbrltype": "enumerationSetItemType"
    },
    "us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList": {
     "auth_ref": [
      "r669"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates line item in statement of financial position that includes noncurrent finance lease liability.",
        "label": "Finance Lease, Liability, Noncurrent, Statement of Financial Position [Extensible Enumeration]",
        "terseLabel": "Finance Lease, Liability, Noncurrent, Statement of Financial Position [Extensible Enumeration]"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails"
     ],
     "xbrltype": "enumerationSetItemType"
    },
    "us-gaap_FinanceLeaseRightOfUseAssetAmortization": {
     "auth_ref": [
      "r670",
      "r673",
      "r773"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/LeasesLeaseCostDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization expense attributable to right-of-use asset from finance lease.",
        "label": "Finance Lease, Right-of-Use Asset, Amortization",
        "terseLabel": "Amortization of right-of-use assets"
       }
      }
     },
     "localname": "FinanceLeaseRightOfUseAssetAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetUsefulLife": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Finite-Lived Intangible Asset, Useful Life",
        "terseLabel": "Estimated Useful Lives",
        "verboseLabel": "Estimated useful lives"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails",
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "auth_ref": [
      "r225",
      "r376"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Finite-Lived Intangible Assets, Accumulated Amortization",
        "negatedTerseLabel": "Less accumulated amortization",
        "verboseLabel": "Accumulated amortization"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": {
     "auth_ref": [
      "r94"
     ],
     "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",
        "terseLabel": "2022"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": {
     "auth_ref": [
      "r94"
     ],
     "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",
        "terseLabel": "2026"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": {
     "auth_ref": [
      "r94"
     ],
     "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",
        "terseLabel": "2025"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": {
     "auth_ref": [
      "r94"
     ],
     "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",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": {
     "auth_ref": [
      "r94"
     ],
     "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",
        "terseLabel": "2023"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "auth_ref": [
      "r373",
      "r375",
      "r376",
      "r378",
      "r694",
      "r698"
     ],
     "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.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsGross": {
     "auth_ref": [
      "r92",
      "r698"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Finite-Lived Intangible Assets, Gross",
        "terseLabel": "Definite"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "auth_ref": [
      "r87",
      "r91"
     ],
     "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.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "auth_ref": [
      "r92",
      "r694"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Finite-Lived Intangible Assets, Net",
        "terseLabel": "Net carrying value of intangibles with definite useful lives",
        "totalLabel": "Total net"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails"
     ],
     "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"
       }
      }
     },
     "localname": "ForeignCountryMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock": {
     "auth_ref": [
      "r661"
     ],
     "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"
       }
      }
     },
     "localname": "ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ForeignPlanMember": {
     "auth_ref": [
      "r910",
      "r911",
      "r912"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Location of employer sponsoring plan, designed to provide retirement benefits, not determined as principal place of business. Includes, but is not limited to, defined benefit and defined contribution plans.",
        "label": "Foreign Plan [Member]",
        "terseLabel": "Foreign Plan"
       }
      }
     },
     "localname": "ForeignPlanMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FurnitureAndFixturesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases.",
        "label": "Furniture and Fixtures [Member]",
        "terseLabel": "Office furniture and equipment"
       }
      }
     },
     "localname": "FurnitureAndFixturesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/PropertyPlantandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": {
     "auth_ref": [
      "r63"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.",
        "label": "Gain (Loss) on Disposition of Property Plant Equipment",
        "negatedTerseLabel": "Gain on sale of property, plant and equipment"
       }
      }
     },
     "localname": "GainLossOnSaleOfPropertyPlantEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Goodwill": {
     "auth_ref": [
      "r224",
      "r359",
      "r699",
      "r749",
      "r774",
      "r823",
      "r830"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Goodwill",
        "periodEndLabel": "Goodwill, balance at the end of the period",
        "periodStartLabel": "Goodwill, balance at the beginning of the period",
        "terseLabel": "Goodwill"
       }
      }
     },
     "localname": "Goodwill",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets",
      "http://www.alamo-group.com/role/GoodwillDetails",
      "http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAcquiredDuringPeriod": {
     "auth_ref": [
      "r361",
      "r749"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized resulting from a business combination.",
        "label": "Goodwill, Acquired During Period",
        "terseLabel": "Goodwill acquired"
       }
      }
     },
     "localname": "GoodwillAcquiredDuringPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/GoodwillDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill and Intangible Assets Disclosure [Abstract]"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy": {
     "auth_ref": [
      "r371",
      "r372",
      "r749"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for goodwill. This accounting policy also may address how an entity assesses and measures impairment of goodwill, how reporting units are determined, how goodwill is allocated to such units, and how the fair values of the reporting units are determined.",
        "label": "Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block]",
        "terseLabel": "Goodwill"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsGoodwillPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy": {
     "auth_ref": [
      "r89"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for intangible assets. This accounting policy may address both intangible assets subject to amortization and those that are not. The following also may be disclosed: (1) a description of intangible assets (2) the estimated useful lives of those assets (3) the amortization method used (4) how the entity assesses and measures impairment of such assets (5) how future cash flows are estimated (6) how the fair values of such asset are determined.",
        "label": "Goodwill and Intangible Assets, Intangible Assets, Policy [Policy Text Block]",
        "terseLabel": "Intangible Assets"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsIntangibleAssetsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillDisclosureTextBlock": {
     "auth_ref": [
      "r368",
      "r370",
      "r372",
      "r749"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for goodwill.",
        "label": "Goodwill Disclosure [Text Block]",
        "terseLabel": "GOODWILL"
       }
      }
     },
     "localname": "GoodwillDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/Goodwill"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": {
     "auth_ref": [
      "r365"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) an asset representing future economic benefits from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Goodwill, Foreign Currency Translation Gain (Loss)",
        "terseLabel": "Translation adjustment"
       }
      }
     },
     "localname": "GoodwillForeignCurrencyTranslationGainLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/GoodwillDetails"
     ],
     "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.alamo-group.com/role/GoodwillDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_GoodwillPurchaseAccountingAdjustments": {
     "auth_ref": [
      "r162",
      "r829"
     ],
     "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",
        "terseLabel": "Goodwill adjustment"
       }
      }
     },
     "localname": "GoodwillPurchaseAccountingAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/GoodwillDetails"
     ],
     "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.alamo-group.com/role/GoodwillDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r45",
      "r262",
      "r325",
      "r330",
      "r336",
      "r339",
      "r351",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r649",
      "r748",
      "r842"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome": {
       "order": 2.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.alamo-group.com/role/ConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for the impairment and disposal of long-lived assets including goodwill and other intangible assets.",
        "label": "Impairment or Disposal of Long-Lived Assets, Including Intangible Assets, Policy [Policy Text Block]",
        "terseLabel": "Impairment of Long-lived assets"
       }
      }
     },
     "localname": "ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic": {
     "auth_ref": [
      "r263",
      "r625"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofIncomeLossbeforeProvisionforIncomeTaxesDetails": {
       "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.alamo-group.com/role/IncomeTaxesScheduleofIncomeLossbeforeProvisionforIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "auth_ref": [
      "r41",
      "r188",
      "r196",
      "r212",
      "r325",
      "r330",
      "r336",
      "r339",
      "r703",
      "r748"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0
      },
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofIncomeLossbeforeProvisionforIncomeTaxesDetails": {
       "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",
        "terseLabel": "Income before income taxes",
        "totalLabel": "Income before income taxes"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome",
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofIncomeLossbeforeProvisionforIncomeTaxesDetails",
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofInternationalOperationsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign": {
     "auth_ref": [
      "r263",
      "r625"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofIncomeLossbeforeProvisionforIncomeTaxesDetails": {
       "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.alamo-group.com/role/IncomeTaxesScheduleofIncomeLossbeforeProvisionforIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeStatementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]"
       }
      }
     },
     "localname": "IncomeStatementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationAxis": {
     "auth_ref": [
      "r380",
      "r382"
     ],
     "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.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationDomain": {
     "auth_ref": [
      "r382"
     ],
     "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.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxAuthorityAxis": {
     "auth_ref": [
      "r155"
     ],
     "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.alamo-group.com/role/IncomeTaxesAdditionalInformationDetails"
     ],
     "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.alamo-group.com/role/IncomeTaxesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Disclosure [Abstract]"
       }
      }
     },
     "localname": "IncomeTaxDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r264",
      "r601",
      "r606",
      "r612",
      "r621",
      "r626",
      "r628",
      "r629",
      "r630"
     ],
     "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.alamo-group.com/role/IncomeTaxes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r265",
      "r288",
      "r289",
      "r323",
      "r599",
      "r622",
      "r627",
      "r708"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0
      },
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.",
        "label": "Income Tax Expense (Benefit)",
        "terseLabel": "Provision for income taxes",
        "totalLabel": "Provision for income tax"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome",
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofComponentsofIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "auth_ref": [
      "r245",
      "r595",
      "r596",
      "r606",
      "r607",
      "r611",
      "r615"
     ],
     "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.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential": {
     "auth_ref": [
      "r939"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails": {
       "order": 1.0,
       "parentTag": "alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to foreign income tax expense (benefit).",
        "label": "Effective Income Tax Rate Reconciliation, Foreign Income Tax Rate Differential, Amount",
        "terseLabel": "Jurisdictional rate differences"
       }
      }
     },
     "localname": "IncomeTaxReconciliationForeignIncomeTaxRateDifferential",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate": {
     "auth_ref": [
      "r600"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails": {
       "order": 7.0,
       "parentTag": "alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of income tax expense or benefit for the period computed by applying the domestic federal statutory tax rates to pretax income from continuing operations.",
        "label": "Effective Income Tax Rate Reconciliation at Federal Statutory Income Tax Rate, Amount",
        "terseLabel": "Income tax expense at statutory rates"
       }
      }
     },
     "localname": "IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost": {
     "auth_ref": [
      "r939"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails": {
       "order": 9.0,
       "parentTag": "alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of reported income tax expense (benefit) in excess of (less than) expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to nondeductible expense for award under share-based payment arrangement. Includes, but is not limited to, expense determined to be nondeductible upon grant or after for award under share-based payment arrangement.",
        "label": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Share-Based Payment Arrangement, Amount",
        "terseLabel": "Stock based compensation"
       }
      }
     },
     "localname": "IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationOtherAdjustments": {
     "auth_ref": [
      "r939"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails": {
       "order": 8.0,
       "parentTag": "alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments.",
        "label": "Effective Income Tax Rate Reconciliation, Other Adjustments, Amount",
        "terseLabel": "Other, net"
       }
      }
     },
     "localname": "IncomeTaxReconciliationOtherAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationOtherReconcilingItemsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective Income Tax Rate Reconciliation, Other Reconciling Items, Amount [Abstract]",
        "terseLabel": "Increase (reduction) from:"
       }
      }
     },
     "localname": "IncomeTaxReconciliationOtherReconcilingItemsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes": {
     "auth_ref": [
      "r939"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails": {
       "order": 3.0,
       "parentTag": "alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017",
       "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": "U.S. state taxes"
       }
      }
     },
     "localname": "IncomeTaxReconciliationStateAndLocalIncomeTaxes",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationTaxCreditsResearch": {
     "auth_ref": [
      "r939"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails": {
       "order": 5.0,
       "parentTag": "alg_IncomeTaxExpenseBenefitBeforeTaxCutsAndJobsActOf2017",
       "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 research tax credit.",
        "label": "Effective Income Tax Rate Reconciliation, Tax Credit, Research, Amount",
        "negatedTerseLabel": "R&amp;D credit"
       }
      }
     },
     "localname": "IncomeTaxReconciliationTaxCreditsResearch",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxesPaidNet": {
     "auth_ref": [
      "r67"
     ],
     "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": "Income taxes"
       }
      }
     },
     "localname": "IncomeTaxesPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxesReceivable": {
     "auth_ref": [
      "r195",
      "r210",
      "r794"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount due within one year of the balance sheet date (or one operating cycle, if longer) from tax authorities as of the balance sheet date representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes.",
        "label": "Income Taxes Receivable, Current",
        "terseLabel": "Income tax receivable"
       }
      }
     },
     "localname": "IncomeTaxesReceivable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": {
     "auth_ref": [
      "r62"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 15.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not paid.",
        "label": "Increase (Decrease) in Accounts Payable and Accrued Liabilities",
        "terseLabel": "Trade accounts payable and accrued liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r62"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 11.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.",
        "label": "Increase (Decrease) in Accounts Receivable",
        "negatedTerseLabel": "Accounts receivable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccruedTaxesPayable": {
     "auth_ref": [
      "r800"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period of all taxes owed but not paid, including income, property and other taxes.",
        "label": "Increase (Decrease) in Accrued Taxes Payable",
        "terseLabel": "Long term tax payable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccruedTaxesPayable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable": {
     "auth_ref": [
      "r800"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 16.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the amounts payable to taxing authorities for taxes that are based on the reporting entity's earnings, net of amounts receivable from taxing authorities for refunds of overpayments or recoveries of income taxes.",
        "label": "Increase (Decrease) in Income Taxes Payable, Net of Income Taxes Receivable",
        "terseLabel": "Income taxes payable"
       }
      }
     },
     "localname": "IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r62"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 12.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.",
        "label": "Increase (Decrease) in Inventories",
        "negatedTerseLabel": "Inventories"
       }
      }
     },
     "localname": "IncreaseDecreaseInInventories",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.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, net of acquisitions:"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities": {
     "auth_ref": [],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 17.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in noncurrent operating liabilities classified as other.",
        "label": "Increase (Decrease) in Other Noncurrent Liabilities",
        "terseLabel": "Other assets and liabilities, net"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherNoncurrentLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": {
     "auth_ref": [
      "r62"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 14.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other.",
        "label": "Increase (Decrease) in Prepaid Expense and Other Assets",
        "negatedTerseLabel": "Prepaid expenses and other"
       }
      }
     },
     "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.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.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis": {
     "auth_ref": [
      "r374",
      "r377"
     ],
     "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 by Major Class [Axis]"
       }
      }
     },
     "localname": "IndefiniteLivedIntangibleAssetsByMajorClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill": {
     "auth_ref": [
      "r95"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill",
       "weight": 1.0
      }
     },
     "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)",
        "terseLabel": "Indefinite",
        "verboseLabel": "Carrying values of indefinite lived trade names"
       }
      }
     },
     "localname": "IndefiniteLivedIntangibleAssetsExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "auth_ref": [
      "r88",
      "r95"
     ],
     "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.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IntangibleAssetsDisclosureTextBlock": {
     "auth_ref": [
      "r379"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for all or part of the information related to intangible assets.",
        "label": "Intangible Assets Disclosure [Text Block]",
        "terseLabel": "INTANGIBLE ASSETS"
       }
      }
     },
     "localname": "IntangibleAssetsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssets"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwill": {
     "auth_ref": [
      "r85",
      "r90"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      },
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "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": "Intangible assets, net",
        "totalLabel": "Total Intangible Assets"
       }
      }
     },
     "localname": "IntangibleAssetsNetExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets",
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IntellectualPropertyMember": {
     "auth_ref": [
      "r168"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Intangible asset arising from original creative thought. Include, but is not limited to, trademarks, patents, and copyrights.",
        "label": "Intellectual Property [Member]",
        "terseLabel": "Patents and developed technologies"
       }
      }
     },
     "localname": "IntellectualPropertyMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_InterestExpense": {
     "auth_ref": [
      "r186",
      "r198",
      "r249",
      "r319",
      "r662"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the cost of borrowed funds accounted for as interest expense.",
        "label": "Interest Expense",
        "negatedTerseLabel": "Interest expense"
       }
      }
     },
     "localname": "InterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestPaidNet": {
     "auth_ref": [
      "r255",
      "r257",
      "r258"
     ],
     "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": "Interest"
       }
      }
     },
     "localname": "InterestPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory Disclosure [Abstract]"
       }
      }
     },
     "localname": "InventoryDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "auth_ref": [
      "r358"
     ],
     "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.alamo-group.com/role/Inventories"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryFinishedGoodsNetOfReserves": {
     "auth_ref": [
      "r83",
      "r740"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/InventoriesScheduleofInventoryCurrentDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale.",
        "label": "Inventory, Finished Goods, Net of Reserves",
        "terseLabel": "Finished goods and parts"
       }
      }
     },
     "localname": "InventoryFinishedGoodsNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/InventoriesScheduleofInventoryCurrentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryImpairmentPolicy": {
     "auth_ref": [
      "r822"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for recognizing inventory losses, including, but not limited to, substantial and unusual losses resulting from the subsequent measurement of inventory due to physical deterioration, obsolescence, or changes in price levels.",
        "label": "Inventory Impairment, Policy [Policy Text Block]",
        "terseLabel": "Reserve for Inventory Obsolescence"
       }
      }
     },
     "localname": "InventoryImpairmentPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r233",
      "r739",
      "r774"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      },
      "http://www.alamo-group.com/role/InventoriesScheduleofInventoryCurrentDetails": {
       "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": "Inventory, net"
       }
      }
     },
     "localname": "InventoryNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets",
      "http://www.alamo-group.com/role/InventoriesScheduleofInventoryCurrentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryPolicyTextBlock": {
     "auth_ref": [
      "r221",
      "r232",
      "r305",
      "r356",
      "r357",
      "r358",
      "r692",
      "r745"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.",
        "label": "Inventory, Policy [Policy Text Block]",
        "terseLabel": "Inventory Valuation"
       }
      }
     },
     "localname": "InventoryPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryRawMaterialsNetOfReserves": {
     "auth_ref": [
      "r83",
      "r742"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/InventoriesScheduleofInventoryCurrentDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process.",
        "label": "Inventory, Raw Materials, Net of Reserves",
        "terseLabel": "Raw materials"
       }
      }
     },
     "localname": "InventoryRawMaterialsNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/InventoriesScheduleofInventoryCurrentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryValuationReserveMember": {
     "auth_ref": [
      "r808",
      "r809",
      "r810",
      "r811",
      "r812"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Reserve to reduce inventory to lower of cost or net realizable value.",
        "label": "SEC Schedule, 12-09, Reserve, Inventory [Member]",
        "terseLabel": "Reserve for inventory obsolescence"
       }
      }
     },
     "localname": "InventoryValuationReserveMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_InventoryValuationReserves": {
     "auth_ref": [
      "r82",
      "r795"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of valuation reserve for inventory.",
        "label": "Inventory Valuation Reserves",
        "terseLabel": "Inventory obsolescence reserves"
       }
      }
     },
     "localname": "InventoryValuationReserves",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryWorkInProcessNetOfReserves": {
     "auth_ref": [
      "r83",
      "r741"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/InventoriesScheduleofInventoryCurrentDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing.",
        "label": "Inventory, Work in Process, Net of Reserves",
        "terseLabel": "Work in process"
       }
      }
     },
     "localname": "InventoryWorkInProcessNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/InventoriesScheduleofInventoryCurrentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InvestmentIncomeInterest": {
     "auth_ref": [
      "r49",
      "r318"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accretion (amortization) of purchase discount (premium) of interest income on nonoperating securities.",
        "label": "Investment Income, Interest",
        "terseLabel": "Interest income"
       }
      }
     },
     "localname": "InvestmentIncomeInterest",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LandMember": {
     "auth_ref": [
      "r847"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Part of earth's surface not covered by water.",
        "label": "Land [Member]",
        "terseLabel": "Land"
       }
      }
     },
     "localname": "LandMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/PropertyPlantandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LeaseCost": {
     "auth_ref": [
      "r680",
      "r773"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/LeasesLeaseCostDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lease cost recognized by lessee for lease contract.",
        "label": "Lease, Cost",
        "totalLabel": "Total lease cost"
       }
      }
     },
     "localname": "LeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeaseCostTableTextBlock": {
     "auth_ref": [
      "r956"
     ],
     "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": "Components of Lease Expense"
       }
      }
     },
     "localname": "LeaseCostTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LeasesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Leases [Abstract]"
       }
      }
     },
     "localname": "LeasesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeFinanceLeasesTextBlock": {
     "auth_ref": [
      "r682"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for finance leases of lessee. Includes, but is not limited to, description of lessee's finance lease and maturity analysis of finance lease liability.",
        "label": "Lessee, Finance Leases [Text Block]",
        "terseLabel": "LEASES"
       }
      }
     },
     "localname": "LesseeFinanceLeasesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/Leases"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeLeasesPolicyTextBlock": {
     "auth_ref": [
      "r672"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for leasing arrangement entered into by lessee.",
        "label": "Lessee, Leases [Policy Text Block]",
        "terseLabel": "Leases",
        "verboseLabel": "Rental Equipment"
       }
      }
     },
     "localname": "LesseeLeasesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseDescriptionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Description [Abstract]",
        "terseLabel": "Operating Leases"
       }
      }
     },
     "localname": "LesseeOperatingLeaseDescriptionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r957"
     ],
     "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": "Operating Lease Maturity"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r681"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/LeasesMaturityScheduleDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.alamo-group.com/role/LeasesMaturityScheduleDetails_1": {
       "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 minimum lease payments"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesMaturityScheduleDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": {
     "auth_ref": [
      "r681"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/LeasesMaturityScheduleDetails": {
       "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 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": "Thereafter"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesMaturityScheduleDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r681"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/LeasesMaturityScheduleDetails": {
       "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 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.alamo-group.com/role/LeasesMaturityScheduleDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": {
     "auth_ref": [
      "r681"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/LeasesMaturityScheduleDetails": {
       "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.alamo-group.com/role/LeasesMaturityScheduleDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "auth_ref": [
      "r681"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/LeasesMaturityScheduleDetails": {
       "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 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.alamo-group.com/role/LeasesMaturityScheduleDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r681"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/LeasesMaturityScheduleDetails": {
       "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 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.alamo-group.com/role/LeasesMaturityScheduleDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r681"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/LeasesMaturityScheduleDetails": {
       "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 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.alamo-group.com/role/LeasesMaturityScheduleDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r681"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/LeasesMaturityScheduleDetails_1": {
       "order": 2.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.",
        "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount",
        "negatedLabel": "Less imputed interest"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesMaturityScheduleDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "auth_ref": [
      "r682"
     ],
     "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.alamo-group.com/role/Leases"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r13",
      "r194",
      "r209",
      "r774",
      "r805",
      "r821",
      "r948"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.",
        "label": "Liabilities and Equity",
        "totalLabel": "Total liabilities and stockholders\u2019 equity"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.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.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r22",
      "r220",
      "r262",
      "r351",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r634",
      "r636",
      "r637",
      "r649",
      "r774",
      "r842",
      "r958",
      "r959"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 1.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.alamo-group.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.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCreditFacilityCapacityAvailableForTradePurchases": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The maximum amount of borrowing capacity under a line of credit that is available as of the balance sheet date for financing purchases of goods acquired for inventory or imminent delivery to a customer.",
        "label": "Line of Credit Facility, Capacity Available for Trade Purchases",
        "terseLabel": "Amount of capacity"
       }
      }
     },
     "localname": "LineOfCreditFacilityCapacityAvailableForTradePurchases",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityExpirationPeriod": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period remaining on line of credit facility before it terminates, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Line of Credit Facility, Expiration Period",
        "terseLabel": "Expiration period"
       }
      }
     },
     "localname": "LineOfCreditFacilityExpirationPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding": {
     "auth_ref": [
      "r648"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value of the amount outstanding under the credit facility.",
        "label": "Line of Credit Facility, Fair Value of Amount Outstanding",
        "terseLabel": "Fair value of amount outstanding"
       }
      }
     },
     "localname": "LineOfCreditFacilityFairValueOfAmountOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "auth_ref": [
      "r19"
     ],
     "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": "Aggregate commitments"
       }
      }
     },
     "localname": "LineOfCreditFacilityMaximumBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity": {
     "auth_ref": [
      "r19"
     ],
     "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": "Available borrowings"
       }
      }
     },
     "localname": "LineOfCreditFacilityRemainingBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "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": "Commitment fee (percent)"
       }
      }
     },
     "localname": "LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "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": "Line of Credit"
       }
      }
     },
     "localname": "LineOfCreditMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails",
      "http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock": {
     "auth_ref": [
      "r820"
     ],
     "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": "VALUATION AND QUALIFYING ACCOUNTS"
       }
      }
     },
     "localname": "LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ValuationandQualifyingAccounts"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LongTermDebt": {
     "auth_ref": [
      "r3",
      "r193",
      "r207",
      "r414",
      "r428",
      "r751",
      "r752"
     ],
     "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": "Long-term debt"
       }
      }
     },
     "localname": "LongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtAndCapitalLeaseObligations": {
     "auth_ref": [
      "r3"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      },
      "http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt and lease obligation, classified as noncurrent.",
        "label": "Long-Term Debt and Lease Obligation",
        "terseLabel": "Long-term debt and finance lease obligations, net of current maturities",
        "verboseLabel": "Total long-term debt"
       }
      }
     },
     "localname": "LongTermDebtAndCapitalLeaseObligations",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets",
      "http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent": {
     "auth_ref": [
      "r21"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      },
      "http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt and lease obligation, classified as current.",
        "label": "Long-Term Debt and Lease Obligation, Current",
        "terseLabel": "Current maturities of long-term debt and finance lease obligations",
        "verboseLabel": "Less current maturities"
       }
      }
     },
     "localname": "LongTermDebtAndCapitalLeaseObligationsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets",
      "http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities": {
     "auth_ref": [],
     "calculation": {
      "http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt and lease obligation, including portion classified as current.",
        "label": "Long-Term Debt and Lease Obligation, Including Current Maturities",
        "totalLabel": "Total debt"
       }
      }
     },
     "localname": "LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive": {
     "auth_ref": [
      "r107",
      "r266",
      "r845"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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": "Long-Term Debt, Maturity, after Year Five",
        "terseLabel": "Thereafter"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": {
     "auth_ref": [
      "r107",
      "r266",
      "r419"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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": "Long-Term Debt, Maturity, Year One",
        "terseLabel": "2023"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive": {
     "auth_ref": [
      "r107",
      "r266",
      "r419"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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": "Long-Term Debt, Maturity, Year Five",
        "terseLabel": "2027"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour": {
     "auth_ref": [
      "r107",
      "r266",
      "r419"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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": "Long-Term Debt, Maturity, Year Four",
        "terseLabel": "2026"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree": {
     "auth_ref": [
      "r107",
      "r266",
      "r419"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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": "Long-Term Debt, Maturity, Year Three",
        "terseLabel": "2025"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": {
     "auth_ref": [
      "r107",
      "r266",
      "r419"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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": "Long-Term Debt, Maturity, Year Two",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongtermDebtTypeAxis": {
     "auth_ref": [
      "r25"
     ],
     "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.alamo-group.com/role/LongTermDebtAdditionalInformationDetails",
      "http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LongtermDebtTypeDomain": {
     "auth_ref": [
      "r25",
      "r108"
     ],
     "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.alamo-group.com/role/LongTermDebtAdditionalInformationDetails",
      "http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LongtermDebtWeightedAverageInterestRate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average interest rate of long-term debt outstanding calculated at point in time.",
        "label": "Long-Term Debt, Weighted Average Interest Rate, at Point in Time",
        "terseLabel": "Long-Term debt outstanding, rate (percent)"
       }
      }
     },
     "localname": "LongtermDebtWeightedAverageInterestRate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "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.alamo-group.com/role/PropertyPlantandEquipmentDetails"
     ],
     "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 debt"
       }
      }
     },
     "localname": "MediumTermNotesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails"
     ],
     "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.alamo-group.com/role/ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r256"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 4.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 provided (used) in financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.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": "Financing Activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r256"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 1.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 investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.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": "Investing Activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r60",
      "r61",
      "r64"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 3.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.alamo-group.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": "Operating Activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r42",
      "r64",
      "r197",
      "r211",
      "r218",
      "r240",
      "r243",
      "r248",
      "r262",
      "r278",
      "r282",
      "r283",
      "r284",
      "r285",
      "r288",
      "r289",
      "r296",
      "r325",
      "r330",
      "r336",
      "r339",
      "r351",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r642",
      "r649",
      "r748",
      "r842"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      },
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.",
        "label": "Net Income (Loss) Attributable to Parent",
        "terseLabel": "Net income",
        "totalLabel": "Net income"
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows",
      "http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncome",
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome",
      "http://www.alamo-group.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": {
     "auth_ref": [
      "r216",
      "r276",
      "r277",
      "r280",
      "r281",
      "r290",
      "r291",
      "r292",
      "r349",
      "r350",
      "r353",
      "r354",
      "r618",
      "r619",
      "r620",
      "r639",
      "r643",
      "r644",
      "r645",
      "r650",
      "r651",
      "r652",
      "r665",
      "r666",
      "r683",
      "r685",
      "r695",
      "r696",
      "r697",
      "r713",
      "r714",
      "r715",
      "r716",
      "r717"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle.",
        "label": "Accounting Standards Update and Change in Accounting Principle [Text Block]",
        "terseLabel": "ACCOUNTING PRONOUNCEMENTS"
       }
      }
     },
     "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AccountingPronouncements"
     ],
     "xbrltype": "textBlockItemType"
    },
    "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": "Accounting Pronouncements"
       }
      }
     },
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NonUsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Countries excluding the United States of America (US).",
        "label": "Non-US [Member]",
        "terseLabel": "Non-US"
       }
      }
     },
     "localname": "NonUsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofInternationalOperationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NoncurrentAssets": {
     "auth_ref": [
      "r343"
     ],
     "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": "Total long-lived assets"
       }
      }
     },
     "localname": "NoncurrentAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NumberOfReportableSegments": {
     "auth_ref": [
      "r819"
     ],
     "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 principal reporting segments"
       }
      }
     },
     "localname": "NumberOfReportableSegments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RevenueandSegmentReportingAdditionalInformationDetails",
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent": {
     "auth_ref": [
      "r36",
      "r39"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax, before reclassification adjustments, of other comprehensive income (loss), attributable to parent.",
        "label": "OCI, before Reclassifications, Net of Tax, Attributable to Parent",
        "terseLabel": "Other comprehensive income (loss) before reclassifications",
        "verboseLabel": "Foreign currency translation adjustment, net of tax (expense) benefit of $1,069, $(344), and $810"
       }
      }
     },
     "localname": "OciBeforeReclassificationsNetOfTaxAttributableToParent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossDetails",
      "http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OffMarketFavorableLeaseMember": {
     "auth_ref": [
      "r834"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identifiable intangible asset established upon acquisition based on a favorable difference between the terms of an acquired lease and the current market terms for that lease.",
        "label": "Off-Market Favorable Lease [Member]",
        "terseLabel": "Favorable leasehold interests"
       }
      }
     },
     "localname": "OffMarketFavorableLeaseMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [
      "r325",
      "r330",
      "r336",
      "r339",
      "r748"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome": {
       "order": 4.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",
        "verboseLabel": "Income from Operations"
       }
      }
     },
     "localname": "OperatingIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome",
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofInternationalOperationsDetails",
      "http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseCost": {
     "auth_ref": [
      "r674",
      "r773"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/LeasesLeaseCostDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.",
        "label": "Operating Lease, Cost",
        "terseLabel": "Operating lease cost"
       }
      }
     },
     "localname": "OperatingLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseExpense": {
     "auth_ref": [
      "r954"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of operating lease expense. Excludes sublease income.",
        "label": "Operating Lease, Expense",
        "terseLabel": "Operating lease expense"
       }
      }
     },
     "localname": "OperatingLeaseExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, to be Paid [Abstract]",
        "terseLabel": "Operating Leases"
       }
      }
     },
     "localname": "OperatingLeaseLiabilitiesPaymentsDueAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesMaturityScheduleDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingLeaseLiability": {
     "auth_ref": [
      "r668"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/LeasesMaturityScheduleDetails_1": {
       "order": 1.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      },
      "http://www.alamo-group.com/role/LeasesSupplementalBalanceSheetInformationDetails": {
       "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": "Total lease liabilities",
        "totalLabel": "Total operating lease liabilities"
       }
      }
     },
     "localname": "OperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesMaturityScheduleDetails",
      "http://www.alamo-group.com/role/LeasesSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r668"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/AccruedLiabilitiesDetails": {
       "order": 7.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      },
      "http://www.alamo-group.com/role/LeasesSupplementalBalanceSheetInformationDetails": {
       "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 current.",
        "label": "Operating Lease, Liability, Current",
        "terseLabel": "Accrued liabilities",
        "verboseLabel": "Lease liability"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AccruedLiabilitiesDetails",
      "http://www.alamo-group.com/role/LeasesSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList": {
     "auth_ref": [
      "r669"
     ],
     "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 Enumeration]"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "enumerationSetItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r668"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/LeasesSupplementalBalanceSheetInformationDetails": {
       "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 noncurrent.",
        "label": "Operating Lease, Liability, Noncurrent",
        "terseLabel": "Other long-term liabilities"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList": {
     "auth_ref": [
      "r669"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates line item in statement of financial position that includes noncurrent operating lease liability.",
        "label": "Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible Enumeration]",
        "terseLabel": "Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible Enumeration]"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "enumerationSetItemType"
    },
    "us-gaap_OperatingLeasePayments": {
     "auth_ref": [
      "r671",
      "r677"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.",
        "label": "Operating Lease, Payments",
        "terseLabel": "Operating cash flows from operating leases"
       }
      }
     },
     "localname": "OperatingLeasePayments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesSupplementalCashFlowInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r667"
     ],
     "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": "Other non-current assets"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList": {
     "auth_ref": [
      "r669"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates line item in statement of financial position that includes operating lease right-of-use asset.",
        "label": "Operating Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration]",
        "terseLabel": "Operating Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration]"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "enumerationSetItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "auth_ref": [
      "r679",
      "r773"
     ],
     "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": "Operating leases, weighted average remaining discount rate"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageDiscountRatePercent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r678",
      "r773"
     ],
     "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": "Operating leases, weighted average remaining lease term"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_OperatingLossCarryforwards": {
     "auth_ref": [
      "r157"
     ],
     "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": "Net operating loss carryforwards"
       }
      }
     },
     "localname": "OperatingLossCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesAdditionalInformationDetails"
     ],
     "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.alamo-group.com/role/IncomeTaxesAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingLossCarryforwardsTable": {
     "auth_ref": [
      "r158"
     ],
     "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.alamo-group.com/role/IncomeTaxesAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "auth_ref": [
      "r226"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 4.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",
        "terseLabel": "Other non-current assets"
       }
      }
     },
     "localname": "OtherAssetsNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent": {
     "auth_ref": [
      "r174",
      "r175",
      "r177"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of tax expense (benefit), after reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity.",
        "label": "Other Comprehensive Income (Loss), Foreign Currency Translation Adjustment, Tax, Portion Attributable to Parent",
        "negatedTerseLabel": "Foreign currency translation adjustment, tax expense"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncomeParenthetical"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax": {
     "auth_ref": [
      "r235",
      "r236"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after tax and reclassification, of gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.",
        "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), after Reclassification and Tax",
        "terseLabel": "Unrealized income (loss) on derivative instruments, net of tax (expense) benefit of $(497), $(1,405), and $1,842, respectively"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent": {
     "auth_ref": [
      "r237"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after reclassification, of tax expense (benefit) for gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness, attributable to parent.",
        "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), after Reclassification, Tax, Parent",
        "negatedLabel": "Unrealized gain (loss) on derivative instruments"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncomeParenthetical"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r39",
      "r113",
      "r241",
      "r244",
      "r251",
      "r653",
      "r658",
      "r659",
      "r700",
      "r705",
      "r797",
      "r798"
     ],
     "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",
        "terseLabel": "Other comprehensive income"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent": {
     "auth_ref": [
      "r174",
      "r175",
      "r177",
      "r241",
      "r244"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of other comprehensive income (loss) attributable to parent entity.",
        "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent",
        "terseLabel": "Other comprehensive income (loss)",
        "totalLabel": "Other comprehensive (loss) income, net of tax"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossDetails",
      "http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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 income (loss), net of tax:"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax": {
     "auth_ref": [
      "r33",
      "r37",
      "r239",
      "r504"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before tax, of reclassification adjustment from accumulated other comprehensive income (loss) for gain (loss) of defined benefit plan.",
        "label": "Other Comprehensive Income (Loss), Defined Benefit Plan, Gain (Loss), Reclassification Adjustment from AOCI, before Tax",
        "terseLabel": "Estimate of amount of unrecognized actuarial expense"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax": {
     "auth_ref": [
      "r34"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of tax expense (benefit) of reclassification adjustment from accumulated other comprehensive income (loss) for gain (loss) of defined benefit plan.",
        "label": "Other Comprehensive Income (Loss), Defined Benefit Plan, Gain (Loss), Reclassification Adjustment from AOCI, Tax",
        "negatedTerseLabel": "Net gain on pension and other post-retirement benefits"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncomeParenthetical"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherInvestmentsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing other investments.",
        "label": "Other Investments [Member]",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "OtherInvestmentsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansWeightedAverageAssetAllocationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OtherLiabilitiesCurrent": {
     "auth_ref": [
      "r21",
      "r774"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/AccruedLiabilitiesDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities classified as other, due within one year or the normal operating cycle, if longer.",
        "label": "Other Liabilities, Current",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "OtherLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AccruedLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherLiabilitiesNoncurrent": {
     "auth_ref": [
      "r26"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 3.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",
        "terseLabel": "Other long-term liabilities"
       }
      }
     },
     "localname": "OtherLiabilitiesNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNonoperatingIncomeExpense": {
     "auth_ref": [
      "r50"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome": {
       "order": 3.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (expense) related to nonoperating activities, classified as other.",
        "label": "Other Nonoperating Income (Expense)",
        "terseLabel": "Other income"
       }
      }
     },
     "localname": "OtherNonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PayablesAndAccrualsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Payables and Accruals [Abstract]"
       }
      }
     },
     "localname": "PayablesAndAccrualsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PaymentsForRepurchaseOfCommonStock": {
     "auth_ref": [
      "r57"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 5.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",
        "negatedTerseLabel": "Common stock repurchased"
       }
      }
     },
     "localname": "PaymentsForRepurchaseOfCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfDebtIssuanceCosts": {
     "auth_ref": [
      "r59"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow paid to third parties in connection with debt origination, which will be amortized over the remaining maturity period of the associated long-term debt.",
        "label": "Payments of Debt Issuance Costs",
        "negatedLabel": "Debt issuance cost"
       }
      }
     },
     "localname": "PaymentsOfDebtIssuanceCosts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfDividendsCommonStock": {
     "auth_ref": [
      "r57"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity.",
        "label": "Payments of Ordinary Dividends, Common Stock",
        "negatedTerseLabel": "Dividends paid"
       }
      }
     },
     "localname": "PaymentsOfDividendsCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": {
     "auth_ref": [
      "r53"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.",
        "label": "Payments to Acquire Businesses, Net of Cash Acquired",
        "negatedTerseLabel": "Acquisitions, net of cash acquired"
       }
      }
     },
     "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireIntangibleAssets": {
     "auth_ref": [
      "r54"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow to acquire asset without physical form usually arising from contractual or other legal rights, excluding goodwill.",
        "label": "Payments to Acquire Intangible Assets",
        "negatedTerseLabel": "Purchase of patents"
       }
      }
     },
     "localname": "PaymentsToAcquireIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r54"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.",
        "label": "Payments to Acquire Property, Plant, and Equipment",
        "negatedTerseLabel": "Purchase of property, plant and equipment"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock": {
     "auth_ref": [
      "r484",
      "r486",
      "r492",
      "r511",
      "r513",
      "r514",
      "r515",
      "r516",
      "r517",
      "r532",
      "r533",
      "r535",
      "r548",
      "r760"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for retirement benefits.",
        "label": "Retirement Benefits [Text Block]",
        "terseLabel": "RETIREMENT BENEFIT PLANS"
       }
      }
     },
     "localname": "PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlans"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities": {
     "auth_ref": [
      "r2",
      "r460",
      "r461",
      "r483",
      "r760"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/AccruedLiabilitiesDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "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": "Retirement provision"
       }
      }
     },
     "localname": "PensionAndOtherPostretirementDefinedBenefitPlansCurrentLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AccruedLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PensionAndOtherPostretirementPlansPensionsPolicy": {
     "auth_ref": [
      "r130",
      "r135",
      "r136",
      "r137"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for pension plans. This accounting policy may address (1) the types of plans sponsored by the entity (2) groups that participate in (or are covered by) each plan (3) how plan assets, liabilities and expenses are measured, including the use of any actuaries and (4) significant assumptions used by the entity to value plan assets and liabilities and how such assumptions are derived.",
        "label": "Pension and Other Postretirement Plans, Pensions, Policy [Policy Text Block]",
        "terseLabel": "Pensions"
       }
      }
     },
     "localname": "PensionAndOtherPostretirementPlansPensionsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PensionPlansDefinedBenefitMember": {
     "auth_ref": [
      "r124",
      "r460",
      "r463",
      "r464",
      "r465",
      "r466",
      "r467",
      "r468",
      "r469",
      "r470",
      "r471",
      "r472",
      "r473",
      "r474",
      "r475",
      "r476",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r497",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r507",
      "r509",
      "r510",
      "r512",
      "r515",
      "r518",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r527",
      "r528",
      "r529",
      "r530",
      "r531",
      "r535",
      "r536",
      "r547",
      "r760",
      "r761",
      "r765",
      "r766",
      "r767"
     ],
     "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": "Pension Plan"
       }
      }
     },
     "localname": "PensionPlansDefinedBenefitMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofAssumptionsUsedDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansTables",
      "http://www.alamo-group.com/role/RetirementBenefitPlansWeightedAverageAssetAllocationsDetails"
     ],
     "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 Shares"
       }
      }
     },
     "localname": "PerformanceSharesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PlanAssetCategoriesDomain": {
     "auth_ref": [
      "r484",
      "r485",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r512",
      "r758",
      "r759",
      "r760"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Defined benefit plan asset investment.",
        "label": "Defined Benefit Plan, Plan Assets, Category [Domain]",
        "terseLabel": "Defined Benefit Plan, Plan Assets, Category [Domain]"
       }
      }
     },
     "localname": "PlanAssetCategoriesDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansWeightedAverageAssetAllocationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PlanNameAxis": {
     "auth_ref": [
      "r913",
      "r914",
      "r915",
      "r916",
      "r917",
      "r918",
      "r919",
      "r920",
      "r921",
      "r922",
      "r923",
      "r924",
      "r925",
      "r926",
      "r927",
      "r928",
      "r929",
      "r930",
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937",
      "r938"
     ],
     "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.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PlanNameDomain": {
     "auth_ref": [
      "r913",
      "r914",
      "r915",
      "r916",
      "r917",
      "r918",
      "r919",
      "r920",
      "r921",
      "r922",
      "r923",
      "r924",
      "r925",
      "r926",
      "r927",
      "r928",
      "r929",
      "r930",
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937",
      "r938"
     ],
     "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.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": {
     "auth_ref": [
      "r796"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.",
        "label": "Prepaid Expense and Other Assets, Current",
        "terseLabel": "Prepaid expenses and other current assets"
       }
      }
     },
     "localname": "PrepaidExpenseAndOtherAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfCommonStock": {
     "auth_ref": [
      "r55"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 7.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",
        "terseLabel": "Proceeds from exercise of stock options"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfLongTermDebt": {
     "auth_ref": [
      "r56"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 8.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 issuance of long-term debt"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfLongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromLinesOfCredit": {
     "auth_ref": [
      "r56",
      "r804"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow from contractual arrangement with the lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.",
        "label": "Proceeds from Lines of Credit",
        "terseLabel": "Borrowings on bank revolving credit facility"
       }
      }
     },
     "localname": "ProceedsFromLinesOfCredit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromRepaymentsOfOtherLongTermDebt": {
     "auth_ref": [],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from other long-term debt.",
        "label": "Proceeds from (Repayments of) Other Long-Term Debt",
        "terseLabel": "Principal payments on long-term debt and capital leases"
       }
      }
     },
     "localname": "ProceedsFromRepaymentsOfOtherLongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": {
     "auth_ref": [
      "r52"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from the sale of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale.",
        "label": "Proceeds from Sale of Property, Plant, and Equipment",
        "terseLabel": "Proceeds from sale of property, plant and equipment"
       }
      }
     },
     "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromStockOptionsExercised": {
     "auth_ref": [
      "r55",
      "r149"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement.",
        "label": "Proceeds from Stock Options Exercised",
        "terseLabel": "Proceeds from stock options exercised"
       }
      }
     },
     "localname": "ProceedsFromStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductAndServiceOtherMember": {
     "auth_ref": [
      "r847"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Article or substance produced by nature, labor or machinery and act of providing assistance, classified as other.",
        "label": "Product and Service, Other [Member]",
        "terseLabel": "Other *"
       }
      }
     },
     "localname": "ProductAndServiceOtherMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ProductWarrantyAccrualClassifiedCurrent": {
     "auth_ref": [
      "r21",
      "r103",
      "r104"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/AccruedLiabilitiesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "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": "Warranty"
       }
      }
     },
     "localname": "ProductWarrantyAccrualClassifiedCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AccruedLiabilitiesDetails",
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [Abstract]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization": {
     "auth_ref": [
      "r836",
      "r953",
      "r955"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of accumulated depreciation and amortization from plant, property, and equipment and right-of-use asset from finance lease.",
        "label": "Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, Accumulated Depreciation and Amortization",
        "negatedLabel": "Less:\u00a0 Accumulated depreciation"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets",
      "http://www.alamo-group.com/role/PropertyPlantandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization": {
     "auth_ref": [
      "r837",
      "r955"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after accumulated depreciation and amortization, of property, plant, and equipment and finance lease right-of-use asset.",
        "label": "Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, after Accumulated Depreciation and Amortization",
        "totalLabel": "Total property, plant and equipment, net"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets",
      "http://www.alamo-group.com/role/PropertyPlantandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization": {
     "auth_ref": [
      "r793",
      "r835",
      "r952"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before accumulated depreciation and amortization, of property, plant, and equipment and finance lease right-of-use asset.",
        "label": "Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, before Accumulated Depreciation and Amortization",
        "verboseLabel": "Property, plant and equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets",
      "http://www.alamo-group.com/role/PropertyPlantandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "auth_ref": [
      "r100"
     ],
     "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.alamo-group.com/role/PropertyPlantandEquipmentDetails",
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "auth_ref": [
      "r101",
      "r724",
      "r725",
      "r726"
     ],
     "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]",
        "terseLabel": "PROPERTY, PLANT AND EQUIPMENT"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/PropertyPlantandEquipment"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Property, Plant and Equipment [Line Items]",
        "terseLabel": "Property, Plant and Equipment [Line Items]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/PropertyPlantandEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": {
     "auth_ref": [
      "r100",
      "r724",
      "r725"
     ],
     "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.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "auth_ref": [
      "r100"
     ],
     "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": "Schedule of Property, Plant and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/PropertyPlantandEquipmentTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "auth_ref": [
      "r98"
     ],
     "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.alamo-group.com/role/PropertyPlantandEquipmentDetails",
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "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": "Useful Lives"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/PropertyPlantandEquipmentDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ProvisionForDoubtfulAccounts": {
     "auth_ref": [
      "r254",
      "r355"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable.",
        "label": "Accounts Receivable, Credit Loss Expense (Reversal)",
        "terseLabel": "Provision for doubtful accounts"
       }
      }
     },
     "localname": "ProvisionForDoubtfulAccounts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ReceivablesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Receivables [Abstract]"
       }
      }
     },
     "localname": "ReceivablesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent": {
     "auth_ref": [
      "r36",
      "r39"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncome": {
       "order": 3.0,
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of reclassification adjustments of other comprehensive income (loss) attributable to parent.",
        "label": "Reclassification from AOCI, Current Period, Net of Tax, Attributable to Parent",
        "negatedLabel": "Amounts reclassified from accumulated other comprehensive loss",
        "negatedTerseLabel": "Recognition of deferred pension and other post-retirement benefits, net of tax (expense) benefit of $(194), $(356), and $230, respectively"
       }
      }
     },
     "localname": "ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossDetails",
      "http://www.alamo-group.com/role/ConsolidatedStatementsofComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock": {
     "auth_ref": [
      "r77",
      "r79"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the reconciliation of profit (loss) from reportable segments to the consolidated income (loss) before income tax expense (benefit) and discontinued operations. Includes, but is not limited to, reconciliation after income tax if income tax is allocated to the reportable segment.",
        "label": "Reconciliation of Operating Profit (Loss) from Segments to Consolidated [Table Text Block]",
        "terseLabel": "Schedule of International Operations"
       }
      }
     },
     "localname": "ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward": {
     "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": "Reconciliation of Unrecognized Tax Benefits, Excluding Amounts Pertaining to Examined Tax Returns [Roll Forward]",
        "terseLabel": "Reconciliation of Unrecognized Tax Benefits, Excluding Amounts Pertaining to Examined Tax Returns [Roll Forward]"
       }
      }
     },
     "localname": "ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofUnrecognizedTaxBenefitsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RepaymentsOfLinesOfCredit": {
     "auth_ref": [
      "r58",
      "r804"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow for payment of an obligation from a lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.",
        "label": "Repayments of Lines of Credit",
        "negatedTerseLabel": "Repayment on bank revolving credit facility"
       }
      }
     },
     "localname": "RepaymentsOfLinesOfCredit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpense": {
     "auth_ref": [
      "r152",
      "r214",
      "r966"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.",
        "label": "Research and Development Expense",
        "terseLabel": "Product development and engineering costs"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpensePolicy": {
     "auth_ref": [
      "r152"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for costs it has incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process.",
        "label": "Research and Development Expense, Policy [Policy Text Block]",
        "terseLabel": "Research and Development"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpensePolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RestrictedCash": {
     "auth_ref": [
      "r792",
      "r802",
      "r967",
      "r968"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash restricted as to withdrawal or usage. 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.",
        "label": "Restricted Cash",
        "terseLabel": "Restricted cash"
       }
      }
     },
     "localname": "RestrictedCash",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestrictedStockMember": {
     "auth_ref": [
      "r70"
     ],
     "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": "Restricted Stock"
       }
      }
     },
     "localname": "RestrictedStockMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails"
     ],
     "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 (RSUs)"
       }
      }
     },
     "localname": "RestrictedStockUnitsRSUMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r10",
      "r120",
      "r208",
      "r713",
      "r717",
      "r774"
     ],
     "calculation": {
      "http://www.alamo-group.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.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [
      "r215",
      "r273",
      "r274",
      "r275",
      "r279",
      "r287",
      "r289",
      "r352",
      "r587",
      "r588",
      "r589",
      "r616",
      "r617",
      "r640",
      "r710",
      "r712"
     ],
     "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.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetirementPlanNameAxis": {
     "auth_ref": [
      "r538",
      "r539",
      "r540",
      "r541",
      "r542",
      "r543",
      "r544",
      "r545",
      "r546",
      "r768",
      "r848",
      "r849",
      "r850",
      "r851",
      "r852",
      "r853",
      "r854",
      "r855",
      "r856",
      "r857",
      "r858",
      "r859",
      "r860",
      "r861",
      "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",
      "r888",
      "r889",
      "r890",
      "r891",
      "r892",
      "r893",
      "r894",
      "r895",
      "r896",
      "r897",
      "r898",
      "r899",
      "r900",
      "r901",
      "r902",
      "r903",
      "r904",
      "r905",
      "r906",
      "r907",
      "r908"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by name of plan designed to provide retirement benefits. Includes, but is not limited to, legal name of defined benefit and defined contribution plans.",
        "label": "Retirement Plan Name [Axis]",
        "terseLabel": "Retirement Plan Name [Axis]"
       }
      }
     },
     "localname": "RetirementPlanNameAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RetirementPlanNameDomain": {
     "auth_ref": [
      "r538",
      "r539",
      "r540",
      "r541",
      "r542",
      "r543",
      "r544",
      "r545",
      "r546",
      "r768",
      "r848",
      "r849",
      "r850",
      "r851",
      "r852",
      "r853",
      "r854",
      "r855",
      "r856",
      "r857",
      "r858",
      "r859",
      "r860",
      "r861",
      "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",
      "r888",
      "r889",
      "r890",
      "r891",
      "r892",
      "r893",
      "r894",
      "r895",
      "r896",
      "r897",
      "r898",
      "r899",
      "r900",
      "r901",
      "r902",
      "r903",
      "r904",
      "r905",
      "r906",
      "r907",
      "r908"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of plan designed to provide retirement benefits. Includes, but is not limited to, legal name of defined benefit and defined contribution plans.",
        "label": "Retirement Plan Name [Domain]",
        "terseLabel": "Retirement Plan Name [Domain]"
       }
      }
     },
     "localname": "RetirementPlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetirementPlanSponsorLocationAxis": {
     "auth_ref": [
      "r463",
      "r464",
      "r465",
      "r466",
      "r467",
      "r468",
      "r469",
      "r470",
      "r471",
      "r472",
      "r473",
      "r474",
      "r475",
      "r476",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r497",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r507",
      "r508",
      "r509",
      "r510",
      "r512",
      "r515",
      "r519",
      "r520",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r527",
      "r528",
      "r529",
      "r530",
      "r531",
      "r910",
      "r911",
      "r912"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by location of employer sponsoring plan designed to provide retirement benefits. Includes, but is not limited to, defined benefit and defined contribution plans.",
        "label": "Retirement Plan Sponsor Location [Axis]",
        "terseLabel": "Retirement Plan Sponsor Location [Axis]"
       }
      }
     },
     "localname": "RetirementPlanSponsorLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RetirementPlanSponsorLocationDomain": {
     "auth_ref": [
      "r463",
      "r464",
      "r465",
      "r466",
      "r467",
      "r468",
      "r469",
      "r470",
      "r471",
      "r472",
      "r473",
      "r474",
      "r475",
      "r476",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r497",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r507",
      "r508",
      "r509",
      "r510",
      "r512",
      "r515",
      "r519",
      "r520",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r527",
      "r528",
      "r529",
      "r530",
      "r531",
      "r910",
      "r911",
      "r912"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Location of employer sponsoring plan designed to provide retirement benefits. Includes, but is not limited to, defined benefit and defined contribution plans.",
        "label": "Retirement Plan Sponsor Location [Domain]",
        "terseLabel": "Retirement Plan Sponsor Location [Domain]"
       }
      }
     },
     "localname": "RetirementPlanSponsorLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetirementPlanTypeAxis": {
     "auth_ref": [
      "r124",
      "r125",
      "r460",
      "r463",
      "r464",
      "r465",
      "r466",
      "r467",
      "r468",
      "r469",
      "r470",
      "r471",
      "r472",
      "r473",
      "r474",
      "r475",
      "r476",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r497",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r507",
      "r509",
      "r510",
      "r512",
      "r515",
      "r518",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r527",
      "r528",
      "r529",
      "r530",
      "r531",
      "r535",
      "r536",
      "r537",
      "r547",
      "r760",
      "r761",
      "r762",
      "r763",
      "r764",
      "r765",
      "r766",
      "r767"
     ],
     "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.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofAssumptionsUsedDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansTables",
      "http://www.alamo-group.com/role/RetirementBenefitPlansWeightedAverageAssetAllocationsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RetirementPlanTypeDomain": {
     "auth_ref": [
      "r124",
      "r125",
      "r460",
      "r463",
      "r464",
      "r465",
      "r466",
      "r467",
      "r468",
      "r469",
      "r470",
      "r471",
      "r472",
      "r473",
      "r474",
      "r475",
      "r476",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r497",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r507",
      "r509",
      "r510",
      "r512",
      "r515",
      "r518",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r527",
      "r528",
      "r529",
      "r530",
      "r531",
      "r535",
      "r536",
      "r537",
      "r547",
      "r760",
      "r761",
      "r762",
      "r763",
      "r764",
      "r765",
      "r766",
      "r767"
     ],
     "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.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofAssumptionsUsedDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansTables",
      "http://www.alamo-group.com/role/RetirementBenefitPlansWeightedAverageAssetAllocationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "auth_ref": [
      "r316",
      "r317",
      "r329",
      "r334",
      "r335",
      "r341",
      "r342",
      "r345",
      "r456",
      "r457",
      "r693"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.",
        "label": "Revenue from Contract with Customer, Excluding Assessed Tax",
        "terseLabel": "Total net sales",
        "verboseLabel": "Net Revenue"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome",
      "http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": {
     "auth_ref": [
      "r448",
      "r449",
      "r450",
      "r451",
      "r452",
      "r453",
      "r454",
      "r455",
      "r459",
      "r746"
     ],
     "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.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_Revenues": {
     "auth_ref": [
      "r250",
      "r262",
      "r316",
      "r317",
      "r329",
      "r334",
      "r335",
      "r341",
      "r342",
      "r345",
      "r351",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r649",
      "r703",
      "r842"
     ],
     "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.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofInternationalOperationsDetails",
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenuesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenues [Abstract]",
        "terseLabel": "Net sales:"
       }
      }
     },
     "localname": "RevenuesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "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]",
        "verboseLabel": "Revenues from External Customers and Long-Lived Assets [Line Items]"
       }
      }
     },
     "localname": "RevenuesFromExternalCustomersAndLongLivedAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable": {
     "auth_ref": [
      "r29"
     ],
     "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.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "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]",
        "terseLabel": "Schedule of Accrued Liabilities"
       }
      }
     },
     "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AccruedLiabilitiesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock": {
     "auth_ref": [
      "r36",
      "r950",
      "r951"
     ],
     "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 Accumulated Other Comprehensive Loss"
       }
      }
     },
     "localname": "ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock": {
     "auth_ref": [
      "r127"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the major categories of plan assets of pension plans and/or other employee benefit plans. This information may include, but is not limited to, the target allocation of plan assets, the fair value of each major category of plan assets, and the level within the fair value hierarchy in which the fair value measurements fall.",
        "label": "Schedule of Allocation of Plan Assets [Table Text Block]",
        "terseLabel": "Schedule of Allocation of Plan Assets"
       }
      }
     },
     "localname": "ScheduleOfAllocationOfPlanAssetsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfAssumptionsUsedTableTextBlock": {
     "auth_ref": [
      "r506"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of assumption used to determine benefit obligation and net periodic benefit cost of defined benefit plan. Includes, but is not limited to, discount rate, rate of compensation increase, expected long-term rate of return on plan assets and interest crediting rate.",
        "label": "Defined Benefit Plan, Assumptions [Table Text Block]",
        "terseLabel": "Schedule of Assumptions Used"
       }
      }
     },
     "localname": "ScheduleOfAssumptionsUsedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": {
     "auth_ref": [
      "r164",
      "r165",
      "r631"
     ],
     "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.alamo-group.com/role/BusinessCombinationsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock": {
     "auth_ref": [
      "r126"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the change in the benefit obligation of pension plans and/or other employee benefit plans from the beginning to the end of the period, showing separately, if applicable, the effects of the following: service cost, interest cost, contributions by plan participants, actuarial gains and losses, foreign currency exchange rate changes, benefits paid, plan amendments, business combinations, divestitures, curtailments, settlements, and special and contractual termination benefits.",
        "label": "Schedule of Changes in Projected Benefit Obligations [Table Text Block]",
        "terseLabel": "Schedule of Changes in Projected Benefit Obligations"
       }
      }
     },
     "localname": "ScheduleOfChangesInProjectedBenefitObligationsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": {
     "auth_ref": [
      "r160"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.",
        "label": "Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]",
        "terseLabel": "Schedule of Components of Income Tax Expense (Benefit)"
       }
      }
     },
     "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDebtInstrumentsTextBlock": {
     "auth_ref": [
      "r25",
      "r114",
      "r117",
      "r118",
      "r119",
      "r184",
      "r185",
      "r187",
      "r201",
      "r751",
      "r753",
      "r807"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of long-debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the entity, if longer.",
        "label": "Schedule of Long-Term Debt Instruments [Table Text Block]",
        "terseLabel": "Schedule of Components of Long-Term Debt"
       }
      }
     },
     "localname": "ScheduleOfDebtInstrumentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": {
     "auth_ref": [
      "r156"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets.",
        "label": "Schedule of Deferred Tax Assets and Liabilities [Table Text Block]",
        "terseLabel": "Schedule of Deferred Tax Assets and Liabilities"
       }
      }
     },
     "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable": {
     "auth_ref": [
      "r130",
      "r131",
      "r132",
      "r133",
      "r134"
     ],
     "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.alamo-group.com/role/RetirementBenefitPlansScheduleofAssumptionsUsedDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofFairValueofPlanAssetsDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansTables",
      "http://www.alamo-group.com/role/RetirementBenefitPlansWeightedAverageAssetAllocationsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock": {
     "auth_ref": [
      "r130",
      "r131",
      "r132",
      "r133",
      "r134"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of one or more of the entity's defined benefit pension plans or one or more other defined benefit postretirement plans, separately for pension plans and other postretirement benefit plans including the entity's schedule of fair value of plan assets for defined benefit or other postretirement plans.",
        "label": "Schedule of Defined Benefit Plans Disclosures [Table Text Block]",
        "terseLabel": "Schedule of Defined Benefit Plans Disclosures"
       }
      }
     },
     "localname": "ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "auth_ref": [
      "r818"
     ],
     "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 Earnings Per Share, Basic and Diluted"
       }
      }
     },
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/EarningsPerShareTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": {
     "auth_ref": [
      "r154"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations.",
        "label": "Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]",
        "terseLabel": "Schedule of Effective Income Tax Rate Reconciliation"
       }
      }
     },
     "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock": {
     "auth_ref": [
      "r128"
     ],
     "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]",
        "terseLabel": "Schedule of Expected Benefit Payments"
       }
      }
     },
     "localname": "ScheduleOfExpectedBenefitPaymentsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": {
     "auth_ref": [
      "r87",
      "r91"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.",
        "label": "Schedule of Finite-Lived Intangible Assets [Table Text Block]",
        "terseLabel": "Schedule of Finite Lived Intangible Assets"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfGoodwillTable": {
     "auth_ref": [
      "r360",
      "r361",
      "r362",
      "r363",
      "r364",
      "r365",
      "r366",
      "r367",
      "r368",
      "r369",
      "r371",
      "r749"
     ],
     "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.alamo-group.com/role/GoodwillDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfGoodwillTextBlock": {
     "auth_ref": [
      "r749",
      "r823",
      "r824",
      "r825",
      "r826",
      "r827",
      "r828",
      "r829",
      "r830",
      "r831",
      "r832",
      "r833"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule.",
        "label": "Schedule of Goodwill [Table Text Block]",
        "terseLabel": "Schedule of Goodwill"
       }
      }
     },
     "localname": "ScheduleOfGoodwillTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/GoodwillTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock": {
     "auth_ref": [
      "r806"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of income before income tax between domestic and foreign jurisdictions.",
        "label": "Schedule of Income before Income Tax, Domestic and Foreign [Table Text Block]",
        "terseLabel": "Schedule of Income before Income Tax, Domestic and Foreign"
       }
      }
     },
     "localname": "ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock": {
     "auth_ref": [
      "r95",
      "r96"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance and exist in perpetuity, by either major class or business segment.",
        "label": "Schedule of Indefinite-Lived Intangible Assets [Table Text Block]",
        "terseLabel": "Schedule of Indefinite-Lived Intangible Assets"
       }
      }
     },
     "localname": "ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "auth_ref": [
      "r0",
      "r14",
      "r15",
      "r16"
     ],
     "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.alamo-group.com/role/InventoriesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfNetBenefitCostsTableTextBlock": {
     "auth_ref": [
      "r129"
     ],
     "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 Benefit Cost"
       }
      }
     },
     "localname": "ScheduleOfNetBenefitCostsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": {
     "auth_ref": [
      "r100"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.",
        "label": "Property, Plant and Equipment [Table]",
        "terseLabel": "Schedule of Property, Plant and Equipment [Table]"
       }
      }
     },
     "localname": "ScheduleOfPropertyPlantAndEquipmentTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/PropertyPlantandEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock": {
     "auth_ref": [
      "r44",
      "r80"
     ],
     "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": "Schedule of Selected Geographic Financial Information"
       }
      }
     },
     "localname": "ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable": {
     "auth_ref": [
      "r40",
      "r80"
     ],
     "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]",
        "verboseLabel": "Schedule of Revenues from External Customers and Long-Lived Assets [Table]"
       }
      }
     },
     "localname": "ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofSelectedGeographicFinancialInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": {
     "auth_ref": [
      "r75",
      "r76",
      "r78",
      "r84"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A table disclosing the profit or loss and total assets for each reportable segment of the entity. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.",
        "label": "Schedule of Segment Reporting Information, by Segment [Table]",
        "terseLabel": "Schedule of Segment Reporting Information, by Segment [Table]"
       }
      }
     },
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofInternationalOperationsDetails",
      "http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": {
     "auth_ref": [
      "r75",
      "r76",
      "r78",
      "r84"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.",
        "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]",
        "terseLabel": "Schedule of Segment Reporting Information, by Segment"
       }
      }
     },
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RevenueandSegmentReportingTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "auth_ref": [
      "r549",
      "r551",
      "r553",
      "r554",
      "r555",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581"
     ],
     "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.alamo-group.com/role/StockOptionsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/StockOptionsEquityIncentivePlanDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsTables"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable": {
     "auth_ref": [
      "r148"
     ],
     "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": "Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range [Table]"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock": {
     "auth_ref": [
      "r148"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of option exercise prices, by grouped ranges, including the upper and lower limits of the price range, the number of shares under option, weighted average exercise price and remaining contractual option terms.",
        "label": "Share-Based Payment Arrangement, Option, Exercise Price Range [Table Text Block]",
        "terseLabel": "Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "auth_ref": [
      "r138",
      "r142",
      "r143"
     ],
     "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": "Schedule of Share-based Compensation, Stock Options, Activity"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": {
     "auth_ref": [
      "r146"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions.",
        "label": "Schedule of Share-Based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]",
        "terseLabel": "Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions"
       }
      }
     },
     "localname": "ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesTables"
     ],
     "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": "Schedule of Share-based Compensation, Restricted Stock and Restricted Stock Units Activity"
       }
      }
     },
     "localname": "ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfStockByClassTable": {
     "auth_ref": [
      "r110",
      "r111",
      "r112",
      "r114",
      "r115",
      "r116",
      "r117",
      "r118",
      "r119",
      "r120",
      "r228",
      "r229",
      "r230",
      "r307",
      "r429",
      "r430",
      "r431",
      "r433",
      "r437",
      "r442",
      "r444",
      "r755",
      "r789",
      "r803"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule detailing information related to equity by class of stock. Class of stock includes common, convertible, and preferred stocks which are not redeemable or redeemable solely at the option of the issuer. It also includes preferred stock with redemption features that are solely within the control of the issuer and mandatorily redeemable stock if redemption is required to occur only upon liquidation or termination of the reporting entity.",
        "label": "Schedule of Stock by Class [Table]",
        "terseLabel": "Schedule of Stock by Class [Table]"
       }
      }
     },
     "localname": "ScheduleOfStockByClassTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/CommonStockDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock": {
     "auth_ref": [
      "r772",
      "r940"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the change in unrecognized tax benefits.",
        "label": "Schedule of Unrecognized Tax Benefits Roll Forward [Table Text Block]",
        "terseLabel": "Schedule of Unrecognized Tax Benefits Roll Forward"
       }
      }
     },
     "localname": "ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember": {
     "auth_ref": [
      "r946"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fixed rate on U.S. dollar, constant-notional interest rate swap that has its variable-rate leg referenced to Secured Overnight Financing Rate (SOFR) with no additional spread over SOFR on variable-rate leg.",
        "label": "Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member]",
        "terseLabel": "Secured Overnight Financing Rate (SOFR)"
       }
      }
     },
     "localname": "SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SegmentDomain": {
     "auth_ref": [
      "r313",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r336",
      "r337",
      "r339",
      "r345",
      "r360",
      "r361",
      "r362",
      "r363",
      "r364",
      "r365",
      "r366",
      "r367",
      "r368",
      "r383",
      "r384",
      "r749",
      "r969"
     ],
     "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": "Segment [Domain]"
       }
      }
     },
     "localname": "SegmentDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome",
      "http://www.alamo-group.com/role/GoodwillDetails",
      "http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SegmentReportingAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting [Abstract]"
       }
      }
     },
     "localname": "SegmentReportingAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "auth_ref": [
      "r313",
      "r314",
      "r315",
      "r325",
      "r328",
      "r333",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r344",
      "r345",
      "r346"
     ],
     "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": "REVENUE AND SEGMENT REPORTING"
       }
      }
     },
     "localname": "SegmentReportingDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RevenueandSegmentReporting"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentReportingInformationLineItems": {
     "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 Information [Line Items]",
        "terseLabel": "Segment Reporting Information [Line Items]"
       }
      }
     },
     "localname": "SegmentReportingInformationLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/InternationalOperationsandGeographicInformationScheduleofInternationalOperationsDetails",
      "http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r48"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome": {
       "order": 3.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 expenses"
       }
      }
     },
     "localname": "SellingGeneralAndAdministrativeExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome"
     ],
     "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": "Selling, General and Administrative expenses"
       }
      }
     },
     "localname": "SellingGeneralAndAdministrativeExpensesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r62"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncash expense for share-based payment arrangement.",
        "label": "Share-Based Payment Arrangement, Noncash Expense",
        "terseLabel": "Stock-based compensation expense"
       }
      }
     },
     "localname": "ShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1": {
     "auth_ref": [
      "r769"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Estimated period over which an employee is required to provide service in exchange for the equity-based payment award, 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, Award Requisite Service Period",
        "terseLabel": "Performance period"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": {
     "auth_ref": [
      "r769"
     ],
     "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": "Award vesting period (years)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails",
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": {
     "auth_ref": [
      "r570"
     ],
     "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",
        "negatedTerseLabel": "Canceled (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue": {
     "auth_ref": [
      "r570"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Per share or unit weighted-average intrinsic value of award forfeited 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, Forfeitures, Intrinsic Value, Amount Per Share",
        "terseLabel": "Canceled (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "auth_ref": [
      "r568"
     ],
     "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",
        "terseLabel": "Granted (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue": {
     "auth_ref": [
      "r568"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Per share or unit weighted-average intrinsic value of award granted 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, Grants in Period, Intrinsic Value, Amount Per Share",
        "terseLabel": "Granted (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue": {
     "auth_ref": [
      "r565",
      "r566"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Per share or unit weighted-average intrinsic 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 Instrument Other than Option, Nonvested, Intrinsic Value",
        "periodEndLabel": "Outstanding at end of year (in dollars per share)",
        "periodStartLabel": "Outstanding at beginning of year (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Intrinsic Value, Amount Per Share [Abstract]",
        "terseLabel": "Grant-Date Fair Value"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": {
     "auth_ref": [
      "r565",
      "r566"
     ],
     "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": "Outstanding at end of year (in shares)",
        "periodStartLabel": "Outstanding at beginning of year (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails"
     ],
     "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": "Shares"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms": {
     "auth_ref": [
      "r144"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining contractual term for equity-based awards excluding options, 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, Equity Instruments Other than Options, Outstanding, Weighted Average Remaining Contractual Terms",
        "terseLabel": "Weighted average remaining contractual life (years)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": {
     "auth_ref": [
      "r569"
     ],
     "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",
        "negatedTerseLabel": "Exercised (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue": {
     "auth_ref": [
      "r569"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Per share or unit weighted-average intrinsic value of award vested 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, Vested in Period, Intrinsic Value, Amount Per Share",
        "terseLabel": "Exercised (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": {
     "auth_ref": [
      "r579"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Dividend Rate",
        "terseLabel": "Dividend yield"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesScheduleofFairValueAssumptionsandMethodologyDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": {
     "auth_ref": [
      "r578"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Volatility Rate",
        "terseLabel": "Volatility factors"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesScheduleofFairValueAssumptionsandMethodologyDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": {
     "auth_ref": [
      "r580"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The risk-free interest rate assumption that is used in valuing an option on its own shares.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Risk Free Interest Rate",
        "terseLabel": "Risk-free interest rate"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesScheduleofFairValueAssumptionsandMethodologyDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "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.alamo-group.com/role/StockOptionsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/StockOptionsEquityIncentivePlanDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsTables"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": {
     "auth_ref": [
      "r771"
     ],
     "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": "Shares of common stock reserved for options to be issued (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": {
     "auth_ref": [
      "r148"
     ],
     "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": "Options available for grant at end of year (in shares)",
        "verboseLabel": "Options available for grant at end of year (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsEquityIncentivePlanDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "auth_ref": [
      "r559"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "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 at end of year (in shares)",
        "totalLabel": "Options exercisable (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": {
     "auth_ref": [
      "r559"
     ],
     "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": "Exercisable at end of year, exercise price (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod": {
     "auth_ref": [
      "r563"
     ],
     "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",
        "negatedTerseLabel": "Canceled (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": {
     "auth_ref": [
      "r561"
     ],
     "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.alamo-group.com/role/StockOptionsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r571"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value",
        "terseLabel": "Weighted average grant date fair value of options granted (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "auth_ref": [
      "r557",
      "r558"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "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": "Options outstanding at end of year (in shares)",
        "periodStartLabel": "Options outstanding at beginning of year (in shares)",
        "totalLabel": "Options outstanding (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails"
     ],
     "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": "Shares"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r557",
      "r558"
     ],
     "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": "Outstanding at end of year, exercise price (in dollars per share)",
        "periodStartLabel": "Outstanding at beginning of year, exercise price (in dollars per share)",
        "terseLabel": "Outstanding at end of year, exercise price (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails"
     ],
     "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": "Exercise Price"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "auth_ref": [
      "r553",
      "r554",
      "r555",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581"
     ],
     "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.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails",
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/StockOptionsEquityIncentivePlanDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofRestrictedStockAwardActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsTables"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r562"
     ],
     "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, exercise price (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r563"
     ],
     "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": "Canceled, exercise price (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r561"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.",
        "label": "Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Grants in Period, Weighted Average Exercise Price",
        "terseLabel": "Granted, exercise price (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationAwardTrancheOneMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "First portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period.",
        "label": "Share-Based Payment Arrangement, Tranche One [Member]",
        "terseLabel": "Year One after Grant Date"
       }
      }
     },
     "localname": "ShareBasedCompensationAwardTrancheOneMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationAwardTrancheThreeMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Third portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period.",
        "label": "Share-Based Payment Arrangement, Tranche Three [Member]",
        "terseLabel": "Year Three after Grant Date"
       }
      }
     },
     "localname": "ShareBasedCompensationAwardTrancheThreeMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationAwardTrancheTwoMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Second portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period.",
        "label": "Share-Based Payment Arrangement, Tranche Two [Member]",
        "terseLabel": "Year Two after Grant Date"
       }
      }
     },
     "localname": "ShareBasedCompensationAwardTrancheTwoMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": {
     "auth_ref": [
      "r556",
      "r575",
      "r576",
      "r577",
      "r578",
      "r581",
      "r590",
      "r591"
     ],
     "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": "Stock-Based Compensation"
       }
      }
     },
     "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis": {
     "auth_ref": [
      "r145"
     ],
     "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.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain": {
     "auth_ref": [
      "r147"
     ],
     "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": "Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Domain]"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails"
     ],
     "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 Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items]"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit": {
     "auth_ref": [
      "r147"
     ],
     "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": "Range of exercise price, lower range limit (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions": {
     "auth_ref": [
      "r141"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of shares reserved for issuance pertaining to the outstanding exercisable stock options as of the balance sheet date in the customized range of exercise prices for which the market and performance vesting condition has been satisfied.",
        "label": "Share-Based Payment Arrangement, Option, Exercise Price Range, Shares Exercisable",
        "terseLabel": "Options exercisable, exercise price range (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions": {
     "auth_ref": [
      "r139"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of shares reserved for issuance pertaining to the outstanding stock options as of the balance sheet date for all option plans in the customized range of exercise prices.",
        "label": "Share-Based Payment Arrangement, Option, Exercise Price Range, Shares Outstanding",
        "terseLabel": "Options outstanding, exercise price range (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit": {
     "auth_ref": [
      "r147"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The ceiling 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, Upper Range Limit",
        "terseLabel": "Range of exercise price, upper range limit (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage": {
     "auth_ref": [
      "r913"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of vesting of award under share-based payment arrangement.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Rights, Percentage",
        "terseLabel": "Annual vesting percentage of award"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod": {
     "auth_ref": [
      "r770"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Expiration Period",
        "terseLabel": "Option term (years)"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesAdditionalInformationDetails",
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": {
     "auth_ref": [
      "r577"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Expected term of award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Term",
        "terseLabel": "Weighted-average expected life"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesScheduleofFairValueAssumptionsandMethodologyDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1": {
     "auth_ref": [
      "r140"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average exercise price as of the balance sheet date for those equity-based payment arrangements exercisable and outstanding.",
        "label": "Share-Based Payment Arrangement, Option, Exercise Price Range, Exercisable, Weighted Average Exercise Price",
        "terseLabel": "Options exercisable, exercise price (in dollars per share)"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1": {
     "auth_ref": [
      "r139"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted average price as of the balance sheet date at which grantees could acquire the underlying shares with respect to all outstanding stock options which are in the customized range of exercise prices.",
        "label": "Share-Based Payment Arrangement, Option, Exercise Price Range, Outstanding, Weighted Average Exercise Price",
        "terseLabel": "Options outstanding, exercise price (in dollars per share)"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2": {
     "auth_ref": [
      "r144"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining contractual term of outstanding stock options, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Share-Based Payment Arrangement, Option, Exercise Price Range, Outstanding, Weighted Average Remaining Contractual Term",
        "terseLabel": "Options outstanding, remaining contractual life"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsOutstandingandExercisableDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionsOutstandingandExercisableDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued which are neither cancelled nor held in the treasury.",
        "label": "Shares, Outstanding",
        "periodEndLabel": "Ending balance (in shares)",
        "periodStartLabel": "Beginning balance (in shares)"
       }
      }
     },
     "localname": "SharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShortTermInvestmentsMember": {
     "auth_ref": [
      "r718",
      "r719",
      "r720",
      "r778"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Investments which are not otherwise included in another category or item that the entity has the intent to sell or dispose of within one year from the date of the balance sheet.",
        "label": "Short-Term Investments [Member]",
        "terseLabel": "Short-term investments"
       }
      }
     },
     "localname": "ShortTermInvestmentsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansWeightedAverageAssetAllocationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShortTermLeaseCost": {
     "auth_ref": [
      "r675",
      "r773"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/LeasesLeaseCostDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "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.alamo-group.com/role/LeasesLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r69",
      "r259"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.",
        "label": "Significant Accounting Policies [Text Block]",
        "terseLabel": "SIGNIFICANT ACCOUNTING POLICIES"
       }
      }
     },
     "localname": "SignificantAccountingPoliciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SoftwareAndSoftwareDevelopmentCostsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Purchased software applications and internally developed software for sale, licensing or long-term internal use.",
        "label": "Software and Software Development Costs [Member]",
        "terseLabel": "Computer software"
       }
      }
     },
     "localname": "SoftwareAndSoftwareDevelopmentCostsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/PropertyPlantandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_StandardProductWarrantyPolicy": {
     "auth_ref": [
      "r105"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for standard warranties including the methodology for measuring the liability.",
        "label": "Standard Product Warranty, Policy [Policy Text Block]",
        "terseLabel": "Warranty"
       }
      }
     },
     "localname": "StandardProductWarrantyPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_StandbyLettersOfCreditMember": {
     "auth_ref": [
      "r106",
      "r173",
      "r213",
      "r391"
     ],
     "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.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "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.alamo-group.com/role/IncomeTaxesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "auth_ref": [
      "r217",
      "r313",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r336",
      "r337",
      "r339",
      "r345",
      "r360",
      "r361",
      "r362",
      "r363",
      "r364",
      "r365",
      "r366",
      "r367",
      "r368",
      "r381",
      "r383",
      "r384",
      "r749",
      "r969"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by business segments.",
        "label": "Segments [Axis]",
        "terseLabel": "Business Segments [Axis]",
        "verboseLabel": "Segments [Axis]"
       }
      }
     },
     "localname": "StatementBusinessSegmentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome",
      "http://www.alamo-group.com/role/GoodwillDetails",
      "http://www.alamo-group.com/role/RevenueandSegmentReportingScheduleofSegmentReportingDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r28",
      "r113",
      "r215",
      "r246",
      "r247",
      "r248",
      "r273",
      "r274",
      "r275",
      "r279",
      "r287",
      "r289",
      "r306",
      "r352",
      "r445",
      "r587",
      "r588",
      "r589",
      "r616",
      "r617",
      "r640",
      "r653",
      "r654",
      "r655",
      "r656",
      "r657",
      "r659",
      "r684",
      "r710",
      "r711",
      "r712"
     ],
     "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.alamo-group.com/role/AccumulatedOtherComprehensiveLossDetails",
      "http://www.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "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.alamo-group.com/role/ConsolidatedStatementsofIncome",
      "http://www.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "localname": "StatementOfCashFlowsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "localname": "StatementOfFinancialPositionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Comprehensive Income [Abstract]"
       }
      }
     },
     "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "localname": "StatementOfStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [
      "r273",
      "r274",
      "r275",
      "r306",
      "r693"
     ],
     "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.alamo-group.com/role/ConsolidatedStatementsofIncome",
      "http://www.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "auth_ref": [
      "r7",
      "r8",
      "r113",
      "r120",
      "r562"
     ],
     "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",
        "negatedTerseLabel": "Exercised (in shares)",
        "terseLabel": "Exercise of stock options (in shares)",
        "verboseLabel": "Stock-based compensation transactions (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity",
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofNonQualifiedStockOptionsActivityDetails",
      "http://www.alamo-group.com/role/StockOptionsScheduleofQualifiedStockOptionActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": {
     "auth_ref": [
      "r28",
      "r113",
      "r120"
     ],
     "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-based compensation transactions"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockRepurchaseProgramAuthorizedAmount1": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of stock repurchase plan authorized.",
        "label": "Stock Repurchase Program, Authorized Amount",
        "terseLabel": "Stock repurchase program, authorized amount"
       }
      }
     },
     "localname": "StockRepurchaseProgramAuthorizedAmount1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/CommonStockDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockRepurchasedDuringPeriodShares": {
     "auth_ref": [
      "r7",
      "r8",
      "r113",
      "r120"
     ],
     "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": "Repurchased shares (in shares)"
       }
      }
     },
     "localname": "StockRepurchasedDuringPeriodShares",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockRepurchasedDuringPeriodValue": {
     "auth_ref": [
      "r7",
      "r8",
      "r113",
      "r120"
     ],
     "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": "Repurchased shares"
       }
      }
     },
     "localname": "StockRepurchasedDuringPeriodValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r8",
      "r11",
      "r12",
      "r81",
      "r774",
      "r805",
      "r821",
      "r948"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 4.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": "Ending balance",
        "periodStartLabel": "Beginning balance",
        "totalLabel": "Total stockholders\u2019 equity"
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AccumulatedOtherComprehensiveLossDetails",
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets",
      "http://www.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "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.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquityNoteDisclosureTextBlock": {
     "auth_ref": [
      "r123",
      "r261",
      "r430",
      "r432",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r438",
      "r439",
      "r440",
      "r441",
      "r443",
      "r445",
      "r638"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.",
        "label": "Stockholders' Equity Note Disclosure [Text Block]",
        "terseLabel": "COMMON STOCK"
       }
      }
     },
     "localname": "StockholdersEquityNoteDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/CommonStock"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SubsequentEventMember": {
     "auth_ref": [
      "r660",
      "r686"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event [Member]",
        "terseLabel": "Subsequent Event"
       }
      }
     },
     "localname": "SubsequentEventMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/CommonStockDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventTypeAxis": {
     "auth_ref": [
      "r660",
      "r686"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event Type [Axis]",
        "terseLabel": "Subsequent Event Type [Axis]"
       }
      }
     },
     "localname": "SubsequentEventTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/CommonStockDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventTypeDomain": {
     "auth_ref": [
      "r660",
      "r686"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event Type [Domain]",
        "terseLabel": "Subsequent Event Type [Domain]"
       }
      }
     },
     "localname": "SubsequentEventTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/CommonStockDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SupplementalCashFlowInformationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supplemental Cash Flow Information [Abstract]",
        "terseLabel": "Cash paid during the year for:"
       }
      }
     },
     "localname": "SupplementalCashFlowInformationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SupplementalEmployeeRetirementPlanDefinedBenefitMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Plan designed to provide limited group of employees with supplemental retirement benefits, in addition to other pension benefits. Includes, but is not limited to, defined benefit and defined contribution plans.",
        "label": "Supplemental Employee Retirement Plan [Member]",
        "terseLabel": "Supplemental Employee Retirement Plan"
       }
      }
     },
     "localname": "SupplementalEmployeeRetirementPlanDefinedBenefitMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/RetirementBenefitPlansAdditionalInformationDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofAssumptionsUsedDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofDefinedBenefitPlansDisclosuresDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofExpectedBenefitPaymentsDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansScheduleofNetPeriodicBenefitCostDetails",
      "http://www.alamo-group.com/role/RetirementBenefitPlansTables"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TaxesPayableCurrent": {
     "auth_ref": [
      "r20"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/AccruedLiabilitiesDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Taxes Payable, Current",
        "terseLabel": "Taxes"
       }
      }
     },
     "localname": "TaxesPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/AccruedLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TradeNamesMember": {
     "auth_ref": [
      "r166"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof.",
        "label": "Trade Names [Member]",
        "terseLabel": "Trade Names"
       }
      }
     },
     "localname": "TradeNamesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TrademarksAndTradeNamesMember": {
     "auth_ref": [
      "r166"
     ],
     "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, or rights either acquired through registration of a business name to gain or protect exclusive use thereof.",
        "label": "Trademarks and Trade Names [Member]",
        "terseLabel": "Trade names and trademarks"
       }
      }
     },
     "localname": "TrademarksAndTradeNamesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IntangibleAssetsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/IntangibleAssetsScheduleofDefiniteandIndefiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TransportationEquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equipment used for the primary purpose of moving people and products from one place to another.",
        "label": "Transportation Equipment [Member]",
        "terseLabel": "Transportation equipment"
       }
      }
     },
     "localname": "TransportationEquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/PropertyPlantandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TreasuryStockMember": {
     "auth_ref": [
      "r27",
      "r121"
     ],
     "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.alamo-group.com/role/ConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TreasuryStockShares": {
     "auth_ref": [
      "r27",
      "r121"
     ],
     "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 (in shares)"
       }
      }
     },
     "localname": "TreasuryStockShares",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_TreasuryStockSharesAcquired": {
     "auth_ref": [
      "r8",
      "r113",
      "r120"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares that have been repurchased during the period and are being held in treasury.",
        "label": "Treasury Stock, Shares, Acquired",
        "terseLabel": "Common stock repurchased (in shares)"
       }
      }
     },
     "localname": "TreasuryStockSharesAcquired",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/CommonStockDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_TreasuryStockValue": {
     "auth_ref": [
      "r27",
      "r121",
      "r122"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets": {
       "order": 3.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",
        "negatedTerseLabel": "Treasury stock, at cost; 82,600 shares at December 31, 2022 and December 31, 2021"
       }
      }
     },
     "localname": "TreasuryStockValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefits": {
     "auth_ref": [
      "r594",
      "r603"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of unrecognized tax benefits.",
        "label": "Unrecognized Tax Benefits",
        "periodEndLabel": "Balance as of end of year",
        "periodStartLabel": "Balance as of beginning of year"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefits",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofUnrecognizedTaxBenefitsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued": {
     "auth_ref": [
      "r602"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount accrued 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 Accrued",
        "terseLabel": "Income tax penalties and interest cacrued"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions": {
     "auth_ref": [
      "r604"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in unrecognized tax benefits resulting from tax positions that have been or will be taken in current period tax return.",
        "label": "Unrecognized Tax Benefits, Increase Resulting from Current Period Tax Positions",
        "terseLabel": "Increases for tax positions related to the current year"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofUnrecognizedTaxBenefitsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations": {
     "auth_ref": [
      "r605"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of decrease in unrecognized tax benefits resulting from lapses of applicable statutes of limitations.",
        "label": "Unrecognized Tax Benefits, Reduction Resulting from Lapse of Applicable Statute of Limitations",
        "negatedTerseLabel": "Decreases due to lapse of statute of limitations"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/IncomeTaxesScheduleofUnrecognizedTaxBenefitsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnsecuredDebtMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt obligation not collateralized by pledge of, mortgage of or other lien on the entity's assets.",
        "label": "Unsecured Debt [Member]",
        "terseLabel": "Bank revolving credit facility"
       }
      }
     },
     "localname": "UnsecuredDebtMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails",
      "http://www.alamo-group.com/role/LongTermDebtScheduleofLongTermDebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_UseOfEstimates": {
     "auth_ref": [
      "r72",
      "r73",
      "r74",
      "r308",
      "r309",
      "r311",
      "r312"
     ],
     "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.alamo-group.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesAdjustments": {
     "auth_ref": [
      "r813"
     ],
     "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": "Translations, Reclassifications and Acquisitions"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesBalance": {
     "auth_ref": [
      "r267",
      "r272"
     ],
     "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 End of Year",
        "periodStartLabel": "Balance Beginning of Year",
        "terseLabel": "Reserves for sales discounts on products shipped under promotional programs"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesBalance",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense": {
     "auth_ref": [
      "r270"
     ],
     "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": "Net Charged to Costs and Expenses"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesChargedToCostAndExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesDeductions": {
     "auth_ref": [
      "r271"
     ],
     "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",
        "negatedTerseLabel": "Net Write-Offs or Discounts Taken"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesDeductions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesDomain": {
     "auth_ref": [
      "r267",
      "r268",
      "r269",
      "r271",
      "r272"
     ],
     "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.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesTypeAxis": {
     "auth_ref": [
      "r267",
      "r268",
      "r269",
      "r271",
      "r272"
     ],
     "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.alamo-group.com/role/ValuationandQualifyingAccountsAdditionalInformationDetails",
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_VariableLeaseCost": {
     "auth_ref": [
      "r676",
      "r773"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/LeasesLeaseCostDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of variable lease cost, excluded from lease liability, recognized when obligation for payment is incurred for finance and operating leases.",
        "label": "Variable Lease, Cost",
        "terseLabel": "Variable lease cost"
       }
      }
     },
     "localname": "VariableLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LeasesLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_VariableRateAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of variable rate.",
        "label": "Variable Rate [Axis]",
        "terseLabel": "Variable Rate [Axis]"
       }
      }
     },
     "localname": "VariableRateAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "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.alamo-group.com/role/LongTermDebtAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_VestingAxis": {
     "auth_ref": [
      "r913",
      "r914",
      "r915",
      "r916",
      "r917",
      "r918",
      "r919",
      "r920",
      "r921",
      "r922",
      "r923",
      "r924",
      "r925",
      "r926",
      "r927",
      "r928",
      "r929",
      "r930",
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937",
      "r938"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by vesting schedule of award under share-based payment arrangement.",
        "label": "Vesting [Axis]",
        "terseLabel": "Vesting [Axis]"
       }
      }
     },
     "localname": "VestingAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_VestingDomain": {
     "auth_ref": [
      "r913",
      "r914",
      "r915",
      "r916",
      "r917",
      "r918",
      "r919",
      "r920",
      "r921",
      "r922",
      "r923",
      "r924",
      "r925",
      "r926",
      "r927",
      "r928",
      "r929",
      "r930",
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937",
      "r938"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Vesting schedule of award under share-based payment arrangement.",
        "label": "Vesting [Domain]",
        "terseLabel": "Vesting [Domain]"
       }
      }
     },
     "localname": "VestingDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/StockOptionsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_WarrantyReservesMember": {
     "auth_ref": [
      "r808",
      "r809",
      "r810",
      "r811",
      "r812"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Reserve for expected cost from warranty provided on specific product or service.",
        "label": "SEC Schedule, 12-09, Reserve, Warranty [Member]",
        "terseLabel": "Reserve for warranty"
       }
      }
     },
     "localname": "WarrantyReservesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ValuationandQualifyingAccountsScheduleofValuationandQualifyingAccountsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment": {
     "auth_ref": [
      "r818"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/EarningsPerShareDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation.",
        "label": "Weighted Average Number of Shares Outstanding, Diluted, Adjustment",
        "terseLabel": "Dilutive potential common shares from stock options (in shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r294",
      "r299"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/EarningsPerShareDetails": {
       "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": "Diluted (in shares)",
        "totalLabel": "Diluted (weighted-average outstanding shares) (in shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome",
      "http://www.alamo-group.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r293",
      "r299"
     ],
     "calculation": {
      "http://www.alamo-group.com/role/EarningsPerShareDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.",
        "label": "Weighted Average Number of Shares Outstanding, Basic",
        "terseLabel": "Basic (in shares)",
        "verboseLabel": "Basic (weighted-average outstanding shares) (in shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/ConsolidatedStatementsofIncome",
      "http://www.alamo-group.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted Average Number of Shares Outstanding Reconciliation [Abstract]",
        "terseLabel": "Average common shares:"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.alamo-group.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "stringItemType"
    }
   },
   "unitCount": 9
  }
 },
 "std_ref": {
  "r0": {
   "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"
  },
  "r1": {
   "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"
  },
  "r10": {
   "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"
  },
  "r100": {
   "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"
  },
  "r101": {
   "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"
  },
  "r102": {
   "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"
  },
  "r103": {
   "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"
  },
  "r104": {
   "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"
  },
  "r105": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12565-110249",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r106": {
   "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"
  },
  "r107": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123465755&loc=d3e1835-112601",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r108": {
   "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"
  },
  "r109": {
   "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"
  },
  "r11": {
   "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"
  },
  "r110": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(CFRR 211.02)",
   "Topic": "480",
   "URI": "https://asc.fasb.org/extlink&oid=122040564&loc=d3e177068-122764",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=65888546&loc=d3e21300-112643",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r112": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21553-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r113": {
   "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"
  },
  "r114": {
   "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"
  },
  "r115": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21484-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r116": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21488-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r117": {
   "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"
  },
  "r118": {
   "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"
  },
  "r119": {
   "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"
  },
  "r12": {
   "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"
  },
  "r120": {
   "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"
  },
  "r121": {
   "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"
  },
  "r122": {
   "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"
  },
  "r123": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "505",
   "URI": "https://asc.fasb.org/topic&trid=2208762",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r124": {
   "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"
  },
  "r125": {
   "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"
  },
  "r126": {
   "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://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(5)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r128": {
   "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"
  },
  "r129": {
   "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"
  },
  "r13": {
   "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"
  },
  "r130": {
   "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"
  },
  "r131": {
   "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"
  },
  "r132": {
   "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"
  },
  "r133": {
   "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"
  },
  "r134": {
   "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"
  },
  "r135": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=6412939&loc=d3e15145-114933",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r136": {
   "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://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r137": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=d3e29149-114947",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r138": {
   "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"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)-(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r14": {
   "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"
  },
  "r140": {
   "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://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r141": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r142": {
   "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"
  },
  "r143": {
   "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"
  },
  "r144": {
   "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"
  },
  "r145": {
   "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"
  },
  "r146": {
   "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://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r147": {
   "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"
  },
  "r148": {
   "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"
  },
  "r149": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=SL79508275-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r15": {
   "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"
  },
  "r150": {
   "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"
  },
  "r151": {
   "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"
  },
  "r152": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "730",
   "URI": "https://asc.fasb.org/extlink&oid=6420194&loc=d3e21568-108373",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r153": {
   "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"
  },
  "r154": {
   "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"
  },
  "r155": {
   "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"
  },
  "r156": {
   "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"
  },
  "r157": {
   "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"
  },
  "r158": {
   "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"
  },
  "r159": {
   "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"
  },
  "r16": {
   "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"
  },
  "r160": {
   "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"
  },
  "r161": {
   "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"
  },
  "r162": {
   "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"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r164": {
   "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"
  },
  "r165": {
   "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"
  },
  "r166": {
   "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"
  },
  "r167": {
   "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"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "44",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5558-128473",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r169": {
   "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"
  },
  "r17": {
   "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"
  },
  "r170": {
   "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"
  },
  "r171": {
   "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"
  },
  "r172": {
   "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"
  },
  "r173": {
   "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"
  },
  "r174": {
   "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"
  },
  "r175": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4569643-111683",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r176": {
   "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"
  },
  "r177": {
   "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"
  },
  "r178": {
   "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"
  },
  "r179": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r18": {
   "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"
  },
  "r180": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r181": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "60",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=7493716&loc=d3e21868-110260",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r182": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13279-108611",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r183": {
   "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"
  },
  "r184": {
   "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"
  },
  "r185": {
   "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"
  },
  "r186": {
   "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"
  },
  "r187": {
   "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"
  },
  "r188": {
   "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"
  },
  "r189": {
   "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"
  },
  "r19": {
   "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"
  },
  "r190": {
   "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"
  },
  "r191": {
   "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"
  },
  "r192": {
   "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"
  },
  "r193": {
   "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"
  },
  "r194": {
   "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"
  },
  "r195": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.10)",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r196": {
   "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"
  },
  "r197": {
   "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"
  },
  "r198": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04.9)",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r199": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "405",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=6957935&loc=d3e64057-112817",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r2": {
   "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"
  },
  "r20": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19,20)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r200": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "470",
   "Subparagraph": "(c)",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=123599511&loc=d3e64711-112823",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r201": {
   "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"
  },
  "r202": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126941378&loc=d3e61044-112788",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r203": {
   "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"
  },
  "r204": {
   "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"
  },
  "r205": {
   "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"
  },
  "r206": {
   "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"
  },
  "r207": {
   "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"
  },
  "r208": {
   "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"
  },
  "r209": {
   "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"
  },
  "r21": {
   "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"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03.5(c))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r211": {
   "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"
  },
  "r212": {
   "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"
  },
  "r213": {
   "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"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "985",
   "URI": "https://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r215": {
   "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"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r217": {
   "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"
  },
  "r218": {
   "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"
  },
  "r219": {
   "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"
  },
  "r22": {
   "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"
  },
  "r220": {
   "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"
  },
  "r221": {
   "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"
  },
  "r222": {
   "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"
  },
  "r223": {
   "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"
  },
  "r224": {
   "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"
  },
  "r225": {
   "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"
  },
  "r226": {
   "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"
  },
  "r227": {
   "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"
  },
  "r228": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(27)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r229": {
   "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://www.xbrl.org/2003/role/disclosureRef"
  },
  "r23": {
   "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"
  },
  "r230": {
   "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://www.xbrl.org/2003/role/disclosureRef"
  },
  "r231": {
   "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"
  },
  "r232": {
   "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"
  },
  "r233": {
   "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"
  },
  "r234": {
   "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"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r236": {
   "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://www.xbrl.org/2003/role/disclosureRef"
  },
  "r237": {
   "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://www.xbrl.org/2003/role/disclosureRef"
  },
  "r238": {
   "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://www.xbrl.org/2003/role/disclosureRef"
  },
  "r239": {
   "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"
  },
  "r24": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r240": {
   "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"
  },
  "r241": {
   "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"
  },
  "r242": {
   "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"
  },
  "r243": {
   "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"
  },
  "r244": {
   "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"
  },
  "r245": {
   "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"
  },
  "r246": {
   "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"
  },
  "r247": {
   "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"
  },
  "r248": {
   "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"
  },
  "r249": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(210.5-03(11))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r25": {
   "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"
  },
  "r250": {
   "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"
  },
  "r251": {
   "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"
  },
  "r252": {
   "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"
  },
  "r253": {
   "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"
  },
  "r254": {
   "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"
  },
  "r255": {
   "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"
  },
  "r256": {
   "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"
  },
  "r257": {
   "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"
  },
  "r258": {
   "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"
  },
  "r259": {
   "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"
  },
  "r26": {
   "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"
  },
  "r260": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(c))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r261": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(e)(1))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r262": {
   "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"
  },
  "r263": {
   "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"
  },
  "r264": {
   "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"
  },
  "r265": {
   "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"
  },
  "r266": {
   "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"
  },
  "r267": {
   "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"
  },
  "r268": {
   "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"
  },
  "r269": {
   "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"
  },
  "r27": {
   "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"
  },
  "r270": {
   "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"
  },
  "r271": {
   "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"
  },
  "r272": {
   "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"
  },
  "r273": {
   "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"
  },
  "r274": {
   "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"
  },
  "r275": {
   "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"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(1)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r278": {
   "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"
  },
  "r279": {
   "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"
  },
  "r28": {
   "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"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(4)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r281": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r282": {
   "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"
  },
  "r283": {
   "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"
  },
  "r284": {
   "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"
  },
  "r285": {
   "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"
  },
  "r286": {
   "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"
  },
  "r287": {
   "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"
  },
  "r288": {
   "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"
  },
  "r289": {
   "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"
  },
  "r29": {
   "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"
  },
  "r290": {
   "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"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=122038215&loc=SL108384541-122693",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "250",
   "URI": "https://asc.fasb.org/topic&trid=2122394",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r293": {
   "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"
  },
  "r294": {
   "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"
  },
  "r295": {
   "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"
  },
  "r296": {
   "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"
  },
  "r297": {
   "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"
  },
  "r298": {
   "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"
  },
  "r299": {
   "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"
  },
  "r3": {
   "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"
  },
  "r30": {
   "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"
  },
  "r300": {
   "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"
  },
  "r301": {
   "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"
  },
  "r302": {
   "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"
  },
  "r303": {
   "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"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "260",
   "URI": "https://asc.fasb.org/topic&trid=2144383",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r305": {
   "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"
  },
  "r306": {
   "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"
  },
  "r307": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "https://asc.fasb.org/extlink&oid=6373374&loc=d3e70434-108055",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r308": {
   "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"
  },
  "r309": {
   "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"
  },
  "r31": {
   "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"
  },
  "r310": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r311": {
   "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"
  },
  "r312": {
   "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"
  },
  "r313": {
   "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"
  },
  "r314": {
   "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"
  },
  "r315": {
   "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"
  },
  "r316": {
   "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"
  },
  "r317": {
   "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"
  },
  "r318": {
   "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"
  },
  "r319": {
   "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"
  },
  "r32": {
   "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"
  },
  "r320": {
   "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"
  },
  "r321": {
   "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"
  },
  "r322": {
   "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"
  },
  "r323": {
   "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"
  },
  "r324": {
   "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"
  },
  "r325": {
   "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"
  },
  "r326": {
   "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"
  },
  "r327": {
   "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"
  },
  "r328": {
   "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"
  },
  "r329": {
   "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"
  },
  "r33": {
   "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"
  },
  "r330": {
   "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"
  },
  "r331": {
   "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"
  },
  "r332": {
   "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"
  },
  "r333": {
   "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"
  },
  "r334": {
   "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"
  },
  "r335": {
   "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"
  },
  "r336": {
   "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"
  },
  "r337": {
   "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"
  },
  "r338": {
   "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"
  },
  "r339": {
   "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"
  },
  "r34": {
   "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"
  },
  "r340": {
   "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"
  },
  "r341": {
   "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"
  },
  "r342": {
   "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"
  },
  "r343": {
   "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"
  },
  "r344": {
   "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"
  },
  "r345": {
   "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"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "280",
   "URI": "https://asc.fasb.org/topic&trid=2134510",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r347": {
   "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"
  },
  "r348": {
   "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"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(d)(1)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=126986314&loc=SL124402458-218513",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r35": {
   "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"
  },
  "r350": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(d)(2)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=126986314&loc=SL124402458-218513",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r351": {
   "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"
  },
  "r352": {
   "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"
  },
  "r353": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r355": {
   "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"
  },
  "r356": {
   "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"
  },
  "r357": {
   "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"
  },
  "r358": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "330",
   "URI": "https://asc.fasb.org/topic&trid=2126998",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r359": {
   "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"
  },
  "r36": {
   "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"
  },
  "r360": {
   "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"
  },
  "r361": {
   "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"
  },
  "r362": {
   "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"
  },
  "r363": {
   "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"
  },
  "r364": {
   "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"
  },
  "r365": {
   "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"
  },
  "r366": {
   "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"
  },
  "r367": {
   "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"
  },
  "r368": {
   "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"
  },
  "r369": {
   "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"
  },
  "r37": {
   "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"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r371": {
   "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"
  },
  "r372": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/subtopic&trid=2144439",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r373": {
   "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"
  },
  "r374": {
   "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"
  },
  "r375": {
   "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"
  },
  "r376": {
   "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"
  },
  "r377": {
   "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"
  },
  "r378": {
   "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"
  },
  "r379": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "https://asc.fasb.org/subtopic&trid=2144471",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r38": {
   "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"
  },
  "r380": {
   "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"
  },
  "r381": {
   "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"
  },
  "r382": {
   "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"
  },
  "r383": {
   "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"
  },
  "r384": {
   "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"
  },
  "r385": {
   "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"
  },
  "r386": {
   "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"
  },
  "r387": {
   "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"
  },
  "r388": {
   "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"
  },
  "r389": {
   "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"
  },
  "r39": {
   "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"
  },
  "r390": {
   "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"
  },
  "r391": {
   "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"
  },
  "r392": {
   "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"
  },
  "r393": {
   "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"
  },
  "r394": {
   "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"
  },
  "r395": {
   "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"
  },
  "r396": {
   "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"
  },
  "r397": {
   "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"
  },
  "r398": {
   "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"
  },
  "r399": {
   "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"
  },
  "r4": {
   "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"
  },
  "r40": {
   "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"
  },
  "r400": {
   "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"
  },
  "r401": {
   "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"
  },
  "r402": {
   "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"
  },
  "r403": {
   "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"
  },
  "r404": {
   "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"
  },
  "r405": {
   "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"
  },
  "r406": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r407": {
   "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"
  },
  "r408": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(i)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r409": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r41": {
   "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"
  },
  "r410": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r411": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r412": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r413": {
   "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"
  },
  "r414": {
   "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"
  },
  "r415": {
   "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"
  },
  "r416": {
   "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"
  },
  "r417": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r418": {
   "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"
  },
  "r419": {
   "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"
  },
  "r42": {
   "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"
  },
  "r420": {
   "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"
  },
  "r421": {
   "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"
  },
  "r422": {
   "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"
  },
  "r423": {
   "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"
  },
  "r424": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r425": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r426": {
   "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"
  },
  "r427": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r428": {
   "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"
  },
  "r429": {
   "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"
  },
  "r43": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(8))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r430": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r431": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r432": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r433": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r434": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r435": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r436": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496171-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r437": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496171-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r438": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496171-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r439": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496180-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r44": {
   "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"
  },
  "r440": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r441": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r442": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r443": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r444": {
   "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://www.xbrl.org/2003/role/disclosureRef"
  },
  "r445": {
   "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"
  },
  "r446": {
   "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"
  },
  "r447": {
   "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"
  },
  "r448": {
   "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"
  },
  "r449": {
   "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"
  },
  "r45": {
   "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"
  },
  "r450": {
   "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"
  },
  "r451": {
   "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"
  },
  "r452": {
   "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"
  },
  "r453": {
   "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"
  },
  "r454": {
   "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"
  },
  "r455": {
   "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"
  },
  "r456": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130543-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r457": {
   "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"
  },
  "r458": {
   "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"
  },
  "r459": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "606",
   "URI": "https://asc.fasb.org/topic&trid=49130388",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r46": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.2(a),(d))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r460": {
   "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"
  },
  "r461": {
   "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"
  },
  "r462": {
   "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"
  },
  "r463": {
   "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"
  },
  "r464": {
   "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"
  },
  "r465": {
   "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"
  },
  "r466": {
   "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"
  },
  "r467": {
   "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"
  },
  "r468": {
   "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"
  },
  "r469": {
   "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"
  },
  "r47": {
   "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"
  },
  "r470": {
   "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"
  },
  "r471": {
   "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"
  },
  "r472": {
   "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"
  },
  "r473": {
   "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"
  },
  "r474": {
   "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"
  },
  "r475": {
   "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"
  },
  "r476": {
   "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"
  },
  "r477": {
   "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"
  },
  "r478": {
   "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"
  },
  "r479": {
   "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"
  },
  "r48": {
   "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"
  },
  "r480": {
   "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"
  },
  "r481": {
   "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"
  },
  "r482": {
   "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"
  },
  "r483": {
   "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"
  },
  "r484": {
   "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"
  },
  "r485": {
   "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"
  },
  "r486": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iii)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r487": {
   "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"
  },
  "r488": {
   "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"
  },
  "r489": {
   "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"
  },
  "r49": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.7(b))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r490": {
   "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"
  },
  "r491": {
   "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"
  },
  "r492": {
   "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"
  },
  "r493": {
   "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"
  },
  "r494": {
   "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"
  },
  "r495": {
   "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"
  },
  "r496": {
   "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"
  },
  "r497": {
   "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"
  },
  "r498": {
   "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"
  },
  "r499": {
   "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"
  },
  "r5": {
   "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"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.9)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r500": {
   "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"
  },
  "r501": {
   "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"
  },
  "r502": {
   "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"
  },
  "r503": {
   "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"
  },
  "r504": {
   "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"
  },
  "r505": {
   "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"
  },
  "r506": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r507": {
   "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"
  },
  "r508": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)(2)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r509": {
   "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"
  },
  "r51": {
   "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"
  },
  "r510": {
   "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"
  },
  "r511": {
   "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"
  },
  "r512": {
   "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"
  },
  "r513": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(o)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r514": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(p)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r515": {
   "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"
  },
  "r516": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(r)(1)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r517": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(r)(2)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r518": {
   "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"
  },
  "r519": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2417-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3179-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r520": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2417-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r521": {
   "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://www.xbrl.org/2003/role/disclosureRef"
  },
  "r522": {
   "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"
  },
  "r523": {
   "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"
  },
  "r524": {
   "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"
  },
  "r525": {
   "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"
  },
  "r526": {
   "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"
  },
  "r527": {
   "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"
  },
  "r528": {
   "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"
  },
  "r529": {
   "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"
  },
  "r53": {
   "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"
  },
  "r530": {
   "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"
  },
  "r531": {
   "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"
  },
  "r532": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=21916913&loc=d3e273930-122802",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r533": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "60",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=6414203&loc=d3e39689-114964",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r534": {
   "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"
  },
  "r535": {
   "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"
  },
  "r536": {
   "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"
  },
  "r537": {
   "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"
  },
  "r538": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r539": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r54": {
   "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"
  },
  "r540": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r541": {
   "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"
  },
  "r542": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(e)(1)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r543": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(e)(2)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r544": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(f)(1)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r545": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(f)(2)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r546": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(f)(3)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r547": {
   "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"
  },
  "r548": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "715",
   "URI": "https://asc.fasb.org/topic&trid=2235017",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r549": {
   "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"
  },
  "r55": {
   "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"
  },
  "r550": {
   "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"
  },
  "r551": {
   "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"
  },
  "r552": {
   "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"
  },
  "r553": {
   "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"
  },
  "r554": {
   "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"
  },
  "r555": {
   "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"
  },
  "r556": {
   "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"
  },
  "r557": {
   "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"
  },
  "r558": {
   "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"
  },
  "r559": {
   "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"
  },
  "r56": {
   "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"
  },
  "r560": {
   "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"
  },
  "r561": {
   "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"
  },
  "r562": {
   "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"
  },
  "r563": {
   "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"
  },
  "r564": {
   "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"
  },
  "r565": {
   "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"
  },
  "r566": {
   "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"
  },
  "r567": {
   "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"
  },
  "r568": {
   "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"
  },
  "r569": {
   "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"
  },
  "r57": {
   "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"
  },
  "r570": {
   "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"
  },
  "r571": {
   "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"
  },
  "r572": {
   "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"
  },
  "r573": {
   "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"
  },
  "r574": {
   "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"
  },
  "r575": {
   "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"
  },
  "r576": {
   "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"
  },
  "r577": {
   "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"
  },
  "r578": {
   "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"
  },
  "r579": {
   "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"
  },
  "r58": {
   "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"
  },
  "r580": {
   "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"
  },
  "r581": {
   "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"
  },
  "r582": {
   "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"
  },
  "r583": {
   "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"
  },
  "r584": {
   "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"
  },
  "r585": {
   "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"
  },
  "r586": {
   "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"
  },
  "r587": {
   "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"
  },
  "r588": {
   "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"
  },
  "r589": {
   "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"
  },
  "r59": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r590": {
   "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"
  },
  "r591": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "https://asc.fasb.org/topic&trid=2228938",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r592": {
   "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"
  },
  "r593": {
   "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"
  },
  "r594": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=SL37586934-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r595": {
   "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"
  },
  "r596": {
   "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"
  },
  "r597": {
   "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"
  },
  "r598": {
   "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"
  },
  "r599": {
   "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"
  },
  "r6": {
   "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"
  },
  "r60": {
   "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"
  },
  "r600": {
   "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"
  },
  "r601": {
   "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"
  },
  "r602": {
   "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"
  },
  "r603": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=SL6600010-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r604": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=SL6600010-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r605": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(4)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=SL6600010-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r606": {
   "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"
  },
  "r607": {
   "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"
  },
  "r608": {
   "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"
  },
  "r609": {
   "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"
  },
  "r61": {
   "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"
  },
  "r610": {
   "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"
  },
  "r611": {
   "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"
  },
  "r612": {
   "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"
  },
  "r613": {
   "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"
  },
  "r614": {
   "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"
  },
  "r615": {
   "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"
  },
  "r616": {
   "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"
  },
  "r617": {
   "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"
  },
  "r618": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r619": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r62": {
   "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"
  },
  "r620": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(3)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r621": {
   "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"
  },
  "r622": {
   "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"
  },
  "r623": {
   "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"
  },
  "r624": {
   "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"
  },
  "r625": {
   "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"
  },
  "r626": {
   "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"
  },
  "r627": {
   "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"
  },
  "r628": {
   "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"
  },
  "r629": {
   "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"
  },
  "r63": {
   "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"
  },
  "r630": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "https://asc.fasb.org/topic&trid=2144680",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r631": {
   "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"
  },
  "r632": {
   "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"
  },
  "r633": {
   "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"
  },
  "r634": {
   "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"
  },
  "r635": {
   "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://www.xbrl.org/2003/role/disclosureRef"
  },
  "r636": {
   "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"
  },
  "r637": {
   "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"
  },
  "r638": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126731327&loc=SL126733271-114008",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r639": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r64": {
   "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"
  },
  "r640": {
   "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"
  },
  "r641": {
   "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"
  },
  "r642": {
   "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"
  },
  "r643": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(c)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL126732908-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r644": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(c)(2)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL126732908-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r645": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(c)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL126732908-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r646": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r647": {
   "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"
  },
  "r648": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13433-108611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r649": {
   "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"
  },
  "r65": {
   "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"
  },
  "r650": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r651": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r652": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(3)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r653": {
   "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"
  },
  "r654": {
   "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"
  },
  "r655": {
   "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"
  },
  "r656": {
   "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"
  },
  "r657": {
   "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"
  },
  "r658": {
   "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"
  },
  "r659": {
   "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"
  },
  "r66": {
   "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"
  },
  "r660": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=6450520&loc=d3e32618-110901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r661": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "830",
   "URI": "https://asc.fasb.org/topic&trid=2175825",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r662": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=6450988&loc=d3e26243-108391",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r663": {
   "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"
  },
  "r664": {
   "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"
  },
  "r665": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r666": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(3)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r667": {
   "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"
  },
  "r668": {
   "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"
  },
  "r669": {
   "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"
  },
  "r67": {
   "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"
  },
  "r670": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918638-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r671": {
   "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"
  },
  "r672": {
   "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"
  },
  "r673": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r674": {
   "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"
  },
  "r675": {
   "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"
  },
  "r676": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r677": {
   "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"
  },
  "r678": {
   "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"
  },
  "r679": {
   "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"
  },
  "r68": {
   "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"
  },
  "r680": {
   "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"
  },
  "r681": {
   "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"
  },
  "r682": {
   "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"
  },
  "r683": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL122150809-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r684": {
   "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"
  },
  "r685": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r686": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "855",
   "URI": "https://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r687": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r688": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(2)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r689": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(3)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r69": {
   "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"
  },
  "r690": {
   "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"
  },
  "r691": {
   "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"
  },
  "r692": {
   "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"
  },
  "r693": {
   "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"
  },
  "r694": {
   "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"
  },
  "r695": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(f)(1)",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r696": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(f)(2)",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r697": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(f)(3)",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r698": {
   "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"
  },
  "r699": {
   "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"
  },
  "r7": {
   "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"
  },
  "r70": {
   "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"
  },
  "r700": {
   "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"
  },
  "r701": {
   "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"
  },
  "r702": {
   "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"
  },
  "r703": {
   "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"
  },
  "r704": {
   "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"
  },
  "r705": {
   "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"
  },
  "r706": {
   "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"
  },
  "r707": {
   "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"
  },
  "r708": {
   "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"
  },
  "r709": {
   "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"
  },
  "r71": {
   "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://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r710": {
   "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"
  },
  "r711": {
   "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"
  },
  "r712": {
   "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"
  },
  "r713": {
   "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"
  },
  "r714": {
   "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"
  },
  "r715": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iii)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r716": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iv)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r717": {
   "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"
  },
  "r718": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-15(Column B))",
   "Topic": "946",
   "URI": "https://asc.fasb.org/extlink&oid=122147990&loc=d3e611379-123010",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r719": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-15(Column C))",
   "Topic": "946",
   "URI": "https://asc.fasb.org/extlink&oid=122147990&loc=d3e611379-123010",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r72": {
   "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"
  },
  "r720": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-15(Column D))",
   "Topic": "946",
   "URI": "https://asc.fasb.org/extlink&oid=122147990&loc=d3e611379-123010",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r721": {
   "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"
  },
  "r722": {
   "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"
  },
  "r723": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "450",
   "Topic": "954",
   "URI": "https://asc.fasb.org/extlink&oid=6491354&loc=d3e6049-115624",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r724": {
   "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"
  },
  "r725": {
   "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"
  },
  "r726": {
   "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"
  },
  "r727": {
   "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"
  },
  "r728": {
   "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"
  },
  "r729": {
   "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"
  },
  "r73": {
   "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"
  },
  "r730": {
   "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"
  },
  "r731": {
   "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"
  },
  "r732": {
   "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"
  },
  "r733": {
   "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"
  },
  "r734": {
   "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"
  },
  "r735": {
   "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"
  },
  "r736": {
   "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"
  },
  "r737": {
   "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"
  },
  "r738": {
   "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"
  },
  "r739": {
   "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"
  },
  "r74": {
   "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"
  },
  "r740": {
   "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/2003/role/exampleRef"
  },
  "r741": {
   "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/2003/role/exampleRef"
  },
  "r742": {
   "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/2003/role/exampleRef"
  },
  "r743": {
   "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://www.xbrl.org/2003/role/exampleRef"
  },
  "r744": {
   "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"
  },
  "r745": {
   "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"
  },
  "r746": {
   "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"
  },
  "r747": {
   "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"
  },
  "r748": {
   "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"
  },
  "r749": {
   "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"
  },
  "r75": {
   "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://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r750": {
   "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"
  },
  "r751": {
   "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"
  },
  "r752": {
   "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"
  },
  "r753": {
   "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"
  },
  "r754": {
   "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"
  },
  "r755": {
   "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"
  },
  "r756": {
   "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"
  },
  "r757": {
   "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"
  },
  "r758": {
   "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"
  },
  "r759": {
   "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"
  },
  "r76": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8813-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r760": {
   "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"
  },
  "r761": {
   "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"
  },
  "r762": {
   "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"
  },
  "r763": {
   "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"
  },
  "r764": {
   "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"
  },
  "r765": {
   "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"
  },
  "r766": {
   "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"
  },
  "r767": {
   "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"
  },
  "r768": {
   "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"
  },
  "r769": {
   "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"
  },
  "r77": {
   "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://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r770": {
   "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/exampleRef"
  },
  "r771": {
   "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"
  },
  "r772": {
   "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://www.xbrl.org/2003/role/exampleRef"
  },
  "r773": {
   "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"
  },
  "r774": {
   "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"
  },
  "r775": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r776": {
   "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"
  },
  "r777": {
   "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"
  },
  "r778": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-15(Column A))",
   "Topic": "946",
   "URI": "https://asc.fasb.org/extlink&oid=122147990&loc=d3e611379-123010",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r779": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r780": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r781": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-23",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r782": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r783": {
   "Name": "Form 10-K",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "310",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r784": {
   "Name": "Form 20-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "220",
   "Subsection": "f",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r785": {
   "Name": "Form 40-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "240",
   "Subsection": "f",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r786": {
   "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"
  },
  "r787": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r788": {
   "Name": "Securities Act",
   "Number": "230",
   "Publisher": "SEC",
   "Section": "405",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r789": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "https://asc.fasb.org/extlink&oid=125520817&loc=d3e70229-108054",
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef"
  },
  "r79": {
   "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"
  },
  "r790": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14615-108349",
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef"
  },
  "r791": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "855",
   "URI": "https://asc.fasb.org/extlink&oid=6842918&loc=SL6314020-165662",
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef"
  },
  "r792": {
   "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/2009/role/commonPracticeRef"
  },
  "r793": {
   "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/2009/role/commonPracticeRef"
  },
  "r794": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(3)(a)(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r795": {
   "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"
  },
  "r796": {
   "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/2009/role/commonPracticeRef"
  },
  "r797": {
   "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"
  },
  "r798": {
   "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"
  },
  "r799": {
   "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"
  },
  "r8": {
   "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"
  },
  "r80": {
   "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"
  },
  "r800": {
   "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://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r801": {
   "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"
  },
  "r802": {
   "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://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r803": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(d))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r804": {
   "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"
  },
  "r805": {
   "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"
  },
  "r806": {
   "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"
  },
  "r807": {
   "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/2009/role/commonPracticeRef"
  },
  "r808": {
   "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"
  },
  "r809": {
   "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"
  },
  "r81": {
   "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"
  },
  "r810": {
   "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"
  },
  "r811": {
   "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"
  },
  "r812": {
   "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"
  },
  "r813": {
   "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"
  },
  "r814": {
   "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"
  },
  "r815": {
   "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"
  },
  "r816": {
   "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"
  },
  "r817": {
   "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/2009/role/commonPracticeRef"
  },
  "r818": {
   "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"
  },
  "r819": {
   "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"
  },
  "r82": {
   "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"
  },
  "r820": {
   "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"
  },
  "r821": {
   "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"
  },
  "r822": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "https://asc.fasb.org/extlink&oid=126904749&loc=d3e3927-108312",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r823": {
   "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"
  },
  "r824": {
   "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"
  },
  "r825": {
   "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"
  },
  "r826": {
   "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"
  },
  "r827": {
   "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"
  },
  "r828": {
   "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"
  },
  "r829": {
   "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"
  },
  "r83": {
   "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"
  },
  "r830": {
   "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"
  },
  "r831": {
   "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"
  },
  "r832": {
   "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"
  },
  "r833": {
   "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"
  },
  "r834": {
   "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/2009/role/commonPracticeRef"
  },
  "r835": {
   "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://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r836": {
   "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://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r837": {
   "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://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r838": {
   "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"
  },
  "r839": {
   "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/2009/role/commonPracticeRef"
  },
  "r84": {
   "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"
  },
  "r840": {
   "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/2009/role/commonPracticeRef"
  },
  "r841": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "450",
   "URI": "https://asc.fasb.org/topic&trid=2127136",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r842": {
   "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"
  },
  "r843": {
   "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"
  },
  "r844": {
   "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"
  },
  "r845": {
   "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/2009/role/commonPracticeRef"
  },
  "r846": {
   "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"
  },
  "r847": {
   "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/2009/role/commonPracticeRef"
  },
  "r848": {
   "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/2009/role/commonPracticeRef"
  },
  "r849": {
   "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/2009/role/commonPracticeRef"
  },
  "r85": {
   "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"
  },
  "r850": {
   "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/2009/role/commonPracticeRef"
  },
  "r851": {
   "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/2009/role/commonPracticeRef"
  },
  "r852": {
   "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/2009/role/commonPracticeRef"
  },
  "r853": {
   "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/2009/role/commonPracticeRef"
  },
  "r854": {
   "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/2009/role/commonPracticeRef"
  },
  "r855": {
   "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/2009/role/commonPracticeRef"
  },
  "r856": {
   "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/2009/role/commonPracticeRef"
  },
  "r857": {
   "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/2009/role/commonPracticeRef"
  },
  "r858": {
   "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/2009/role/commonPracticeRef"
  },
  "r859": {
   "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/2009/role/commonPracticeRef"
  },
  "r86": {
   "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"
  },
  "r860": {
   "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/2009/role/commonPracticeRef"
  },
  "r861": {
   "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/2009/role/commonPracticeRef"
  },
  "r862": {
   "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/2009/role/commonPracticeRef"
  },
  "r863": {
   "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/2009/role/commonPracticeRef"
  },
  "r864": {
   "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/2009/role/commonPracticeRef"
  },
  "r865": {
   "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/2009/role/commonPracticeRef"
  },
  "r866": {
   "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/2009/role/commonPracticeRef"
  },
  "r867": {
   "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/2009/role/commonPracticeRef"
  },
  "r868": {
   "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/2009/role/commonPracticeRef"
  },
  "r869": {
   "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/2009/role/commonPracticeRef"
  },
  "r87": {
   "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"
  },
  "r870": {
   "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/2009/role/commonPracticeRef"
  },
  "r871": {
   "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/2009/role/commonPracticeRef"
  },
  "r872": {
   "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/2009/role/commonPracticeRef"
  },
  "r873": {
   "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/2009/role/commonPracticeRef"
  },
  "r874": {
   "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/2009/role/commonPracticeRef"
  },
  "r875": {
   "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/2009/role/commonPracticeRef"
  },
  "r876": {
   "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/2009/role/commonPracticeRef"
  },
  "r877": {
   "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/2009/role/commonPracticeRef"
  },
  "r878": {
   "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/2009/role/commonPracticeRef"
  },
  "r879": {
   "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/2009/role/commonPracticeRef"
  },
  "r88": {
   "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"
  },
  "r880": {
   "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/2009/role/commonPracticeRef"
  },
  "r881": {
   "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/2009/role/commonPracticeRef"
  },
  "r882": {
   "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/2009/role/commonPracticeRef"
  },
  "r883": {
   "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/2009/role/commonPracticeRef"
  },
  "r884": {
   "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/2009/role/commonPracticeRef"
  },
  "r885": {
   "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/2009/role/commonPracticeRef"
  },
  "r886": {
   "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/2009/role/commonPracticeRef"
  },
  "r887": {
   "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/2009/role/commonPracticeRef"
  },
  "r888": {
   "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/2009/role/commonPracticeRef"
  },
  "r889": {
   "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/2009/role/commonPracticeRef"
  },
  "r89": {
   "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"
  },
  "r890": {
   "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/2009/role/commonPracticeRef"
  },
  "r891": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)(2)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r892": {
   "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/2009/role/commonPracticeRef"
  },
  "r893": {
   "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/2009/role/commonPracticeRef"
  },
  "r894": {
   "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/2009/role/commonPracticeRef"
  },
  "r895": {
   "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/2009/role/commonPracticeRef"
  },
  "r896": {
   "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/2009/role/commonPracticeRef"
  },
  "r897": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2417-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r898": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2417-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r899": {
   "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/2009/role/commonPracticeRef"
  },
  "r9": {
   "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"
  },
  "r90": {
   "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"
  },
  "r900": {
   "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/2009/role/commonPracticeRef"
  },
  "r901": {
   "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/2009/role/commonPracticeRef"
  },
  "r902": {
   "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/2009/role/commonPracticeRef"
  },
  "r903": {
   "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/2009/role/commonPracticeRef"
  },
  "r904": {
   "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/2009/role/commonPracticeRef"
  },
  "r905": {
   "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/2009/role/commonPracticeRef"
  },
  "r906": {
   "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/2009/role/commonPracticeRef"
  },
  "r907": {
   "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/2009/role/commonPracticeRef"
  },
  "r908": {
   "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/2009/role/commonPracticeRef"
  },
  "r909": {
   "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/2009/role/commonPracticeRef"
  },
  "r91": {
   "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"
  },
  "r910": {
   "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/2009/role/commonPracticeRef"
  },
  "r911": {
   "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/2009/role/commonPracticeRef"
  },
  "r912": {
   "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/2009/role/commonPracticeRef"
  },
  "r913": {
   "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"
  },
  "r914": {
   "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"
  },
  "r915": {
   "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"
  },
  "r916": {
   "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"
  },
  "r917": {
   "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"
  },
  "r918": {
   "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"
  },
  "r919": {
   "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"
  },
  "r92": {
   "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"
  },
  "r920": {
   "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"
  },
  "r921": {
   "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"
  },
  "r922": {
   "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"
  },
  "r923": {
   "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"
  },
  "r924": {
   "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"
  },
  "r925": {
   "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"
  },
  "r926": {
   "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"
  },
  "r927": {
   "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"
  },
  "r928": {
   "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"
  },
  "r929": {
   "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"
  },
  "r93": {
   "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"
  },
  "r930": {
   "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"
  },
  "r931": {
   "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"
  },
  "r932": {
   "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"
  },
  "r933": {
   "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"
  },
  "r934": {
   "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"
  },
  "r935": {
   "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"
  },
  "r936": {
   "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"
  },
  "r937": {
   "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"
  },
  "r938": {
   "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"
  },
  "r939": {
   "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"
  },
  "r94": {
   "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"
  },
  "r940": {
   "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://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r941": {
   "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"
  },
  "r942": {
   "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"
  },
  "r943": {
   "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"
  },
  "r944": {
   "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"
  },
  "r945": {
   "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"
  },
  "r946": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6A",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=124256753&loc=SL5864739-113975",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r947": {
   "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"
  },
  "r948": {
   "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"
  },
  "r949": {
   "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/2009/role/commonPracticeRef"
  },
  "r95": {
   "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"
  },
  "r950": {
   "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"
  },
  "r951": {
   "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"
  },
  "r952": {
   "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/2009/role/commonPracticeRef"
  },
  "r953": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918638-209977",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r954": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918638-209977",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r955": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r956": {
   "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"
  },
  "r957": {
   "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"
  },
  "r958": {
   "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"
  },
  "r959": {
   "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"
  },
  "r96": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b),(d)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16373-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r960": {
   "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"
  },
  "r961": {
   "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"
  },
  "r962": {
   "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"
  },
  "r963": {
   "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"
  },
  "r964": {
   "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"
  },
  "r965": {
   "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"
  },
  "r966": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "730",
   "Topic": "912",
   "URI": "https://asc.fasb.org/extlink&oid=6472174&loc=d3e58812-109433",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r967": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(1)(a))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r968": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(2))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r969": {
   "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"
  },
  "r97": {
   "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"
  },
  "r98": {
   "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"
  },
  "r99": {
   "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"
  }
 },
 "version": "2.2"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>115
<FILENAME>0000897077-23-000009-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0000897077-23-000009-xbrl.zip
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
MS# DOG)D_%APY:M@>T[(2%(KF0=#G;^[&._<4'@S_6NB?-;X!U!+ P04
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
M%_.CKQ[.%[].7M#!P<E[KL^?OUY,GCQ=?15<B+\[N/BV**!K4 YBSG0 XN&
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
MG%M..TB?/]DI?B2@28]-H7481N'50;6,HA:,450A4]F#MA<=']&L0E41?5$
M\)DQU$KLQ><*]N((LHQQBX[Q^Z!B$K424HT=H2BAUJ8N-W32BJ=='/H>B0\:
MB_1(B8?M=7*#8HE/C6R9CP/*)1!AV<D1LC]AT%CLGA-Y4QQ0HHL XC$+4W,U
M>V^BI(\@WQCW/,H.4*@PY:B!8O<)O.M#ZR/O799.-17 JT&AK10?8Z&0@(^Y
M2)80&Y"*\89K:;50+8HY7PT*;:Z(;0<HQ-TI$4'&:$DTQ&H9=3#Y"M6U3CLY
MT?)^'<:Y(;2SE:&7T7!U??@UR:'VZ$HW!=D=<K;$0TA((Q4N5\0%;$/#Q1T@
M$X8,3H=];:! +['&FIM)D3J(6M 1C*B-6Y+L%IEJZN!3"2P5O.],BI1;Q*8.
MBW=7@TS;T)!Q!\@4V%,G9A.[#F(KU*AE)(MW6NV#=ENF7*?CI;ZDUR/!2GOV
M<1B[*L.4&A*Z7IH3QM!#T[<M(JXX5ENECK:%."VU4+RE(@5-;72S[>0Z*%.@
MGEA', N[*_)C9!['U*J$J)6&DM(D6&M.YG4X.'"6QXY :NR8QQG+Y(OW*99N
MP:EW!D>^ F ,A9/VTGW>Q>F[/^X"?]J!8FR*L'+L85CZC3$!^4;=F<Z E(>*
MP=;V Q^7%BS&S2//K@^;+#96#QP*A0+<^B \*$O8KVS9\^C3_!'$%'K%4-"#
MID*")6$(F+*+[$:0H>[*<,>X>>0\MY2DQ2 "*EI+J-FY[!VZV/IN9\]GT+VE
MU;B02T4-*NW.TE6H[F0'+,V1*.20,+7M1V[7%,DH:43-92=#-N(#2"^8,PRQ
M9)CF\R C* C;-4$R2AIY329HA5J*#A)53$4"88ZMJ?8Z@C&17=,CHZ2112\'
MG6KSL8+K2,U"7,&DK2/W/H)U>5^RD]GQ=#4YW99D<?^(IM-A8?<X<+,,Q*R\
MN]AKAN09+:$-TKIX,DAE! 6JEXO;5FFD;2%1S-2[9@V #4I.6 6H1''0W+!3
MWO:3:%>DR(@]$69?H:0>'7=(0^V'D]92J8'=T()H^TFTPYYH+!,URD4JB:K/
M!;S4&A4KH3DF2[$)1]"WZ@M(]-.QG3.=/G@Y?ZR+=W_&IB2' 1'U&BEG HV!
M8H;>>M!28D4>P83-QB#<BY,/B1/7I$71@)4AG R/@.;D24.L6?8N84OX=+$]
M1]?'I^P[IEI+5-.WG"Q+0HZ]4]98?)/=K@48$9_&(EDJ,;=DI,J6-<7BL"DW
MUX=A.=]*V6W=>]_NFM!"KLWDA_E\L3QMBC<VR4(LA5O/P4=+>3&S'VYR'4:_
MJ)@0W7X(=V5&9S?XQ,D;;7I"':9V"G( E\JPA8WER&$,=8J[,IZR&WR"!(9O
MY,S2(#EB8Y=K,44MGB6,P#]M#,*]9/G0*$O%1B$&%T,$2K%&UIB:J6+G.+81
MM"3XDJ&Z6_=/<+OP3?36B-?0;Q48@02AM(8:&U%W46NS\#("B;DK^F2$Y,'
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
MW!TOLMO]/N\.0"8,F>.U&1LX@Z''[9;GV?:PO?UZT;WMP1U"X[:&7=;I#+R
M#6$/0"J[O,L]'TR&H.\,VEO/B^XV^?)>>%%GP/I.M]?R'="'["&89N[ =P/F
M]KN#SJ#G;#TONK<]N$,,?==S"%#4&7A.SW/8P'8"UQMV/ ^THHZ]];SHWO;@
M[G@1'[9[ [?7!\LX</P!'W9; =AGW;;=&M@V&VP]+[K;(L/[X44MO\M9JSU
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
MS(H'NR)VA(V_3NI?A".>:F0=_+(.%*KD!8UNLT8/B )GUZK%JM!J;& 5#"&
M,F$6^J!P8[))3D$]L+HQP4^Y]9 :A7N.8L JZIWA7>*#U%Q8NB0B4#PG\(6@
M5HPXZQ"[\3 1N;>" I@)#I<BB\ 98*;Y?-E_3E?G.?/&9$X^*G8AC0!GP4>J
M5)GS< 3*?R@@;ZSCQ <>P:T]9*X)F)/HE3W?W:L#;9<ZXOGQW@9/?)1X*H9R
MFD:<H?OY#:9C\'JH+[ Z&^< (A00917CA>FC^/TZ8G/AL&99 H<9KT_Y-&*>
ML.;)QC$COJ@XX)?"2R0] 6]2CKDSI3Q$;]^BS]7D,E69*#KH)2E&N-^B>F$]
MVZG#OIM#>G@"V'F.%K#DZA'S^9*C6YR1AI28/0%_DQ19QEEA_9%$Z!W/D-F4
M![T.RZJ&^/!+JGB<&3V0M+ML="D' -#TB&N1"FO=;K4<=)GR&(U9%][B?SO/
M_9=)<N^L3W+?0+[Z0U(7L;8Z'+ G<UN9VXT-+ 'F"4R079O:81*KU#8K8BA5
M\@K'R92%*?*,F+(A*54)O_\2QOZ2<U/[W$M1#DP"U/:Y^>Y'I7L+U;N[$,%%
M/SN:[6BSZS0?N:+5(+Q8U76&^1^P$]Z81[6US=4 -^N5K\C*!?\1+B.Q=$7
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
MZ2F4CY)@+CKR2Q[Q*Y7^CP**QE.R0SQ/D<!>UR_*9<:Y',HZ@_UAJ$F(X:>
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
MP>'QA?]*SBS&,DBR!;78H\.6CEBL74H9Y:_(T7B8H$)A;,5.J/Z;B;)/^DL
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
MP,/#/:"9(JLN)2T)EQB&'LP$Z948=%,[ T39$'X5%+$GF8?L1U$6^[-4IGN
M_&32_@B23'?TD<!]@A%J=KW:WP+3^$$?]:\7J&S7*E!9"XV>LE?RB92_!Z0%
MH#1'.CP2JD")G/6@RKP9Q6@(?U]%)9%1,UC(T$>1X8=T/F.O9+=55UL9L",,
M#Z482D>("T:V#,8VJDH?^1'A4EFT0A$)4*T)74G&XBH($Z5 E_!$7.3Y(=2%
MSNH@32>GPAQ4;.2 4<EC0M,"?B^AM0Q8#I!<Z RCM-7&RM"+XDR*V0BV(CZ5
MNIUF*\(X]2O;OF9-29IXZ ] AY#<!.4;HNWQA1$#JULN?, YV0P(#UC":U('
M/6X)]*AJ+>QOF7:XEK"OB>:)BT.5%*I\-5I';0B'#D6NM!B2U".#&2+36(H(
M8VT,(:'+;*=)%.I614HF"^-(]D,ER #BV*OL,ZJ%(7-)=2.FBHK2<26>_#EQ
M0>I1S@FMHT=9I=$4BU=E^IVV9Y0%!V-+4 _\*)$BT4][!0P9&*V4)T(;QR42
MFBX2# Z,5(7/7)>[EAOC)W'ILL':%XFJ71DQO9(DNXH+Z5Y.2BT#U0J&Y)EY
MV*:2:P0CU+0TZ6/+K2R4\Q%ZIE*RU/C5ZY82S:MG/U+! -$4ZJB,?VGKD2 5
M9#\ A?%&YU= <OEKR4ZK9P(J35X/PYIA/IS*(@"C-*9)99IY+=.KH<IH=6G9
M)JG2#":U6Q^!.= !.%["%4*=6*=BE<Q]']B<%T;?#6-;%XDU!<NJU+=>PT('
M8?ZP;28,*:5"-,HGRC#PD%7BJ%,VER*(A@KGCLZ%8 QTP!=M1<6QE-F&$\8<
M3@%T*XZKQGC#.DK%B01>7*50OL+R#!.D8IYI2A8A?ZWV5W+PI9.%JNM%^)'R
M>(GC-06P-SV"[*O04TF"I5M(*=1+I3(9BR1^@3!7C3TN36YQNJ_0"G3GNC9-
M>JW) ^TI3NYK4])-XD(YBB7DJ0C:-&2_ *604TV8]X5:N?O5(>!Q]@EPBF14
MDZ*J"0HTL&IEKA5,X8I<4B(B)%P]:G4GV#:0E/Z*6'AF9,%+1WSY/$DLZ&X7
M$5J/I2I[6V7TJ&L:1A*'OBR(^#494FID(+X)W)6@=T10#ZV:$E:8&6;,&-N0
M@N(+RQ)Z7Y"$J4I!J3J*I,5Q0L,774;ZE23C-)I9@UB;YH=Z60Q"TJ86X>:(
MT@HQ;8ST14'3L'G063=2=:,:Z5(UT32!26/B>4@P:@M7T+"@^++Y(#ETR(L3
ML=3P$Y7@N$F9M"XL-OGJ[>2H[PB$;0^QY8EKO;BGIJTW\M*;,0H1!D0!Z5?1
MWIU&N]4RG2!'<1E3K$(;9H2])LI!KQ S'V2IY'EJ[A8!GF;6VY3YZ(RF1 "%
M(T+>#<L>=!<,"])KP&3 7'\L*9BF820F8#LT 8=&M0^<UV<TI@M4TU</0+YE
M.%QXB7@^D=[*1>J^M,[>'XM9QHO/PU<X%3\*3LAXY!ONINA=D\-63Z1"ARL1
M^+S=^NG7]7I+[UM8IQ,\S>4T6@V%K7^TVKFKZQQU.DIC,2*1RE!G&5K6-WVD
M%MU2\RD'3%XS;S^)8XP)ODXFP'[ ICF'>U)@/_#GWO%Y\\.?\-7Q7L-ZPX!5
M\N*Z@1YF#%.\%;KJ65* U&<%_!6"?))6D>F.)%6,\L^HC:#(7E4QX&^L:E8N
M:Y7X^P/')'VSUJ"*76%X8:-2L\=\5?B4"8S*^3?S.(4/YS/8HV$P7]<LOI8
M#7O:#7HDXDTK <&W.#7:W/H@%,'\F'R;91:(<"9@4DHNLWB$#G0]%XD2$UX%
MX S+I2K33FY3!H77R1CF^>&^C%X^EZ$*^$8;?A1$Y"ZY<H7!FZCOOV?T1APQ
MEW7:<C:--=,1YAHF2<$!>5:M,I7+^)S6T:)X:9K$LL]!N0Z'^[MJ/II%J;E@
MNM!LMIMQ;W>47#W6>J9UTV;(]IJ$4;,+&G.5+V'J8%;!:^3"NTT(&Q5<,_G8
MAG45,@)?C[\H9]&J14</0[GH#7J$M $$O9"@PV) N]7\TR0M24[F[W\U%HE-
M_SIH_BGB-ECL@8E,XMSH@(BZ'LD'45VMH$CC,!MC07*19H5L;'0N*Q#MSC/V
M'"^SN\_\YRIP8APS?<2P5A%^MH<=A]P%3&91F>?-O%@=/+HX2T0B92J @3%Z
M)ZU0T2\-7=VZ,$Q4 6!0IDK]8DIX!AK5B6$B6.54Z&H8X1VK[OF/;W+#Y%3H
MM27[A]3_9"8])>L [3#I"0R7K%Q9,1W0%*A>1R7/$1X])FEC!R8!<ZM T"D'
M#\P"7V=[$6O)RHPJ#(\BVRAB##SK/>ZI09G[\UCYPNI-7SCH26QNO^@-@*B,
MB.5'OHGU!Q>OO?GPZO):=88-E._&TKL61*"NX%H_'G18H*^@) 6P4P5)2T!
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
MN,3/0L>A,9IG:C2-$#>+GL'SA7D9B4$Y/;>2T:C(%1YL:FYK_3N$WX=C]RZ
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
M< J ZAG5*(%$D_5*/YI2L3E50]#$F(W8#2X;E0V&$]'D);UJ:_'@[C 5S6,
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
ME=_16(BPR(<8:<J,KO)D<44"FX5O=U=QRP#+X"EX%+<'<R7-W5!.:\)LUJE
ML"R5&?C'D#-3&2M7#[("\R\*I-<4>9J+#=!AZPKN4* ')_3?5 *NR5(.:#J?
M#]D]^#%%3D#8'&_L.2 6A2M4M76DA>_BV+5AMZS7[9]Y?*?HGO6ZX.YYSME%
M#!8&4K,;WN2YBI RF9;</@XK%!#+VF#NYHB("0?3*)U)SJI*5P'7]\_/^7,V
ME7BOR"35B:!8ZJI0TM5C*H7;7(S!9T!DM5&]S!W]&'Z#*Z$UB)U81V=?JC+M
MFS##Y=H\GZD$7NG!9)LPA\M\R)75U>4;&6Z"D;.N#?R)UV9?SB6P.,_2,39H
MRTL;XH@=J[N1ER3W5'_*F!T=KYS-08!B$P9U5R 5D$G4K@[WJ;D%MU2A'Q#_
MU>(-L6D#HD0IUS"%%:(CTZ.6*Z(#!%<E8!8#L2)59G@"HG=!S3(>6HMISMQ/
M[;3/FK-A=::DDSH@L+;_Y8V.T=N@<F!9!A..H![=:DQ"H<;(0E<]*)CQ%$[!
MQ0LBT Q4,PIV\,*4[@QUHA%-VI4)5HUG[@>:NP%SDI_^-(V&T8K)PUH;B[9J
MOU#7+J<IN0JZZ7;$C#61IP68<84F.4,WDV-PKW564'"8<5K!M1&Y-GKP1YY
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
MD%1_AB8F_*/?[YR?]CM'IZ=!/@5SEJ:W,@HXPO!,#<GBG>J8SF_E>P'!Z5G
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
MO63 $TCJ$3AVSPS&=!>VBT$>Z6.XC0]^D+!D*ZR#&W+#CT\+M^J:V4T54\-
M*6[R2DZ'PM6I\3VTP;$OUB82B\^&F<#H>,I>0+EHL'7$ #'[&/P@HL&@*,+
MGXRG\!7C& =HGDD5Y+#,\.O.0_EXMIAC6-TJ09NO*_>+N;]9WHV*,L#>@WH'
MP# M[M5\:3SK*6?A(,6D4L.;XABTBMLGKA5IUA*><,CV%84P2KMX\L()*;P&
M!XV@30P'D=V_,L!F+O/E39)%R,G MA2?> [/8*?A@._;_G5&N>?X"[Z^QCDS
M\8GJ+A #:Q]([SL.31 ^M)33]GZ;36-_]+9M_YJE+3$9GOK< O)'K]_*Z%U1
M+\I.*!PJ\$X[*1%I>3P?J<H838,.UANQ4\-" 0JYAO>P$B0NWSCF85^D2=H3
M);[*G^59GSK8R?B.V+$(K6!X7IDKT1]F^9!@,AC;"1!ZY6-IH8)O!VZ.& <<
MF=KWL$S_!TDZ]=SAXGVCSSQG5A*,MGBN<!DYP## @36(<1,PRI"+31@92A&1
M&EU\>+Q,+:BG%IA-2RU8)WAUR7>*:A/D2P2#.IAQ!19XTL<L;?+ <9M71KIV
M>93+E"X\D85^0N&M!>=1=LMG\ (Q,!B& X"I'@MO5B_B MQ2^IUA7EY[MEAB
M(>%! -J+BM>4QYZ]O%XD6==GTP$IP*]5+R#38[$I2VQDOQ;R?4%#5I9XAGPY
MN(#*Q]*"/4<(*M,KSCZ>EW"*]", IV >\<\PT"=X_Q SBAL1[YLZU#=\-5@T
ME'T/3!S67PXMBP[@,H((S_WB5M3$C\$R8=>%S)O3VX;]WXR$H&UK_\TL8SXQ
M&&_=86/A0?Q"\7F]_'PUD=KGR]V>3$,+F \W[$_X@)A7B@GB3%NA(9(1;D<E
MZ:A!V!UBP!(3[. 4P5)B;6K"3 DEIB6$=E '9CF;+NY'0 =WF*>FM74^!:UM
M8FE\CQW 88^9+>@^UJ+(8T@]@;_M1Y3<+)S%=,4!7L7BW6NER+ T!/Z,R8<]
MTJ4=M!#@L_=)=]A];&D$EQAJX(E/QLD]_%OD\+':D[$5K4;+EA.-;*0(4WZ
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
M\\ 9 ,N4KBD^RQB(LF1ODD68YA<Q1.+EP<.$?P??43XNK*UIBS=O%]Q_@W3
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
MK$R[TB@9LMBT:\Q#@D[UAHYR[HXN.L:@>""7BMO+8M\6:-&U*;QI) @>H7V
M 1'0PD?%)I]/S:E^/A;:ZZ:PNYPB-:7;B4(X<OX[0TPB'3F>(Q?0-99OA10Q
M)T&T/2H@">\>1",FX8)?IV)*9^'3K.!5%,(RL^E2B7'LTQS\6N-]CHI0V 0U
MT01H"UECB4^C0@V3N"-95 EW144W(N!9Q5\NVANRR$&QKC4B'P8E]75]E)VO
M2C'F.1K#7L(2C'7MOY6"<9WV!!_>H[M3$K6+Z$NU+:,0,QW#Q]'Y;BSQ;K07
MZ$CW=M8C2&O[!5]IF[\B$WW#L;OCC/8_+YU^ V;.@JSW+'P$!_X?7GT96#-Y
MT$[<.B_2*8L0" L:C>@4\6KQDZ0@)NWB]4,FKIG'YSK"PC_6/(XM$?OF"-'4
MK+Z=K5JC."(^%A5K/++N%4FC:!HVNQ<HADX9#VJMSH!W;F*RPKN[5QQ_([)9
M]"EC@:2\S < ?2VVL))X0;##DBCA<1T6IQ\P08;%FMZ-#NFG$F;HX65C54XR
M&"/FFM\D*-TZ<;W+,G4J_[':6#XST?4 QYOB96;Y6.X\\E&SE*'B_$18AR1(
M&XKNL@;C0B/<.RTZCU2'\ GL^8"WE=@.A76&PU@#9?TRM+9G.,YCQZU5WA,@
MQH]\U3<MZ_&3^N&A=GWQ)$+,'J1K^L:"@_1<WWQ\D*<LI#QDICF+ZP;%C3S)
M:^DL59Z'.#RCPTUYXQ'\[TUZ5Z;==M,?!5]33R0QE&Y_#<"XU2J$I\B?*8/(
MV5AF<A$Y'#,=7Q -F#-,:+RD@F.M8;>BBS6C#I\:%%CB7=5&C+^Q=C@3N-=)
M>]<J8\IGO5>0A+ZBN4?9P" 9NW,7D:M]EBO*6!ZG.V6U/K=)/F)?UL!SM'\X
MNGJ@#,NL#T$27G*FUDG@QT<DN,>1R/P&)(R1";,,CGZ:\+N-FOYD"%D\?F0,
M5=U77F<2GCY%]IB)[NDU6Z'0E\'#N$W@MLT*CH_YJ%@*7)$S-A)$G%RJ5KVJ
MC^,!WG*4/)!U<DE6-2?<&;!V.=;@C!@SI-!QI9HJ[@G'51XSHD96L=P7QN;>
MZ53NK8B5/"@UCDEZGS!:2N%6]^H<D+7<AZ41]L(;GDO76V;GC!RV14E\&Q!'
MG/..Q3;V-GGAX;6G%AFPW;@8]OL=]G=,A3LD ]+(=6X,SD^M!.9ML>H+&<%"
MUCI5(IFG+-Y9I'C'\\0AUNW-%>\P).>%VN+"GZ4G\V1=@G@G=W>QTBS-V7MO
M^1O:V2)%P_4G-CGC.8U9'V<'&XUA^X2E_)1TKK-3&$;I6=EH9@#7++-V3K5B
M;U2M^&WEH+(T42X.DYP470U$7R!1$\R:/X"TU$J$\0N56JKNW+?P*NPT[3UR
M'%YE;HK3S!KY%PJ<MS?KZ*V4L68.6=S' '!OD*4BX_8+YLU&>"GZ_)X5&Q:U
M9UXD5<CQU JL#Q# T0;_JXI1L1X_),L2M!F&@U:-_03L1IK]2$J.G2J'G:6C
M)WTR);;TOW72F7I-%Y89?X$ILRQ^Y7](M_\K@'1"8^7HGH9#%G4[P[8PF/P*
M;ZM^^A<&?*=_M4+IXJN_?"G[]E6_9-?D%;Z+S[YIC89W,90G"DMX$GO.[HNK
M7KQ\LCB1&I]-6-_9?KFSRB^CK?3.AQVJZ"91=?L7^J:VRJQY'T\N*"\;]T/F
MA^J^:;UIL]9VM59UU>;QT$3#%A471-B@99.2\>C)',MWA]D(%4'^9*-%D1[-
M^LGQ.$O-3'K5#=:?B5)3R+7V>SUD$CKG)B><.Y$7U"EPC.>H5V>!?Q*.P28
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
MMEB$2S*A*X#F4"4-:6E(-QBFI2&-><YZ^_CT0MK26V(93I_AOS^<?U:.>_F
M54$?B@:B.S'A1IG"Z]O1<5"J3717+4:$HHN#WZ31N"76SR-0=$GNTU[:?5".
M[@>TEZ-MB%3%7?(R;&K:"C3*_MM.;-HB,^E@_[,TD[9:J<["I@/2"8<=[N9^
M3GK? VQ;*ZVH;9J@M*)J2/5Y_X.THK9:Q<Y"JL\DH)TE85335D):4Z_)FOIR
M?B2MJ:U6KK,PZDM&,?-<FE-;/$%I3M6@ZO#HHS2GMEK'SH*J0QHGO62)0-6T
MY9 VU>NQJ22A\79KUX,4!J!\(=?8,1A6G(2,N^B0#(B"!UKYA1'-#@:<.N:8
M4;,K#-J0HPA) @C\)$*:HXI71G^SE3QQS<&*B38'2^XEX#TU2M9*X.\-_3.:
M"E'O1S#2#,"!28B?P/ZQO]:V^7:8#Y)8]&5(>A$ RCO=8P=J+?O,5O#_':3=
M/NA],DBSAU&*;]G 8E8#"WUTC<:Z22A)]'][B:V[CA'J5(O<V'()#9S(L&*3
M:)'N4^)8?_ONWON-=KV8?F;9&KQ@I5]FB+'UO3C^=+I_^>?YT<6<<E:-N1 C
M>\UBI'P99OF0<)Y23,7.L,EBQGAI&*-'D0RHFTJ:*;K]2_2FS-JFX3 #N:!(
M?,;);8J<0-TWK99X7L$&HMR FHN&G0<E),,<0'IPD^3P^WZ:L;<'5,EAX^ 7
M\+H$WA[0&]*)BP;1+/>+?X ].:/#'GR+/9 ,!S=I!M..VL]>^1%,6^MQ&;7;
MU]O)Q3/:GF\MTLG%:7OF"GJN>&W'M)?_6+UM&$OICO(,T^F9%A+?E_6KA.?Y
MCBN>U#(HES_OGYPIG\[/_ORB')\>M)_C)S9_=N WT'<[M%L5$:+)&(GG:9/8
M_%E-V2")*UN^IV_SMU.*V>0>/R/NR*T9="5A3@JX4$FD%.-K_@&0F[_; HXW
MG FZ7\K_D&[_5^7@)J'U'CAG<9R$-)LCEC3;UUCZ+AESN7=CN[3UWNB<;F?E
M5Z+/&2 1O' M ]I)[PJ7,@:O*KV#PZGTP;5,>SEZGL+K%"^KN:\8E4UZ^-,D
M Q>V3T(^"/QYRGX.MLS@1HG( WZ[,G# N&EOQLN#\]W6>&CEN6Z>"0ZBOEC'
MSL?[@-K6?/[8\_J VJZ[]+':\%A[;E=W"O05V]A+62'=;&WAS(.6J[ZX&4>4
MZ9>-%_!2,AAF]&70O^Y;J!?>G#9^6RZ306>>+9G[2+[<>MNR+9YKFB\SXG9Q
M1;9_FHN(Q)(2*4IC]SGWD/.M#7O.NV0 +PJ?M($?J_\&][=8Q'69Y(\-Y_SL
M\.C\^.!?RGE;^;!_>:6P?R8LW'7Z#^<IC"X)O[,AD<'#E'KS#7846E%7HF:D
MD1S#P>A3YJTH'U(DLSBX(6"><T?N$%R'<)!F+P.!L6MDW67+N<',BRUZAL36
M;<+6WX\^?CPZOV*!KJ.ST_WSPPTCZR.1MT9@:W-C6BO-"9V._<V-W,$IQG22
M7[YD22],^J0S^9%YTNJ6 F;;D46WO-J'IJ8:+BO,NOI2D2586IN9K%3^VZ3\
MP:GZ#34^LL$=_7;^^:@!CM4X0=U6:O]52&ICC8#--07^"]2X,MT@^)CT""A^
MT/NE0: H-6M@\O=XIU/]?C\,86T&>%$DS05I+DAS09H+TEPX^W!T?JE\P2CL
MGT?GBM*(0&P ^\K&1(:UA(W7;BVL')6VQ5I834#8E@%A&1#>29#'FS:$TZ-+
M] TO%:41,'^4)2$;U0#=PX&$>0GS$N:;]8S=A/G%0?WT^'1?.6AC==+9R<4D
MCJY/-C:.WJ=)C["ER-*TFTOPEN"]"O!N.D#*()8,8KT&Q7=YOG]PA7#_^]F_
MCD^/3IO@/UQF)'Q@8TJ_PR][4@=)'20=B&8]0^+H*(X6M_-?V\J7_?.SPP;
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
M57,C'_[B:UX8[KW7]9:OFRW/GSR6K*RE*2I6'KMM.':W1W^; 34!6#S5)#0
M':N[<  =7=7#(/ TSS4MG[)CY[E62W<GXV]*6FVU0@;*(0UI-Z"98NHM!5&+
MG<OQG\*_X93T*3SC!^U4Z<O@=LL >0/ON&H"SEPU&1%?KE"/76KY@6X3 _FK
M:>2H%G4=E7BFI]*0@*FB>9IKH#)HZ;Y,7-XUD5W6G984V=6*[#B!M>X$/J61
M:N@!B&SH^JIG!52U/8>&;F!3W;*8R'HO;MW3T#NL9I)([L- <9%)1^F3)%*3
MGA+RDD*9T=M8<Z/:M"^P9\<]401:@S2)9LM#LS_N)K-JJ*892"JB:ZZ&S$*^
M&I @P'MYR[!-TP@=[(%M^"W/>'%:C4SM;9@8+ZUV2HKQFL5XG!LHT"PCL /5
MT2A1+=NT5:+YEJI1/_",("2!ACR0AM4RC"9EZ+_6V_[+C))\F#T4]_UD -//
M!QL+)Q?CJ47V9#AOB1)[_U0X[_337[>GEYW;;X>=[U<_O]^??CIY.+F]@?7X
M< /KI)WANPY/OW_K?HQ/;K__[0:A9L>AKOI:B-FPAJ42SW!48FJ:3F,:^+KW
MW"NSI46)Y6G:LM/DFXX?:(:OTL  *U"'(^6'3JQ2W[,#!UDF:;CWWC-:SK.N
MR>8.$LNP\'.4QR\;<-1&1%J&F58@T>,]#BV/.%X<J:[O1*H58JZT&T8JU:W(
MTTT-D)I@3;SM3-;$OY%!X:T5V&6Y9%)@5RVPX\4-L&4DTD/5-WVJ6I81JEX8
MZ*JI$]NR@IBR7+H&">SNAX3/Z8# #R.%DJP'0Y;<#LV-!!=[=22V:C\,A]UA
M!W.&#VF<A(DLSEHF?CU,&!S$,Z/ -R,UIH2HEF/%8'" #^!;,0&/P-=LUAT-
MR\0]2>JY:V*\++-#BO&ZQ7@\$AQ[<$2-0-5-&SN4!IH:D-A7(TO7?<^+B4/-
MO?>.:;8\;5DL\0V*!#?8&JF)@I(R_JDP[?8S>D-[>?*#*ITTE^P/C0J!Y# Y
M^-,4IL!B(QFGS4%]&WEE^6?8RU,Z.(LOR;T$O"4"WB09N1%Z?A107[6HKJE6
M&!'5 ]6E&H$1^TZHT8!& 'A>RYC"324C)=LKUXN;+%*NFRC7X_&4P-.)'0<J
MU0WP1P@UU<"W ]4U=!)K@1^&%.,I7LN?4B.Q50&5F4UV9O79:7+WOWPFE\1*
MF@#6EV@E+<#&]Z#)Z+F!L$V=.N2(;;.$Q27"XA2J<^*&KN[%*O'A7Q:)J>H3
MW5==S[5TRXEB0_/VWKN>W3*=927L/1N@-M4-4*+!9J,_$@U6C0;CT1Z#:$Y
M;#6.?3"2/&(@<[JK&CJU=(W$IH6-05W-;CG.LH*V*T>#14-!8F#\83""\;$]
M>^#-C"-Q.ZO&6,YR:I9L=RUS2<>1>&W[.!6=F[&)_WBN@[*\1=EN5;6"'M;[
MO4@JKI4J+GVRA6 8$]O1/-5UX5^6INNJK]-(#?38TCP?_L]AA:^FYK5L;5EL
MD$O7$"L._4GXE?#;+/A=0?=P";]K@-\QOX$XENU;AJ/JGF.I%H5_>9%NJIY/
M=$H=3P]=K!=J&> YN-:+&S\V!7Z99_%V0((.+9+-V;_X-(+L[?O13/1:N5#M
M12$%@<CV7O2U%\JUKCTEV 8C]J54(2%>,Y/> _*V]-(!S=OKFN1JOB9F:!EM
MUX95Z*<YJSU\E]$.09:97^^2:'!30%OMB^+<:=572 !G;#B8_947;-]\/+ES
M;J3ECI5(U/Y]DU4E;==4#3)*OJLDAL&^(YT[\I#OO1V94S?IJ6-K.#[]V?OP
MXDUD>&WKKF.$.M4B-[9<0@,G,JS8)%JD^Q2PZ6]=\_<V*$WNU$W8[Y!NJGP"
M9.LKQ[VPS?SNBV&0)U%"LGKKL&:-^R#M,2AEF2>,AK4+@\B5-%;XK>:SQLW0
MLQ(IAM@P_@[IY_1=\8=?BZYR28^-AWWIUR[)KN'P"3G$@S>&UNQ]_-?B3/I^
MV[--/)8B("1>+$YLFYW8,?W#?V?9;5,W9OY::^LS?_?88^VV9OE+?ZJNM1W=
ME(-=T6#MN1[[1-SQ&>3L3WY4MR<^.\57XC*W3O]@ D"82KBB)%..>A$=+=U[
M#F_["PJVF\!,/VHJKB<5)NDI@YMT"(^(\I9"[T,*5F\?EIZ55RJ@BX: XF_F
MKIU\3G.!9QCB33RP& *<)^S]HGO$G5HN72[7<Y9+6TK/BD47HADQM%,*0R8=
MFB_6).8Y:[!0/Y0&+')#NLO(I99+O3U+O:2ZU.8!YE_TFH+WC1'V$](CU\P-
M7T5)ZHOKUYJQ7O-?TDR;UW;?LVAQ[-B^J\<>,2T,C<51[-J$&';D.7ZL_WV(
M-JZF:[HZ;WWM#]H;TH]9VCV %^$0OB:#FX-A#HM LZ/[L#/$Q=O/<PK_'VU1
M@OMW<0>3:E>7(?SOO//M]KMV<GNB7?T\UJ]NH^[5UV/CV^6WSNEA]/U;]_SV
MM+J#^7[:O;J[NOW8A=\E9Y?'VMG78^OJ]L^[;Y?'/\_P?N8PA/=]O#FY&+^#
M^</X=OLA.?F*XSNV3V[_L*]N;Y+3RP\=>+<-/[=.?\+<OA[=__OGR> DP?N7
MH\'I[8D%S_P[UB(G\"*JZJ:!A.Q6I!)"J.KKIFL1EUJ1Y^V]]TVWI3EV@PKU
M)$9)C.(8%;LN#36;>H'C68:G!;IGN79H^L0+8LLS&$;I!4;-53PL,6JC&'5Z
M,(I1(=5,QW="5?.IJUJ18:F!9?NJX9JNHP>A[0?ZWGM/-UJ..\EJ(C%*8M2F
M,<K6S3@P8I>$86SY-"1A$+JZ[E 2!]3V/(916H%1FL2HYF/4F!T5:![U]3!0
MJ6O%JD4-5_4-:JN:%M+ "72-8 J\8ULMQVP2@_6ZJ6_7)IW'O0B$ 1^C8"Y7
M?V$O]Q76/S\#V0)P!D.-@*WEZ99--<]R -L<V['!!#.U4'J(VX5L?TQXB)H;
M4=]P/8 R;&#H:K;J>4:D:L0/[3AR'&* AVB[3LNV97N@79-O4_<,:MJ>3TW'
M<F/;1Y:+2+=H:!*;Q%1Z5]LFW^/>E6?&,7C,&I)%1JKE.:Y*+,M4G8B8>A"[
MINZ;(-^&WK*M)O42DO*]%/EVPBC&]BM$,RP[!*0GNAU1TP-1-ZS8DI[)ULGW
MN/ZFL*^N%JE1H >J95BA&FAVH!H>"<Q <QQP3D&^-:_EF2^.GJR/QZ1([83!
MTL<AX75\<FVT+PUF?>D5N2"2Y*5!*B:R8\NEH6-$&C:;-CTG#K0H(J%M:H9C
M4^DB;I>*N9IP$:FI1YJM.>@3QF!"!K$*NB928XW:EA\'7F@Z6,<%FJ;EZ,L*
MT3>F3%8"QVJ @X;$MD/+]P/?LD+B>0$UJ4VL((PL,S8"Z7MN&W",^YZ!8VF4
M$&20\G6P3>- #4RDS@P-S])\,_)MF]7?F]@R;FNH8R1P;!8X#*I1(P KP[4L
M*W)"S_=<9.<@L8[MR@+IU&X=<(Q9'+[NN7"R-=4E1%,M,"K4P"=P[@/;C#W7
M<5U*6/MKQVQ94UJ=-!0X=O8V[B#-!UCIN;AW)L-X:_6Q<,/.XD]I&C%F#)K]
M2$*:7Z2=2 +;\H MG'"E#-MW0NI3U;8=,(O\2%-]$MNJ15TGT@(]C/R8 1MF
M9/K+8B22\?BF"/+2?1XIR.L1Y''7QK1B/?)#3Z78OLC2[0@; MBJC=1Q9N2Z
M,4NL]OV6J_E2C'=,C)?N@4@Q7I,8C^EC)W*H;T6NZMNZJUIF:*G$C2,U<JP
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
M0=8R9'._5W%#'\692Q\7T!9"?:1KLV3;=R'4I1'JE*T[J;),*2> Z$B .4]
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
MO23P]S_V[-%/<E8?I[FA<;'_^M3OQ>VKB7\Z&H5Q"5YND(X^3N=M)5%?"AK
M8TZ!2:Q *QW!*B&]Q5IH33:V,.\2*5MD@"B&PU9J 07)2T1R32=P0@@G,08M
M@P*&!05-=%+G";%<):E#JR188-85M"!YW9#<N%)0D+P\)-=5!!V],T):L"A*
M8,8A,%9[X([S)&!%;BRKD"S9W&%ZQ2DPAX[@@QUW>J/1:>X47)P#R]02_NSU
MTZ2G.7LV&)5PPQDIY_.4&F <<=Z: &F=.3 =+&B+'0@3K'<Z-PC*I=3%W))#
M,2>V#*<+U@$*3N?#:4W(1Y1Y*QC)4D$2#30)8#")Z2>;$!R12@M8<+J..%VP
MA%]P.A=.ZR(\$TPSJ@DD<4< 8S+[UBV!1*T2*>=TB!FGM$WI<+^0WR_K6J?!
MAI]#>Y6O+)/P*+P]50L1L&84\AL>9[_G1*L+$Q]H<?DL5IE[<VB&X8\\_<^N
MS7XQ*S5W)EVU<+G6IU K@:6TD*1[!FE!-5@=!*35TDJQ0$1(2A[O<H%;9%8J
M!N)6JGD%P<M \,Z/")84:<N] B9(^H-0#0I)#))1PYVG'".;$9QT@X+@-4-P
MXPI@0? R$/SV1P2;P!#C#H%VV4NK(P7EO82HE,0A_9)RG9NP8]RF/*VB%3T*
M_U:M0%6(83A,"M)EN3SSM?-W&_HA]L;_F$M16C$KW2Q]A1O0E&YI,/S\8CDF
M93WWS=>+<-T_)BM2>+M!WD93NI-#445!48ZN"9!.8 %6*0PTJN"5%<+D'N^D
M2V\(KKE[J^%B=6\;GAO0FPJ>VX#GFB9E+19)<G; DT8%C"L/AK@J^Q9S;ZG$
M.0P?=[$B!<]KA.<&M*C[XKE =D;(UE0GSP.6%B/@.L>H>$U!(QG!4Z%%,-11
M3C:V%)^N\/\@@%U_)\I+T^MW$MQ&:5_G<+B38:Z>/3[O=I+NU!]7/8##97+9
M8_"H+%E1^)%_\FKD8O][_3=I/?;BJXO5>)77XBK'K]#0;#2$IS0!Y74( 450
MP3A(@J &(X4$Y+!#*&+J>98<;O"AW)V&BO&U;7!MW']R5[@6+:!)+->T@*"1
MP H;8(+)7 W7@ F>@T.>212T<EYN;-&NE-/6V(+FU45SX[Z4@N:'0'--05!I
M526G#!2B'AA3!BQ5#***Q @;)!(AZ_1)X&H'FB]4A,MG76QG74&U:7V_W*.9
M>RR[;=+2^//9H>E_#*-.UNF^-T&JTOTJ3>ZH9VSOJ&J(U*VZ*"6-S[A$;:->
M1M"U+DF/KW=-Z?939FQ%^B,]>+\V^9,7ONW/SH_SL;R$SXMV!KE_7.A],?;H
MN\/[YEYPC]2LWK@U:[OOAL&,PO,P^7N[?[D6KZ^6HHC3#8K3;-K093P11F!
MO.IK&3Q8P@T$8X6UR A#6;:W=U%;3.[%1]9.6U<!\_+!7+-T*:ME8F@)VG ,
M+%%R=IXQX-[;@*P57."-+2*[7,YCN"Y@7K^HX5O\W074RP=US> E@PI(JP!2
M1@?,$0O61P)(:N28X<QRDT"MNFC^ZO'%,SX#0+?[7T)_/!CV'D?QR)9I"M=F
MOQ!0@P3$IU0$[8BDBD<P&,4D5=  QDN?I J"&%8H<D4VMNC-->2+ VUU4;P$
M%:&@>&$HKND&CBI&L,1@$.7 #':@D"&Y$40(#!F3UGIC2ZIN GA!<<M1W%+=
MH*!Y86BN9QAZX@@-&CS.7G ;(BAJ."AF*$^ 3A)74@JHZA(Y;;9K;8KA&F37
M37I(S1D1NV*6B@?1#,S1QQL8:#+])19G 2RT?3:E&=@@9$Q2?U(%) %&;)(N
M#&- M4QRH<=2"9;;7& ]7<*VF!O;!>('39<K8'X ,-<4!,Z$TPG.8)2FP!BU
MH!6E8*A'C@C,B*15LAQ5+3(S%D2W4TDHB'X 1->4!))P:P4*8'%.9Q<DII\L
M3;!FTCFCK<]M7UB7L^GTU^(X6&0%CG!B>OZRNL8D\G(P/@S#XD=8NA_A8C$N
M$WLO\GF?]OU>7I#2":-QGOHZ77;#JQBB=! =YL DSW7I<ZJ.DX19CQDG8F-+
M=/$-G3"*97)UT;T$_T)!]_+172_"X;VT6#%@6N8JV3PD#2,J\#K@R!R/R,6,
M;MV6A)V"[G:J% 7E;4)Y3=?@UGJ:@ Y"6@V,,P:66@1<!HNPQ$@9FU%.Y=S-
MJHL_8@;$[@^-#QUSF>)P8LYSR%ZE<:1?#D_##SE?Q5NQK$)_MP=6OIHL46*O
MIY,%^M?W]2DDUB")3==.EQY)Q:B!:".&I'HP,(8K"%Y3'QCV*,=(D*Z:JU)
ML7ZV3%198BI$ ??RP%W30[SB&%NBP#IC@0DM0#/! &F%F<1.&Y?+@) NIVTR
MAQ:(MZ482#G)6PSVFCJBD5?(20.&H]Q#06HPF%% 1B#BJ?!*TZKFCYHGV+%X
M/69*E[@L,!ZN])#'X.]HE[OCJG!IN*2GW3#.O;^O?ET2NQ;"4=^FM V.K.1)
M] 0J! 7F1(0D@B"0*@@:I42$B:QMZ/D;"!;K:,N0OI34BH+TAT)Z3?4PA,K(
MB0>+;%(]"-:@C1? 762&Z[3 Q.= #,'F#JTJ2&\9TANO0EB0WB:DOZUG63%"
MN<Z*1M8[F)*@2?HC4FNHUDH8S+,;1* V=5]<?S?(OP;]CYUQ&!Y7#8[FT3[6
MV$:R9&]'MHA<)ZW"/K.QSW3_HBBUQ"9W.<D545D,!DS:K2"U501Q8CU#N2%Y
MJ>34=MBV2Y4H8&T"K#6E@"1^E4$)P#%(8(EN02,6('IM#;:*&9E$!2:*,V(E
M$-MB9\0T=HL.T"2PZ[G9Z<R5"ELP&FE@%"M0EA)PP@?BO6(VG\*TR^2TME]\
M#PL!9Q4'^+,ZU\41L6Q'1+4DNX.^.QT.0W_\@VNT,- L##3=O0@%9%PD"'#0
M2;3P%H&.G(.CU&(7*)+$)=&B5:4ABK6Q+3D5=Q8M?@;A(F$TB>^:ZI 6E[@@
M!2 KDIY/* =K=-K>VM*T](HBB[.$@= \$D8!=\M.Y26X$@JDEP7I>M]3AAC3
M2H,6S )S$8.5)H';1I+D+LFI4#D8(*D3+3JT[^LXL(.A#T,8#TZ>Y$>/!D<]
MW[D$6.N;Z.R&<<>9T6'NA?JEYX/OV//K[732JGR9.YWBSE.T)N36N,J15NE9
M6J17%VOTQ_G;4>[;O'>Y3D^OEJE06X/41J;KQTJ5UPV!YUE:L5[FRI,4A'78
M<4$<HF9C"[-N6NF&;)VS\,LR#*%W&L\\5M+'QA:-.ST*6SP46]1T&RR("(D:
MP F3:\IA MHZ 9(;+IG45N D"#'=%4(6MBAL\2"*4V&+AV*+FMH4*2.,^PA$
MX=SQQFBPN9%5B#S1?DA:%4%)ME"L2^G<B>?+HHLF.L;>U9)2[M',/9;=N'$!
M-'MSS\9<TWM4Z;5/?ZW7SO?"J]"@\P$[%)<9>R0SMK;=IY]>ZR1]U5ZZLJ15
M/::'P3\&/_R#%D!\9<YSY=71_N#I9,K_.!VE$8Y&850E#62Q]N(37V37!F77
MZ;Y*W& FD%9@J(S O+-@2."@-/&>)BV$:9]-_FD+%B_>&F&Z<=M5P?3#8;KN
MF><21TP"<.H9L)S=:W1P(*-QWA+.0]!)'Y5=J8MKONV@?D@+T_TQ'7M?@X=O
M83@H<)X9SO6JAC'8JJ.)R3E]C!@&6G($B'-"9(*SPBB+\"I)7K^O@5^^]1K$
MJ].A.S2CD!6'DV'VN8_/NYV3(],?5W&]I>_2@RD2KRZ6XU5>C*=]7[H\+("C
M=J:;,'%K2<32 5>YL:-B&E3 N=6#,%82&;T7&UL4=S$K3=_7"=*+UR,*I)<$
MZ7HK)DL(%RH I;JJ%Q) ,>]!9/)66'"#Y<86X5TR5Z_6 NFV07KQ:D2!])(@
M7=,DJ*-:1JS 1V*RL0^#HLR (38D(8QC[WQE&%!RGC8([<L*;*$.,1RX$/RH
M$X>#X\XH[>O%:!/K:^UH7IFX6)(_TXJ\20NR%PM/+8.GIGLQ(2(#LBA E#HD
MGF(<C#<>N)%!FD@B4YFGNEQ,]V(JR8.K#>OF%8H"ZX>"=;T"H5-*!H9!)Q$S
MP3K7)*!>Y\($C%"I**4A=VIN(*BVP+IEL&Y>J2BP?BA8USN\:H>EQAZ\ENFT
M5H* 54B $]&K**T3EE1ESM$:=EUJH69QW3MAQEGQ+GZ(9?LAMOMCT__8RXT7
M+AJ_%9:9A66FVR(II)WD(H(2+N:"1@B4MDDQ0#AHRCP5N5(9+K;(M4+JXMT+
M!:ES([7>:Y4KK"-)*Z*MR#V.)!AM)!!O.4;61F'EQA9KB86Q +6=XOVO<5KB
MC1K";TV>#YQY*ZP!&IT$II$'Z_.9*Q!GP7EA FLLWJ@%OH(UJ0-R.@J^T^NG
M_UWF2LU9 V36Z6DSE;6C ODM&;M7V6TE8W<A%'=#UZ.TQDBC %X%"TP:#X9$
M!]A3JA5B6@1?A2M)VD"$=&M2^V<9SSSVRT='&8LK>%@HXZ$HHZ;5*(<M9=(#
M4227.U0$E*<"4#2*D,BU4CI1!NVR0AF%,AZR_'JAC(>BC)HBQ1C6Q# -)"(#
M#&D.2I'$("@(R04C2(6JYAB6\P1%+XLRFJ@(LH#\^G*/G]QC#>+G;JX(\F>O
M;_JN@8H@OW[AI1\N-[_Q'%4M%E!WILS3XZS/<[/@\\=@.!R<I2&..DGJL:;_
MN3,,7P9'7S) W3#XWK@3C<M5G,\?@S.Z+6&L_\K9NGOQ6;4"1=IK4-J;KC K
M!;?<2PN!B5P\VS/0E#@0/D9$M*(DQHTM0FZNI5':::TVC!<:MEI@O$ 8U^P\
MSB<V3NL'V&,)S"B6"^((()A3@;F6@;E<S%$5&*\AC!<:IEI@O$ 8UYW8%+&H
MC09A2026B[Z;Q,C HK2)FX4(7"088]XR&*^!PGXS"%^'DTE(QX(TA!4+G7_0
M<-6KM4AL5$AI4:1$IU0$1[P+U!F0DE!@RE,PW!(@GJ/HH\8<95*2K)3;6S,(
M-ZX>% @O"<+USA#:1B2$ <V93]*$XV"=\J!($A*IPL@(F=4#72"\9A!N7#4H
M$%X2A&NJ 4*4&I+.WASGFB"L!5@J!4CA$[(3/7OG<F&;FU6#!X'PVCH.7@U[
M?=<[,4>=2RQD]>!HT/\(XS \3OBQDRH8SISTQNFRH]PBLB2T+2UD];K]XCIA
M53TZ_Y76:3\MT_.T2H6T&B0M-IW^EAMQ!JM (^^ 2:[ 6.9 (B=Y/H$DQDGN
M2)QU0V_.DEBSNM!>7&AI@?8#0;NF4DAI.$;:@HI! //2@6:" M6",$PM"X9-
MH*U+<NLZ07MQ(: %V@\$[9JJD99.1D%(.J9SP3T6>0*Y$>"5L12GHUSI7(E?
M==4-)6_:6'#/]T8G1^8\CS/\G U6^<HR">OLB7K>RW'Q?3]*.F>O-'M:5FV4
MO7@U\<\&Q\>#_IOQP'TN!U!S!]!?TY44M>5IT:A,:V54[AVA0=&HP;J8?M:>
MI!7<V%)=SG0[+%W%6-T6K;&@^.%07-<0'578203("0[,X@#:$@2.2"P5HUPK
MOK$ENH+,(T46%+<-Q0NKJE)0O P4UY1!B;1!/BH@FJ6SN'(B8Z2!$Y7^RP42
MBF848S)/::3B=9JU^'KX&H:N-RF8.,HXZ Q.JNZPC\'+U)9,E>W1Z-3T7=B+
M/Q!2X9Q9.&>Z:J(67EK$&0AG(C#D+5AF<Q%%*XQ&V 9IDOP_?V768EUN&5H7
MFI!R"UJ+^- DE.ME%76D'",%TBF95'GA,Y0]<$\M=@1+'E%NBB#DW$T1"IA;
M!N:%IJ44,"\!S'7'$+&21A$!,T2 :6) 8:&3@F]"XN*83NJJPPGCTW:YUB:G
MM,^'4?PB,_#1!/T7*M PG%S4D2\>DF5Y2/X<#%]?37M1A.8@7#2M"$GE)6$!
MHD ZI_5J4.E/4$D)8I@;@J+;V)*B@=IMQ8#:&J@NS WR,Z@6P:E)'->T((:4
MCQ0Y\%A08"@D''OL0%B9>#@D+8C0+#AI7EPAZX3DA;E"RJ';(%CK_6:-5DE(
M\A"IE< $T:!MX&"H-I0'2B1GZ=#%JY%ETSY5I!7JS85^N295]$\NJJ9V_I[K
MZ?\C%]2/5Z4&YRRH/^M,M9F['U)?NJ7 [55)R%+@=B'\/EWR#$E$$=*YWY_*
MR= !@[&4 ?6(II65R(J<2<FZC/.&S%BM*8P]RWCFL6:O!5NT(^&I\,9#\49-
MB?-"XL@9!8VB ":9 BVXALBI=X&8H*Q.O$&[2:"?/RVB4,:Z4\;2:^D7RE@X
M9=1424\$DMEAQKS*@2S(@2920-3&4X^]$E4FE6!=PL@*<,;-Q?3%3,7T%UVN
MNMSCD93O?A%C<.,<_QB^ND/3_Q@Z0S,.G<G/54F.K!P_AGC(=E3=F"S(7GQQ
ML1ROTVKL]?-)E/^?&]M_2<=)?SQZ'4;C8<^-@\\?/.W['W]Q[<KMOCLZS4OP
MO#<Z&8S,T<NT3"?I&^G?^:UZ_=/@]TY"6O@<^UJ.LP:/L^ER'L9(:2D78)G$
MD(06#48A"91'B0A7QJFL.7<IFP[F*BG_JTL9BU-N"V6L&V74&] %BJPQ!A1B
M26FF1H!V08+'RAK+C<3(9,\G1?/$,!3*:)GUO'''9R&*=2.*FJJL)".(!@'4
MQAPHKB,HSG/%4BRQE)+S, F1$--Y9JV-+5W=L,K*M3A1JGH3/>JBH&'Z(7S'
MT&.(LGQ(I^%<!/<JO>[ )YH;YO*3S\/D[RO:NTZE$WHM%-<@Q?$I]0DK+;A1
M:>V%-L"\)V"=U" #UHQK[Z56&UNLJV_P'\Q(<244[/'H4(4C5IDC:OH242QR
MIRFD\T,#BS;]Y#@!3@W&43 CM,NE;Y!J2?A9H8=6ZDN%%%:9%&JZD75$IJ,"
M@9." #-&@E(^0L#1*V.<I3)L;,FN4G/K1J40QQU2SF[3ACIFW+'A8Z_?SW&7
M@]@9'X;.>3##Q^"#FH'MF&%ITTI., W,<)TV--)4"JJPI,CZ#]MWRVN9B^0*
M9S7'66_/II4=(D-05D+B)I0$&:-!4Q/!>DFYU\8I:I*R0[H8-Q5E6<R_;0$X
M]Y)%1S%5FK(@D1)88AZ1B 8)XF0%\$5+,07@S0*\[ME1&A$3+$BL&# I)&A-
MDL[BN.14BR3"QHTMCKI8%X"O&\ 95@%[F_@]8*9$,(Q+$JD@7/J@?<@ Q[H
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
MF:86R%I# ,B#]$93J0LR;[:!7X"9U]R#1<(-+RP%>R1(F:)/A9!QP6R;9%#
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
M-46<JH TH^ 4"N\# 3$*B3N3L24,^R\FL-; RPKX@@V\/ 5XF?<&M7)1!U[
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
M8AZ1$=07G!CB'<_AA9\$H2X.+X 6<%FKC-74A8!;:Q4'*F.8?ICQAD]-"B7
MB@T ST /CP8=>Y*#[[6"J[#I?X9@#WE _81XK7?_.>D<9WWTMO.],X3!SOJ3
M%[,MM!*F@VBXDZZI7-C83S&LX2\M\G?0#%/7G0S!I2BUIVG=D_ENNOL3&?^<
M'OAG#H[,2#=@N_O%GPQ.P; 8AMZ+$^EDT;L]0J,AX$^APF"/.&9@S"=R 2*]
MX,8FJ08W:W0P" &=!3.8/[VIPTX@  "(1\'/2F\E.SY9@Q<"'< ,[(8[T7R;
M[=^7"D&%;R &R>D&@1AC&:(O;N7?L?;A_AZG1@2B'-+88<1=$9'V7B*FL! "
M=I:**:*.\0*6_?>O>6WIWR^P!E-PLM7MC$8 ..5V'X AVAED*[:1@E61 KYU
MOK'G"26A*"R*DFK$N0_(>A53):&17 MOV452,+%IP2L;A:-AZ8'DV*!)(5FP
M_$=GK7W04:/L*YE> _F/#?FPY$)ZAJ--9@L6B LKP)YA!5*VD,YAP9P7/X7\
MX<GQ<;>T0<#O2[Y?\A6/<]Y8;6%<:,.XKAD..['C3/G]3FR9XW3PD6+J9\G#
M[T?X=!(SJ&R5M4G$O3KS<+!\L-[C>Z4+3"F*R;><$LDTQ$H[P?# -PZ 4"%9
M,ZY[XDM_%5ZA_+F*B">+9F:HZV K@9$S+$/Q<,=1_A>^!_;-U"& -R.SUCHR
M/9#!;$T=F6\9^0Y/_'[^P^2,8O(JY:G&HE,/IAWX\,/Z*,##E Z.P-^$,9C1
M^#AS+4]CFJ3TJGD^P0"$;;>>P\65YSU,[WEL!O!#^MI^Z(5!BO OO/O$YBN]
M=].:2$/UJLFO'9;A_TF4PJ\O!MVG,SU^&L)Z4 =]68#M?D/)G])QDQGX/\NU
M^%(5#;[<</+YNST?0<$8BA' 3D2<2H:4"1YAZ901H/L#8:L73OXR7^]YO_E+
M3RH99S[Z]7__CZ)$_CH<%\FVCK/ )]B<X \ 6WWTW4EY&./3]/%5R?<\.4Y?
M_-DVI<$)V)]:*TMY($);0["4+CA/P76_S'Z8WYJ- 3&_;3<)_+Q'2>$*L!50
M5#K M@7;06,:D)..6P>SR@O]ZG4?E-12\R$IOFX7%!@8"/O]OL\N0'D._K/%
ME=2 Z5_@0@G,G=2&1B^C$D)99XI([VQQO7EY>+Q)VH?O]ABH,F%\1)@G@B$*
M*M\03L O9 P'6[ "QU>O-5Y84I]R4E(F2S(N<L+ R?Y!:PB;."=5@2CD_"H
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
MI2LK_ZUM>_\[)QQ'%P4*@1&4U961240BJ:V+!G/-G1BUU06"?+T1*[YA3X[
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
M$6:&(\RO\5B8DDAH8DA:S!%7)"'#J$9)*>6(<)H;FD6&U;J0,Q97FPG4+U!
M<[8@^^H/4*)\B?(OWP0=M*261VVPXB8E9Q+@@[+!16$#927*OR[*CZ0YN&")
M^"B1)A! <"<ABG!:(2:$U5H)@UU8VY1ZG9I9E9$M07XU\BOE$%,.,4LYQ"AO
MB:5"8<\MUR18ETBN725I())S6PXQKSO$C*6J, XP_M. . D.<>X,LMYJQ+#2
MQ(-I<T$&.LWZGH)4*SK*%.FN?_6M:\7-JW>JG;7!.3S\'9H_!Y]FRVZ>G!6+
M5C;_I_AX\**N^Z_-ZY<N/H<?5Z\]=!U.-Y0 ]SKM])KY N^Z,2]_^1G_.&^&
M?N/*M6Z=.&P/?'.*=?#N9_V'3[GUVCZ"&W8GAX5ZLQU[E5H\KWSNM.W) P!!
M\%,(0?,S"7.W.6[_S(];>*<@N;89B3BHQ)6-3@::I^EQ("9:R;\3KM>NSFIT
MK][AU!Y%Y+K1_D VP2N^LZUS>]%;^]>=EF@W3]!(RX\VVL.]-]:'4[3K8W [
MUIKJWM8T&Y7_N6.4,Y@]N NONR=]>W+4!/O?ZO5BO[?=[/E6IW?6C76XS9^M
MCO_QZI!Z= 6IE]5+SP^.=WB-[OPZ/#X .&VU]P 2][8/?]2.0^.@_;FQ]W%'
M5 $>#_]I8-_^^\1^,V=[Q]7+VF6C6:T?L8/ZAW;M&([[=L !$CD\)X7[-P\_
M[G" YXM_+H]8]>A[C(Q@+SB*+DG$A:/(!&Z1P5$EJ10F5@R&/ "&&+;RP$02
M]4PRZZ5CW$KE>(Q&AL28(-HPOU:),$Z=9K/JG@$&[=;J6[6/NW]^VJEL??FR
M4_\R#D$CT/*PY8Z@U*#/GGZ@NR\ EA-3D,HX%KC27DO&/-8*#"R)P,0U YB7
M.7[QC1C.6G$O?6@"MXB? ";#J(W6,US_UN:Y_UU2KJ!-"<)><<23$,B"?2+F
M@\36NY"T&C6WA?7=[DF(J>R_Q_K/2I\B(0()&P7BWBMD%"- OGBPS%#E?1SK
MO]%QJ0GM? )CA2["MGD,2_</\O5&!#;>:G7.@7]5FKV*K?3.VFW;O:AT4J4/
MW[[OM.%I+OYOK]*\[OR*+7J_<A+[5X=9[\_:9\"&8JC8=@>(VF6!7N\>Y%2+
M&H_O?_'*U7,5C/&&KA4L%6[=LJ>]^.[JES^N OOF27&IXJ0_H)F.@*(,.5ZF
M)R,,M7C%P==#YF+,AA8LDY?AS.SPQD->LU'PFA'./?A.$&! XL&O\09Y\+O'
M+DOX!B=F]I?=,(K/_*IF V/ZHJL^]AW=H'I56H#@#4S5S)N ; CY\$UOG_G$
MJH)GSO\/?&.A2WJ:)X!7G3.X1.B-K<MXWAL-8&N1[S066Q3OM-/K-]L%\G[M
MQ736JN2QNO?@NYE5>K?)%VFL]&O=E:Q;!D6_Q;OF]I!IOIMF(\5R2EN5-WCK
M-UB0\L3BO7*0#K[]L]ZU(181(X0+)Z'2SW\#%_[Q\) SQX:8?T3QK F5>T-R
MJ2T5TA-%6> L."="D@H[KPQ.6K()0O*'DRB#,?]3,\4[$ROP&OY=..M>1-M=
MT<!\.)7":MNM5O5XA]0NPX_J]E=<^U:]V/OXN7UP7,6U]N?CPX_[<)VMR[WW
MHU,I'N]]^WI1K7]E-;I_7JOODX/+77[X\;!9O=RGAQ]K/PZW/S>JVU7^S^75
M>JSKK> _P\>_>?A__VX=TM9/=]R!H/_H'-I$U-K_;E:W#W!UV_\Z:._"O7?I
MX39<[_B(5H^_DKT/&G_'P?(42$#")H*XM!XYYRQ2WD:A7,)&A+5-(D83A>@Q
M0_(N$"^BB"HZKCPS0COEM(#+!:S)_;M>2D-:84-BWU6PGF G48Q6(6XM049R
M@XR*(4I,+<=L;9..&5(E=UAO9%)DAMOMI]YBOQSCV[.7!3QO9G_Q+_2,F7T;
M$N$ '39&P;%65CBPK$ Y91RL#D\ZL_](AO]C=X54 58$72[N*I9P[37%6*-<
M-3O/;S&D#>$(YWR_<E$[(XLU9<J,2Y8L4K;^VA>63=6HA+*5AS(CB-(I1<9P
MX#IYQR53R1-&!0Y.T$G5)TLH6R24U4:DV3@CFAGN$#4A0YG0R&9Q8>P,,50R
MH+^V@#*6,V9O"LH6I)2R# F$]V<]>(;8+;('(8+'="N#E52=DUZC>?JR/,*4
M[;$*>01'#;5) %W#CNN\D<MJXA2-WC(MI"[#OR5 M>I3X=^OPX\'%]7+SQ#Z
M?6X<7![!/3\W#XX_-*L?=^AA^T/SL+T#X5_K^*"E\?<@?%9:+X*^7),(>)[6
MFB+OB4@D,.J<7]O4STHC@/TH&SV1!"XJ++; $0D%<"56&E/FH]Z>';'OSF;5
M)"E0"#)+AV&.K/$>03^[Z*-GR?#[\E%3IQ%>73=BJ7DK9R)R@564P7)JF36&
M41N)"!8+QGT9@B^E9XZ$X ECF8BQ""<3$#?.(ZN P?H8M7 J<<]SLI>:=<:F
M7G$_E4;$RXCKF]"S6FH<"(8R 0[/O/5<&@GLCAF?O'"<$V]B&;\N(PZ,QJ^*
M.($3%H@X H,LD'7D-*$H2D830$0@N:0UH7*=8/[&<. WF@'_R_:SYM(P?OT9
M6YW3&"K]Z!LG\"!'S4<67_WF,^')8V:#,!H()P_8FB 5T8Y)25+@JHP\E@'7
M]I^(/$X;A_46M,G?QWO;_VY5:157*;3%M]T+>%]^\"U'(4<T1R*U/!/N"2!B
M# :)2"20(Y.+A0%&\@A='E0@@0 HLF=%L,8SK ,%P[$.K-!J3FBT>0,:-0[;
M4-K16[,C]AUSZB.V$KEBHPPQ! 97'E!@-E$I0@I"Y\%UT1/A$S'726>25H^Y
M:F:I9HEQHQ-W.+GDC8G"@=-)Y9TJ(]BE],R1"-8G;93G"DGO" *C4,@Z;U"2
MV%#*O<=>KFU2O<Y9.8E<PL ]*A'$!Q=2XMI+[CS35!GJ#'..4PAF31G +B,,
MC :P5MND9))(6FD0]S@ARR-0-TZ(Q41%RX&KS2:/M60P\!M-P'ZP/SO=8M]C
M*]I>;'1:(>_NC-W8ZY>3KP^$',(K#^@%087W$+8DS0W1)C@=&=<TJ#+D6 )$
M^_KDVMO#;__^ >US7ONXPP[J57QXO 77S[]_/:\>5Z'-#LX/OU4OBT7<@7H9
MJ?%(<HA?>101&644,IC1Q*&SN056I,HYLX52#2&L)TZK%* #L!4N6H.Q8-8&
M*U@HY\R6TS%'(@[M#2?,*T2\8XA;SI&1Q>H&[X3G-FC)US;Y.L7XC67*2Q28
MR<RYPBD8A8/B/F?_',,,.\989%)+7,Z8+24*C,V8Q605IPX1+!6"498@'0-!
MAC,NG+(< LFWB0)3UF<8WYNZBI'(/;M+.WW;RN49?*<W58'SI]MI!DK@+[GZ
M!/FAR?KXC0#YK/1%2R!?') ?C-,YH9.CDB&%G890B48$'R@$@9(1UE$="0 Y
M97A=J1G7+W@:"A>15"KQ9D7P!E#&>J<$)2QR*XRU"ANF)--$ 8,,)7%<1KP9
M)8Y2*@[1OP>4*585Y*U"+DKD=.!.2AUBT( W5*T;R4J\^9W2VY]BK_>@(.%<
MJS27T?R+ZR<N@ 5NW9C$UBV+*'%Z=CCMQWBA$HP%B@,TJ#6("_AA#03XEI/H
M&;4V>K&V*?FZ8>-;.A=4.+%,\2TI*"R JI6@L !0&"5OS@I!@*DAY9Q#7$F.
M-#4$2<D4BSA2KN+:)C?KYA[)BI4%A9EG_-Y,TN]VZN\DSB?M-_=(?.[!^!N-
MQQ? _&JQ7P+Z[ #]:(SE$>4%\\P@PFU"W.F(H$L%BHP2&QB)6K*U32+%NN:S
M4NZ80TFA^03D)?(L*?(L@%Z6R#-CY!FEDM0KBUG4*"8N$$]2(&NE1,I2R86)
MW'&(+XG*>< 9E]1<8>1YL]G FX(U4\F(+R2H+Z]1[CQ>*NWM<EO,S"D&@<')
M!. 5GFFN!#'2,&TD=HYJ+[B<-+AYHA#7SB_?.LMMMVI%5E>!=.R<?ZI7[];Q
M9H1S'S1%@HA"E#DBPW!"@5*9=%*4Y>UR8EU,OVQMR;;)E+ PDTVS0B4B-<NE
M>'G* B_),)>TC2XR/H2%"2*/$A9>%Q8.[L("=5$S32U2-&+$<1+(R*"1<I0*
M)15$)O%MPL*4)8MF4C=Z%0C<<[/A-QY=&;CT#(HC3=?8,ZBK,]L'6)B)O0GI
M[YDWRFH/Q+.:?+@G[U<.OO,<?'^-<7(<)8Z*!Z0PMC#X2H\<-@8IPJ,&6F52
MS/HPBJRSZ><@YC!\+6)>NAP!RA&@' 'F,@E4C@"+'P%&PB\.85>@3B,9\BRT
MIP$9[AE2!BME.*&4&1@!-%OGT\\%E2/ [=#O7T5)]&NQ@[MZ"&-_C^I]-$]"
M/ '?U<55!QW@NO_:?+QX_/A94V++A+7CZXU8>=]IP_TN_F\OKU>J>-OM7D##
M5'[:UEG,NQ>O"OP.C.JJ>'&ED[+0RE5$9PN@J)PW^XW*51ZG<C:HX=S*-9PS
M4O6:/3@&3NP_F/O/-_R/^=?]$O.8]Y8K"G:'_S2P;_]]8K^9L[WCZF7MLM&L
MUH_80?U#NW8,QWT[X+4Z7*N]3^'^S<./._R@_N/BG\M=6MWZSIAPB4F)DM$<
M<9$, G[JD!$6"YF,(!S(JN ;9@RG*F#(+?AEO>*?*J3R7,-XH1I]:1@S,8SJ
M>77_.Q<^Q0"QB^59Y3(2C;2E'&$><+1,))?DVJ;!&^.;*&\,X_2V0''7G@,T
M/=L67JCK6-K";&SA8F__.Q$L8NDB<D(1Q!TS2&OG$0Y4$04AK6>Y9H?>$(_8
M0K:!])C@UW,-XX7R.Z5AS,8P&(P>W!#O20I@#HHB3HE%-@6.A \<!^@*8M3:
M)MT8W_AX91<;E<I6P2KN)RKKE3Z0G&(LR?OG'MA+5W&V94]\S%U5G'!%8E!F
M+^&:WX"=+1L_F6K;Q^]G=?#W_G=+P<N-I\@88A!70%P<L1I!#S&O$HM 00".
MV".<96 I#Q+9]65C*Z69/,M,OIX#.$5-G<KU&T.R$7'N+3)81N0U<2&0:#$&
M,V'F$093F,F3[/9YUK( /E-:R_.L!5>/OGNIK:.8@:%@#3^D0H:J0FR1&R8Q
M#3KSW:<PY3[&.^ ^2T9M2AMYGHTP&'@"EQ)SAA'&V5 BID@G&A%E"L8=Y1F+
M0'?(4S;R* L&0G0KKU.!CZ#E^WF$NDUXXJ_3>-*+E7ZGXI[':5XXT?@LT[KU
MI#N#!SV(MEL_[Y36=;]U'=#J^7<,8P%$W1Q%"[$5$ J&=(0_@500XF,$VDD6
M,:<\BZYN=&,L._N1S@8H!P9+,*(RK]"2,0\W5".F>+)&.86%7Y'._@#'EGW]
M2%\G16$LMP1Y3(!:.,J1X<2CY*7C1!,=35R!OJ[!_>OGL?4S5N%A&A/J2OVN
M?>ZP=-H31)@&_^8I(J"7@.@^9Q2<A"@QK4"?%_[=.>N6??U87WN*DZ )!4UR
M_" AT*18(>9T@DY/CJ1<;5'<DP:;Q0=WN&6TOE%,T@&'/ 'CJ23HZ8$._,:(
M$#Q<)EM8\^3,#BX\C]G0D9L,[,-Z$5.0RC@6N-)>2\8\UHH&:,? Q,#TX1R(
M3;+)6<:# -L&K$P\>6TUC9H'R:WB@ENST%G7FZ7NP^SB(_.APVE3.&C8)5=-
M-]/'+:[SKMFWK::?X 4^PO/95FL^S_+HG6]::C#7;$<GK*&5GA/+2&PBL<8I
MZR!(C\I(YQAU&#X1C!,Q*2;.9_?"[X>&1^<0)/LD!/;4(*NU V8+O$<+8#O@
MMCQQ29S$N<SBQOC"EVL@*[QH2;SES[->H_+_.D?7#S..FXMSH ?@]$EXG+7C
M&9<LC210Y3 /01C+<5#&",TP=8:7CK=@QZ/5_>^ ZACK&)$W-@ -@3 #2"A!
M5GI,.0.H++1/'LE.;8P;=Z4R-MI/1 6&9LOIAA)@VJ>=7C-?[]T@<?XS_G'>
M#/W&U2K)6R<.%X3AFU.LZW5:9_V'3YFB5%.]F4?M6CRO?.ZT[<ETWBGQ",.Z
M]3,_;F&4@BA)/8G@+XGG0K$R4)Z8Q8&8:"7_3D3.\@S.:G2OWN'4'D7DNM'^
M0#;!*[ZSK7-[T5O[UYV6:#=/T$C+CS;:P[UW/YV;?0FLL=94][8FP1N5Q^I@
M!0'M%SW$/QBBZ<BTA)@K!."6@$%2Q GJ8&6!UACW3F,7;/+DZ%/.QO;J<(<_
M6QW_X[51I+YSA2+GU?8!.V@?P'=5<=#>P0<4_ONV<WGP[=_-&H7[YNM]K-*#
M,139NC@\#LW#8WB.RU;SH/[Y&/YK'-1K@#R[[' [-*IY%>SE8?.?2X_WMKZS
MZ)6T,2!JF$<\*(I,8 0E&-93A&^=IJ/\W 0LA4K!*29X"E@+:1331D?E.0P2
M:Y4(T'R:3:I[=I/JF&^W0J";UP24G0J=JC2WR4N#B-<1.A4+9)D@2"K) 8Q$
MTIB/=FKPA"DG"2/><L5@9*&).&.2U%E)BXUVZJ>=K2\[7RI/KKE]-'B\!VWN
M@ZI[:=#35GCW!:.*(F%C0N*1J\ T@U?C''LCO+-7Z=?Q^SS=,'?OPQ@F/'HL
MC8/C%1QJ%;5*F2!DHD'=QN7YL]S[P7;@)0\,]:_U4",+X9=U[?5@%B\O8DI-
M'ROP#/ SAS#Q?\^:IVUX/*#2(7:!:G>;G3,X\&K *8X"'\HM,KS*>N6\T?2-
MRE$\@8-:K8N*[<9BNL_G-,)@OJ\+7Y[GI$)>B'#:@ON%BKNH="!FZ@ZOLU&9
M_^ )]WG?Z?7K>2KS=P;8ZM%WRS!/SEE$!3!NKK5 A@B.L V& 390)^,H+DCG
M:8(!51KC>5+* IZH&*G T6$?]"C /KU.SH-!=DZ*]0=P9&$(1?FBP<HWVX/H
MJ=7JG/?>/0^4)\X#/@"83[[HYO\4NS9N0H!BZP<X<,N>]N*[JU_^",T>6/O%
MN^9)X9#%27^T;?<(:.\P;LB4=V2;2O$.@Z]OV/ &'C#BH53 \,[#KS>*KT9V
MW@R^DQ _$?+@UWCCI=\QS5]TYF,/2\0&IP]__=++T@TJZ7P>EDUZV7NV&EU9
M!]AU7(XC[Q6C(&+M)JA[4#=B0('FN8'QZ3"L\)#W=S"E /W*^\E*HLVA\6YM
M+)M)F:.77\0\XR*OTK^C&U3O[][!A&YE,*-;V0&D#]=#3 5&E]?NYJ675OFO
MY@F,O4#K@,OUQB3A'WFC:<QS18PK,Y-)=&)FM=E_]9N+S-W?7@.JG]@#O(HE
M1(?9I5LD>RJ=USD5[2NO_F9<9E6T8F\O(LJ,L5 .0)V$SGI7&\WG(1$[M7;C
M<K3>Y.HI][W7:@N@O"@G]80<_O4,P.?\3'OI:V\PM7QWR\.RZ)V\,'<UU#OA
MU<O/[0-Z>'QPW#@^K._C6OV(PO.U]KX=MFNT!I_M9 T4/*YW<G19^WAX#$<U
M]S[66K7M?;*W?=@X_/95'.;GH+56M=! V>?_7.[WJR/2]S9R2VR@*!HG$8\Q
M(FMCEK[W3*4H(E5YQ<=;DYHL4><MH$[T5@C/C7$F;Q'46:$M"LN=#YPEZ@K4
M(5>H,UD1CA)UYH ZM?<CI7ZPE]A@@X1@*I?Z\4AGS:5$+'':6DM36-N4XW7;
ME@UUW@ Y79VJ'(-==A7 A$'DUFI:UVPU^\TXE:+M[U0X<UDHW55G#K<JE(#Z
M+$#].D;CL%8.ZY00"[F6@.<4N2P%A8,GGG.)55ZK,"O%TF4IAEDZZ5P94.FD
MTSGI*.O15@IK@T8 I2$OSV/(8,=1"!1\5V#!"858:^F=] V0GE7)R%VO;[V5
MK)YKE:;?LY3*S+G.W77)><Y]161[5P):#\;XCTH,*\DQ\D()X#^6(\L@JO1!
M,.F2("FO"17K2D\-K\N7R?K-G7?F'*ATWODZ[R@O"M9Q9YU!7@J'N"$:&6D4
MHE)++V/>BZ^*BD=J5F6?2VZT).4Z?\^H;>9TXTNCT^W78[==(M8<$,N/T0UI
MB$W6,Q2=98A++I#ST:,4A;*,,YM<+AB]SLS4*>PRY;)DSCMSNE$Z[WR==Y1N
M4.(BYY(B@;-LOA8$:1L$$CHEA;EW2J?LO)B5J9@R%7,-$7];N,2U\&.9B5D1
M:G35;;? M<3/9^#GT3CY29J%& +200+Y880CJR/+N\QC$$9P@-2U3<;UT@=K
MI7.^,O4IG7-:YQPE-X;(%&4T*$&_((XY13H*C))S*4@ 4),G@CE9_@5]*T=M
MEN^!W]Z1\R@1OLI;608%OJ=DI+-IHUD65)VP2][$LMP9-L=JLXN94_\RGS('
MRK%S_JF^>[=D:DC))!\$PDXJQ+.0KA9>H$A(LC@ZPA5P#K4NQ+A\W>P+IDX.
MYZ]=*K4$U1)45RYD*T%U3J"Z?Q=4L3,J&I40X5D15!J,M,(.$:MY3")PSD4&
M5:SY6P75)0T_KLM4CXD)3RG!--U9=[64"H68^S7=%RS*^6FX2^.B:OMG7?CW
MM]<<J^U_I\0X81)!1@F&> H!&>P-4E(&3:B+7(XK;\Y@?)E0(>]QN;)T!AT9
M*^WF2;-]UAY&GZ?VHETH#0WT\OJ-"!^"J2&?UY.W;F9.>ED5[UIP867$PQ3>
MH%S,7#E+;Q R>Y4OHC?8Y ^[F"S-C>C2*DAG?1C8>'5HXP/MK+^&-GYG9)U:
MZ^JY='M6VIZ3<<V!\S\@Y_GZ6DT#]>NYJ(3-N0_OC/:S5^J>3+;H>JA^MK3O
M0A[O/FG;9<TM/UNZZCX#:3=#:,UHK)_,KV!(9W-1/YI!&N/I)ITX6;'XAGUI
MLF*"EWXRNEK\V\Z_&MH]F8A'@HVKH7K[[(6U[U8\<<%J=0@\VH>M:OWK9;6]
MBP_;50[GGN_5#R@<TZK5&ZV]^N%Q[6(T<>%)]3BT#]OP?O7JQ0$\V\%E X*:
M+5$[/H2 YBO9^_A5U-I5]L_E[MCJ$&.L@MXUB"8-D4V0"CD5+/Q@#")+1W#2
M>3$_4;-:&OL<_)TP.W'M/\LSV+QLF=RKC"=\-=?%E:!Y"S2?5?2YQ,I)L+(Z
MAI6<*,FH4PA;%1''4B!GHD%$^F18,%A+L$>^CLW4$V=3+==90CA\F6K-J\"A
M6$UQFA(.1^%P\L+H)2!. HCC:H0\\B0-E<C[3!X3"<AR9Y$"\BB<HYQE\LC6
MJ9G5I->; <05XH>RY(=O A G+RY>XN$D>#@NZQ4$(28$B0S3&G%".-))811H
M=$PY'DFN1$_7%7W=S19+B(<K1!!521#?!AXV?Y;\<(9X."[S0SBP0<+SL@G,
M$:<AR_QXBPR65*3@6/ X;]U5>NK]+24_?!T?KS=B-Q9EDDN6N/*HN)7[L83&
MV4/CN"2)2)2D8 -2CCC$!<Z+\!. I!!86\X4Q:: 1OZZ"FA+"(UO8AY_L!/L
M_C5YY?Q^.;__=@>9<ER9W;@RKO804_+.2X52R)3;,(%<D,"["9&2.>Z8)3"N
MZ'5-9R4O7D[H+].FJ^R&E6;[]"S7,&\.)<%+;C[AJM5EP\VO)V"\'EH4>G/G
MEX=#M]KYKQ)$9P>B/\9 U"FNA38"2<$MXD0(I FER#NKI0[>&,DR.:=Z?%'4
M6%W:WY27W[LO#;\=^8895;.9OK5FN>=X\OYY@TQ_VA99PO'L%8:S!P:R<L":
MW8!UCZ:#598#OT^(^:3RS*-&)DJ-E#(Z:4,"4SG3KM8%6\3^XV?A_*J,>,NW
MO[E\M?+5ENJ!I]B:?[/-?=8;%B?<1'U[Y^0#^R>?MW=_<8_^&>X*Q#0."G_E
MD;;2N5N)J%<YM[W*?RQ0WDD\3@RNBY1-0@ODBM*"EZL.5%GMZ#MUPD6=./(D
M><2A_9$302$@9Y)X%^#?K"FR(<9&] J85BMW<#:%@0K <_I^6A6:LN^GZGM>
M._\>/652<H^8,1QQ:RERAB2$O9(1)X]QRB)=&^,+)T;[GJQ7[$EX5O_3B"-U
M8&^*<QZDUT:K' O81+!(?M#_^*K_<=G_,^W__?/JT7?GK338)\1U+O3NK$#:
M8H.(B5PXQJ,4<FU3;HPG\4?['V^,;,@>U\$9^^366#<<:#C=4%FSX[33:^9C
MWG5C"P[^&6^D.O[S[D;YX>B(;TZQ#H* L_[#ITRQ>;W>;,,@5XOGE<^=MCV9
M;CR59*3);OUL=&]T,8XB<MUH?Z!B <P[VSJW%[VU?]WE"D 41MIP]/4?U@N:
M1FMHI%,'7A15% D;$Q*/7 6F69*:<^R-\&!C?NV!\QC#A$>/I7&6*T6<L8I:
MB"Z#D(EFC>(YT+7B.N^:0&V:_G'U 7I+ V2@_?&^TV['$Q_O3J@_HI9P?-;K
M-]/%0T1N)FI.BV.$CRL"G<=*P_Z,E1R'YSX&[CC&%_L-VQ\<==+I5RYB'X:(
M09/F::4L&%2QQ51$OM%S!I<7)IJNQQ3;.KI_SB3_J'7Z![%_U?GA.9,EO]]
M\_6R>OY=:@>C?'((.B*K@7J)7& ,Z<0,$XQ;Z<G:)GMDH-FHU OUJ/&0 [Z_
MMIIL-*F9VQJ,R18C$]N8TI_FHXZ6#6P+[*O?VSH)GV[2_ .C*^70CKXKS"E5
M(2"7. 5RZA(R5&$DA0@R2D:5]:\HA_;E[/2T52 _&)NSK:QH5NDU(F!8\V0
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
MK);VQ!*]O^Q%4<CD=UBA=WI<W3XBM>/]\[V/50S7QM7C*CS3AV;M,ORH?OP
M]ZM>['VKDMK[D21UNWJ^M_V5UK:W^,'E/IRS?U&]K#6JWW89W.O\X!N\V^6N
M.+C\BN\3;,":,_C/(:%D1-PI@ZR3& GNK3=**QO-VJ98IUPNT9Z3$H1*$)I-
MV;X2A%X!A$9GRB@31OJL&L.L0-Q'@31U'"E!M2:<:DQ\!B%,IIXJ6]S&M^5C
MNC.= GEF2;WG39.\= [EL;,*SQ1$2>I)Q$$!>;'1R4!Y8A8'8J*5_#L1N:[;
M8T73GENE;[KJ(T6U&$(V*G.:'[J"O2U?+ #H >#E7M\Z"4,)M%O%H/(J@58G
M1^O+,SWDKP#O5_6X!4!5:QS0OQO5.H!7>^?\H/V5[]6/6/7R2-2V=_G!\?[E
MWI?1Z:$= +5=5J4?CN&ZOZH 7O!<S</ZD0!PNMS;_@% V&C6MJOBG\LC]MVQ
MY!E/$C&K'.)64 0 99!W7IC(@C$L#48I\(08MOK%,&5RS3&G-=7<&VPLYRX0
M9C233FH^.IFT]?[]YZ\[VY5/NUM_[G[:K>_N?!GWP\?\XAY;?8X[B:LIR7O*
M*3[U*O.:RKPRU2^^$<-9*^ZE<1-=LLG+A5NG^.Z=H$3HA+2D>9TK%<@X3!%1
MP=@4<?3AE:8N!T4:QX45LX'TFKTB_9<S@H,9RIQ_&-8Q6\7)2K6!Z>RKDN$-
M<)/9S__1#6[DJDQ6YH>=;&9UMO-L_<[IY)XR66G>Y^3Q9C'--L64ZK/>?F6*
M?<WMK<J)TU6=.%V=YIISL:\7S#&VFR&T9L0G)O.H+\ 0NL AUBOG]@@0%QRK
MXCHG9Z,E&N?1*#,3*!AMZ8E3C8MO[]EI%(R]])/9E\6_[2N(L0SY\4[[M-6Y
MB/'/>!)3L]];,?';E\4]PP7[XJ!=Y8?U'_#Y$=SO*Z[5JV0O/U^]>KX'L4_U
M^/"X>MDX/AQ-0\*]#BX;K;UZH[FW_:%5J^^3ZN57>*Y=^'=+5#_N7M3:U<N]
MC[4?_USNCLV%R* EEB1KP1=I2,J0-BQFW<K((K/82[6VR=2Z,+/:V_,<])TP
M27GM)B7PE<"W.OHL)? M#OA&YU\8-EH%@Q&6B2%.3,X>B8 ,Q<Q((BP1O  ^
M&,Y6!?@6M*QG\;[YZ<X*N8O5U$1>:D@K"Y&L&J2-5ZNT.EA+F$'4Y32XD1P9
MP@AR-/KHK(S6X1D5(IEJ2OEE;*WTW[(0R=ORWU%*8K2)U%"/&,N3K%HD9+)F
M4@H12^X"YFE6A4AFZ+\+4HA9O/?5[:_I,FJOI^^PU% U*ZI1],]P[4:)3S/'
MI_WQ:MB<I<2X0!8[BCCT(M(B>L G&2S/2PZ97]NDZYQ.O6YV*G6'J;)!I=/.
ME5^43CMGIQTE%=830YQ3R(O((2BP$NE<)84ZQ[# 5!J<Y6C7#9Y5FJ/,9#PF
M.V>[77M2IC"6F%?\U>V$,]^_ZJDB26M;[UNVUVNF9@PE;,T<ML;WZ% OF!(N
M(< OX!J1!&288"@9'9W6.E$CUC;-.N-33TN5N8PE<^19<8W2D5_!D<>2&@)8
M 94148TQXBP(Y*C@*/+ !,&),ARS(QOQNOM<?I.DQN?8;PZ5!TZ[G9_-'K1S
MF>-87BX23W(/;9V$HF#H7YU>OWO=@]LQP3.&X;3Q7RUXLR&DW=H=4*+;[-!M
MO 8E8S(5Q5YA0!*(8^J04\0@R226F%%%;<PI$:'U$D57I8\O%4TI?7RI?'R4
MP>0BLU$*"PTJ(!110%XTDQSA:*QC+H*KL^SC1DY=HK+,H$P@L736ZW?:L0L^
M==KI-?M3U08I(["YTI?W<-%\NV_-?N.JW\HYY?F!UWC-Q10X-SXYY)WAB N
M,:.$1IYZP@1.3AJ;90:(>=WZNF4>97D)2NG%B_;B40H"8!N((AP99A3B!FMD
M+?Q(% <;F/=4B[5-N<ZFU]4ODRA/^V#!T\NLR=+2CJ)_;L5')4;-'*/&2_PE
MDY(RE".+BT2O<ED_/B+/-)>:QQ0HSHE>P9=IHKETW&5B&J7C+L!Q1\E%\%A%
M)@ER*1?W4D'G9>,282D@. @L62?7-@E>IY@LD>=.699X*(I"QS;BK/;F\'NT
M9F90.W6ZQGJN!.7,>NA-[*V<>:.L]E SXTWGY6 SS\%FO)*D,,I%IC2*G##$
MI6'(<:V0DOEW'WC$86U3D74FIYXQFP/@+R*;56)NB;G+A;DSWN]>8NY\,7=L
M E-HS4*R",!5(>XX1<Y8C60222EH94D28"Y;%W16Z<-7Q]S'U7S'=7RG%12=
M4&E7XB54VJ5S5]K]8)O=OVWK+-[(Z?:61K'T>&OHU:?@R>!)Q_NXNNW!@W_@
MO>TC?% /K</CK_3PX]_'U6^[N)8524<52]OPV?$NK6WOG]<NX;SZ/GC>YT:-
M_MVNU0]_''ZK_@(T( ?UG5__7%;/:]M'WY5C3@MAD%&6(NZ%1LY+AH(SX(?0
MV)K&,4E=G/=R6!$%)MQ*I;D2P1#/M78<>FA4Y/3#UN[GRM];G[[N5/8^5#[L
MUK9J[W>W/E5V:U_JG[]6=VKU+Y6Y:.S>KZ+[Y-/??5OA- ]**V8UYUX'.$AP
MZSS5++I$Z=Q5=Z_-=B]]:)[8$P^^MGO2@[8M!/+_ M3R%[^E^?[X;AU)R5J'
M)"4:<1H",LYEX:A(4_),I.A&.U0K0B.,.IS ?]Q3HRBUWCM'HHTFIC&-WJ>5
MSQ>CX/MUX\M&Y>/6UE^5;OS?LR:@5Z73K9S&;KO9[U4\#$2V>5*QO5[L%]_<
M5OKM=RKNNN17J-A^)8%957YFNZJ :UBXI@<:E,5_X50P9W3K$V=[S5Q K-(Y
MZUYI U=ZC0@WVJC</!80KL[-LV5%X7"-M-<:P]>W[>6/TI5%P]6O3;IRWHCP
M2'"[T\)OX>%C*_H[SVP'LNGYZ1JV!R\'9Q1KB7.%,W<&H_F9;PQ.RY?(QYQT
M^H/CVC;$C4IE"VBBZU<Z#M!D"!!9Q[ 2?]GV::MXXN(B]MZGW)BK#/BB;>O#
M3<M"(X3!>K]<M3;W6?SE&_;D*$(#-Z'C^PTPG_/.62MDFP(KB<V?<5AK;FA_
MA6'F G30=?TN/%>*\.6-=D[EOXIV;O8'E_SOJYIT\!>T\RDT-%R@W>GU*S;\
MM"=]>Q0[9SWHN.X/N'B^4S[Z^E8WUVT.[";SNM;%X-;#R,+%_OF@\XMKG-K,
MV^!6)]F&ZXW8+=[<PH6[,2)PFNYM<VO W[;K&Q?9%^!ESTX[@R?N.&CQGU>W
M!Y-IGIR>@0F?]0:5]O+I ^/J1]\X:?XO&/Y&96]X%EC9\/C_:D!O1'CA5OP9
M6_\-S9H*DQ\^;K!]"_?*'IZ;.E<+RZ9R&@M[ >IZUO6%&&>C"=>\:V-/$\];
M5CBT"DXW5);J+A:WP3'OBK+&T,\W"MW_>1<:ARP;WYQB'3#JL_[#ITS!.">3
M>9[0^"4=:;!;/QO=&TG@HXA<-]H?R"9XV'>V=6XO>FO_NO-.[>8)&FG#T==_
M& T>H2V3T9#Q\YX<[6X]TF*@YNRD,V[]K<[Y/<;?S$9Q8EO@RB%_TSD%XQ]Z
M!#C_6;L8'\"?=D]N.>OZ[=*6X-+@V?YZNU4%PL38'9&[O_;N=\N)SB/A[V//
MQN3<GNW^P.U3[IC*M23RXAJE\O_]'TT)^:.R?];)!=>+D:17# [-W!0Y*G^
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
MH=Q%-4MSG[4';YZGJ>PI?),7+TV"\G)%4?[E4FG[I+;UW4C'J2"Y-)W-"Y.
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
MRU6IQZ/$2]\?L$#5TD-5]%8(SXUQAG-OM7:Y;(+ES@?.$G455)$A5$W0Z*1
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
M(^.A/$TX$!&#E%<)\:@UT@P#X&F+N58R&AXJF&.+E+!15'H12,IL5#K5?\2
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
MFF$4"9&(!\=A@U4>,6^T]M)RZ=3*.EZC/Q&TP[H_K.6\Y%K,ZAT!-7MG,;8
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
ML+G6M?8\\L"%#,8G+70,V"6<A$E5V<*:6ZT[8$QV6,;24^\U151H@[@-%KE
M)&)2"!<EHSB7/Q<+[!:_:H!1<ZN:6SV,6ST,,VMNM290N;,_/I![<+ZW_94=
M AA&@2U%7MF$.'4>6>8H8B(9Z8*P6O"-+2X;^M'=EI\**Q_:J?ZA_>:?7J_?
M5>>5'M-Q_H4ROH><(UDJ];O> NM=K]OO7R=_J?DC!G0>>]T:S.8"LYWIR@*)
M2YZH049C@7@4 AG -B2T#E1ZZ1PG.=E/P\+_MJ"VLT])[A;8JWKMU?\6!O,X
M#)B?RO0?TP5O@L[4R+ 89)C:0@(B&ZQ B22)N*0,&6R!ZJBD"*/1<&]K9'@9
MR#"3&'!B@J(I%QX*W!CA<"0V<.Q\Y%8'<4>;NIH8K)7Z3P;;(L52!N^1TL+E
M3CV@^3%*1+7%DE-EP3S4ZO\RU/]F8O!(#*B)P4M A@EBH# P10XK+E*NTXP5
M0Y8!4-#H5*(N)9IPC0PO QEF$@.M&-,.TTB# 5[HG97<4^(E9N!*DG!'W]*:
M&*R5^D]&BB+Q%J1&HB XS7Z!189'AP1)*EHMJ."F5O^7H?XW$X-'8D!-#%X
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
MO]@:":MX/N)QC'-5MIYO2QA[D%&>H>]N0?H^K><3>;(7D:DK@:G]V&O3:W@
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
MC".K<PTS6AZ+)Q$I:XWDEN@D#- LN@DK_:P='A]69+I&HI>.1$2H)#BGQM#
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
M<6MNW/HP1<O L&CJ:$!)2H(XQ0%93P@2(5EF? C2RXTMB1]-S.I^R"NFJ4]
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
M!+O&S<UJ#+]^3#F]_,I%OL;ES>HLOW[,6->AJWYM"/R:=EUZUJ\?<Q+N8 0
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
MXFB 0@:T6CBW_%!GTP'+U %S<=#LE4X!@*DBR.?!6$@;@&-6Z%0$S6?,@G3
M8^-NG4C55$"''J"I@*8";A[S4H)+6Z,DF8-5SA&(V$)68G)<^W*WO26:"KBM
M"IB+@8=@K"R56CJ+PFI!*/,\6J9#BHIKKE+M,R/,8^UNO1O6=$"''J#I@*8#
M;I[QH$LP$+3"J,@-*"&73+H@&Z6#<^G>.?5X@_\KPO_"OH>$RJY9(I/!B%H]
M%9E/I; LN<\Q)<.+7G81^<HUP'33Y,<)AD&F?U/_KR<G;[9UN$?"$V>_US7?
MWS_$Z:O^DTZ;R]<&N68UR=;!<-ROY_PTR@,Z^:_\\\=^FNR>R-69+QZ_,O_R
M%0ST>H>3R[]RYLUB)AD<71T3MOM[>=S;RA][KX9[N'\).@C^+7B0]9FL/)WF
MV8"=^;E[FLE^@.\R"Z.,'Q@6>MB?</ 1C\:/?CSW3GO]?38WAO.O/WO))_\,
M(_KJ!3>>FYZ9_!<)V<04N5<!8@XNJX!2F\+!<50X@S'Z3DY/*YK(HI6*S@'9
M.A"DQZ(S%]DE C5KG3]YE MOQB4(SVLW/N] NQ22C.@1;#1:T]V7@]U7G)V9
M(-[^Y\E03V7CRZJ=RB.]P0 /QOFGDP\_I_[X8(!'/_7WIT\T_=+/>SAZ1_-[
MO-3KW,[)XG1%SPY_F?8U/IOZXZW,XSO/#O,U\=^+ILOQ5]> NTN/?OV;_-)C
M8-:<5C>Z[->/*0=+?UA!7]3V#A[6R;L8@IM>]6M#X->TE1UZUOL? ;?FW=][
M#9 8&'ZU!_I6M<<Y^^0[S#XXQO*J.[_Y\8?^?F^R.SRDVZ7Q/RY-6?"GH_.5
MMY\9*/?Y_O;"]U_/,>^%/.HI\;A'KHBXW6M]=5*78ZK=_IU_/QQ.<CIO*G7E
MV:9\SN,>K;2GL=K'W7S*31Q](&^S.IO=?,"-1+>L:[ W\XN[^90__)K_RH.>
M^,><V?YP16_."^[4;+RFV_8+C=[^I)L/^'*RFSLJ;R\#?>^OZM1T\_DV]@\.
M.XX"\ELH8!H*_,V?K?,(]69_V(#@MD"@+@*":U?=GP\@?Z>YX9N'DT.RX5[0
M>XU_6D*.^)WO/'ZGXWSQYL3W-\!M!ML,MAEL,]B9&?Q&S=G)KM#^<#]_?<C:
MF0_]S,;U_C5#D'#@&1[<!0/3=<;F061H7?1>WW>2E9;H)(>$-G@0SH2<8I$&
M1719QCCCF1"-5F8NF4K]^<O&YZWW4;[<_G=_4V[PG?>_P\[>AJ;[3Y_AY?J+
M]W^^WQ$O7\\G4Z4/.^\W);V;WOICX_/.^U?]K?7=_L[[#_2N]7V?P^8?6WM;
M[]_H__V\.=D\JGFTSR=;[S?AY7I\JW1-AO." :!DX'Q@H512VB2XSEZ+4N*C
M)T8U4MJ&6 \3L7RIK&G6F"0*0$Y!&E,P &A3Z.^B(=9J$6NK?QZQLH_>>RF8
MF380*LXS%W1D1GGCLY+><-40JR'6PT4LYY." "9)D!!S#D:0R04BEJ@A1KET
MQ'K8!#[WAF0O7\\A60:-,10&QM?.\#2NOMI>.2MTUDGK/721O:>A64.S)5;G
M!XY%<Z,2H9>C7UP0VO/@?9!.>&AHUDTTV]S>.%^5J5W11FO+DJEM#7)T# 4(
M)HLS-I?(LU]>5^?[(R/K7GBRG?G=!(;OH - 9Y781DW2V)_6&MV.1:XU0;Z8
MPZ"4I#P(KQP"3]Z;F%Q)5A:>Z:U3"U2L4B&^60BMAE(@"U>8TMDP2(:SH$MB
M+GE:MIIFT>E'3SSP#G4Y7B&N-6D_W]@7HH]<1@@B@^,A@"([V0L')N:$RS>+
MF[1?2]KGPY(Q<9\D.1.!1\$@.I)V0]*>E%6UOC>4A$W:F[1?0L\OHS:J&/"D
MX4%I%Z)$X;52"H*6H3G!W42!^9!>5$4+HP(K)6@&6A>&-@O&A5-)A2+ EF43
M4S0D>$A((&1"&6S*06FPP3DG-)IB0@G>::$:$G03"1;"828D*4(*3$>-#(P+
M#*$V_LW)RQ)<5&IY73Z7" 5+Z?)YGUT\VC7:-1[R-6Y:;]3Y@.&SX=[></_'
M9\/!($\K['O;H\/QY';E19UNV-JNT:YQ[8:^+?%\!A=_Y,%@W'N!HW?#WJ]]
M#/U!?W+46Q\1<.SW7E<^NFI:/]O8[FVT]L#+WWVP4@8$GZQ38(UQ.J, I3V/
MP42C[]0O>: ,RO?DG+Q;V)IP(7$GC&9)^5"W)@P+P1:F8N3:1YF-P4=/[&-[
M>_[DAYEW]#<'@T0J+$,L4-MJ9 Y..N&L5RKE# 9M"U)T$P?F-RT .<&X%"P%
M5R,31K(@G&:H$5,.5B>(74S9:4C0%22 A"Y[+VP& &&"E\YA$$D8!_3'Y2<E
M-+-@>7 POWNAO?2U?0(S)AD&FDOF V%M"CI([;07*)M9T,#@TF:+PFN''ITJ
M'FQ&GUW,W$3/4[0"EU_\V<R"Y;@'"ZF\WDB.03$E5&% OS%G368RZERB#"IH
MU46[H.5G+B=^<K, 2MO8_6IEO XVZ6@B6 _@5' A<D!C):*W=USGT"REVR#D
MA], RLOUYY\WUY^^Q2*,=HFS&A8C@,R6!2T=JSY3]MIC*;E:2ER:#FWM=B7,
M?<MK7".M2J/@X, JK@"2\";17;@S0JA(%S\K<Y_&_9_V^X/_]V@R.LPW%KHF
M35>0II,PQ(DT!6.L*B4R(9QB(%QD*+1C4B=R28J.1<NZ=N8$J3,+LFFXF?D?
MT*@L416A0?#BJYP);E)!IRWXIN$Z+),GL0"2R8^;GY^^)6M%*J4"$^2Z,= !
M64 7F.>2%C#GR0%O&F[E&BZ!4,8FDZ2*M8*<!"TX&YU%9[,WIFFXU=B+IQ[U
MNT\D31_?>FM]C"*S(*TG<1*<>:TLJ3CO0*'DMO!+55Q+"[BB6_NO ;W&JV'\
MT#M7C-A[_I]#\G5;5L#RZQ8*SXA8"2P,9% N0Y31U\YUL6"K25PY#LUO_-ND
MDD##M/*9 7>">2,L\X JD_-*<Z@?/3'BUCJ]Q?<?H+3'9*0CX\\6$Z%P'TR*
M-F'"K- &:UI\OYLH,+_M;[0DFP,$RZH8!J5DAN C"]H*7T-;7"RO-*$AP0-$
M B\-\%PB>K!0K'+*F4@NOJMQ-<C+3P!J$G\C;_Y$XCGY[XB9,V4U>?,"'<,(
MF<DB,7&RWG)N>K])^V72[G0!H:T,R8$0)6#V:*+R,7-O!6]ZOYLHL+"O3Z:;
MHM60&7EKD<Q_3CJ_H&?@5>)"9!N*[:+B;Q1=[<PKGME20*X6*_OQ&1Z.\T<\
MF@N53=&XI7\L78?*(+!@"#89#BI:C!B-1W*BLR/MV2)E*]65STE';I[7E2'I
MI$E?,@$U8J^,8%Y&9$XC2 ?D/FMX]$2[MOW5Q'U1W',Q0M6\+EN+YCQZ7FSD
M*7CRN&(VKIG,786!G?,P(&MG" S @N&.0<3"O J6$31$FDB?73=I/!H4= 4*
MHH[2"C $!AER(86O>8$<4&+1]$O3_*L6^0_G1=Z"!X^Z,%+SF40^<^8D(O/:
MR9"D#*%6Q37-W\3]PHHX"TFJ[+"2U^ODG3.:M'^0'+CCL07+.@L#SX]JR)R@
M0&Y^?@=;']_J5&+ASC(SY?0LRE87(+-2N.5")9U#)]G\6K[0M?.%?J7?<^UK
MV?ME-/PXV>UM[*?\:=KNO*4-+9_D4&AE"_E#I03@*!R 5](&G8LMPK0ND:O%
MPJ.%8(AWH!TXP;+EG$'E"IGR'&/FL1*9!^_SHR=>WYK=N.T?/D!Q=T$5&7P)
M7FE 03XTY\6"-I7>.,:6-]19&)@+AHB8R95UD1%,DV<4A&$^Q\@T32[YLAB5
MXEW</VQ0T!4H$($7P;6((0L(TJ*T$,C(+I#1D&_=-/^J17XN&"+1(TU89)%;
M2R)?@+F</.,\0K2%H]:Z:?XF[I=H?E!:%N>E]0*RMIB\U5Y*KPU7@=\M/5#3
M_+> @85@2!(BH(V6:5,\ VLL\\)[AMKIA 3FQ7:2*ZPEA-PB&#*5L-O&0EJ\
M^&L0R46(6J>H9$J04W96.L.Y$=QS%<OR=XH;%%X'"C\OQ$(0!#FRY/I$+14#
MLH)8L%$QXU-Q62KRD<@)\L9U*"+<MH>Z(N[:9I+O7+C$ HXG9T%EHQ"ED=KK
MV"RBKL+ 7"RD%)FR,;ZV=R1[*&G%' C)>#* RFK(L+QVQPT*'B 48.2&I[K_
M(22D8KTQ4/VC6F,I(+46CRL7^;E8"!:IR$1S3+I,FI^GQ'Q0R)(JR1J(*9K8
M-'\3]TM"GUEG$NO:^I>#1N>U31*]43'F7%Q+#.DL#"S$0K)&\LYR84:*6.G_
M,L.8+>,>9 0N($;HHNYOB2%7C(5L'@XF?;:)^_@NCWJO210'-1[24D&6;P2A
MY%#01:$<\.(QDG=DO<ZQ^%#*W7:^;:1QMX)&OA ;40&EB[$P&4)@H,&PX,A@
M"A9LB.BYR_;1$_&8"]VA$'';+^H*&F1MR10J7!5G0(O@>0&98DD""2A2ZW[;
M62#866"0UTF$Q*S4P$ $G!%- 1"F<QX0B^_B;E&#@JY @3*51-MD"3Z"-=J[
M!&A5XA!Y%*+QI7<;#^9")[F8X%%*AD%4PR &%D 99ISVED>=4^+-,&AH<"D%
MC1$.K"Z*AP*ZTL[P%*.V3@8.<,=]IIIA< L@6 B>%&^*Y*XP(6HNN2J"H8V9
M"0E"6A-B%-\C"4U+)%E,)'EU2-(T&/0DW;%ED=RIXQ1L<IAR%L:"2,ZI[!UZ
M,IY4-NA%VTM:*0Z*A4A)4K4S EE ,@G#P&E"01$E"]%X;R1-HXR/GBAUZTY[
M;2_I 8I[S1O)(BLT!B$KB<I B45F:Y7SH574=!8&YNE%:MS;F,RX0\7(M54L
M",V9"A!D\-IJ6)XQU*#@ 4*!XC%%E;+T+H"<)H] -EI@EK2R4M/\*Q?YN5!(
MXCPI:3S316#5_(5Y6?OM%L 2@XFI^C]-\S=QOTC<C2A>.V=53AR"1I0^J%+0
M9&5%3*W';F=A8"$0(F@:(1ADR482?U'3R734+&/F10A><A!=U/TMB^3:@9#7
M_Q?W#G[^K;?93].ZFL8N<I=%AQA"U(23QB50EON80R1ITEF(:&VC6ETM%,J%
M6$@,PLJ2"\NN6 :&+"('-C,M+!:3I #,CYZ \!V*!K>MH:Z(.X9D0RQ&"L4A
M>A.$\Y:[FD*&UMB[W2AN%M$M8& ^%I*L$E "@RSI!_>9H<B2H9=\2J"KE>GB
MQE"#@JY 02"-86S1/M>*&NN#!*ZMA)*-</(.N!>;R%]3Y.=B(28%YT %IKE'
M!N35,E=29L5B=$[()"UOFK^)^R54JQJXM2J8D")HCH&$GT>E5;8B)-DT?V=A
M8#$6HB/!@#$LB5230E S3_J>"1^5=-ZK$I973=N20NZ_W<SFB]?';"+/-K9[
M+UH*R/)30)R/*)7D2BI K9P*6>FHG>,\J.B;\;-2U%,+80]9V6ZU#<Q&!81Y
M3C!',\9"]"X(#MZ71,:/N;7QTS:"'J*X<QD!@@=,'FR,/JN(6+C*+I+KTS)B
M.PL#<V$/@F8'*#(CDS4Q0,69(\N6T?+"6#076BRO5*9!P0.$ B^#D!"5PI0!
MD3L=K.6D0C";8!N1R.I%?B[LP7,649?$)'+/P)C(O"2YMR6([#!$9433_$W<
M+]GP4-)SL)8L^P 2HTO>)./ V(32J-9;KK,PL!#V4$D)U-$Q3W/*(-6^"D$G
MYC/76F@P1;4.,]]Q"LB/VVN]5\./N??;J!_SC%B5G>DR,V,8234FTA)!EI\E
M[ZT*%H3S1H)2%IUT,J=LG/"5<*3912L%1%@LBA&2D_TS)9L/#$14S*4<F(CH
ML[0E&@C5+FHUPDW<%\4]*9N]YT$' )!%T^?"E4H<0T)EE]];HME%2X*!N8B(
MY2K9Y"S)/=<,5*4-B(A,.E^\CQF2#UW<#&I0T!4H0,X5YH+>&H("J8/A/A9#
M_R\Q6-4:S*U<Y.?;S!!F:W)0&#<ZDR.D#/,V<.9H A5YM4F8U#1_$_=+ J!U
M\X.,^R0=!^FYSZ[4#@JI6%G3OYOF[RH,+$1$I.+19IF8S0D9&7*>.:$-*PJX
M$"%[4X&@>[J_)8+<*"+R_#^'_<E1;V,_#O?RK<,A+6[\=0)J;KRR(>E8 $3Q
MDB0KYN2X23:(EB"R6C34%W"$0+32 B,WMM),0ZE[Q,A0@'=2\^BX(Z/(V0Y%
MAMLV45?$O2B.)G@ODZQ4>]EC*!:0.U!.!M/"(9V%@;EP2%"0" 4X"[H0#&@A
M6(C<,LB:I#S';,WRNNXV*'B 4 "NMFI,5AH(X J@5QR"%61GTP%HX9"5B_Q<
M.(3<V&(U*B:3*^0%9<=HS@JSH4C)57!&IZ;YF[A?TF,.LTVQMI(T$5*U[<%)
M:\GV3R%D6#XE4-/\2X*!A7!(S>C521>F1-T1C58P'U"S7.G>(",J7%[7W98@
M<O\<(?\>'N&9AKO'>2$WKY%I@>*OLB=YU"JCU7'*&LV]$]KK+%*PBA=<?O?-
MAH#70,"-CXLU,B6@B+XP6J50/1[)@@B*I5 YI'W0CIMJ"-V:+*WM"SU <7<<
M<R(]*0LZT"YC$$:CL 65=LJ69@AU%0;F0B#9YY1M(0?("X(!20@0HLK,0RJ\
M<%NTZ^2N4(."SD!!R%EF55!*A*B+!P-@C1#T(Y(J:9I_U2(_%P)1H,B!]<@\
M"LF 8V0AH:_]Y%!";14!J6G^)NZ75,>FF%(,NJ@D0>?BHZK="&NKH6CI0]/\
M786!Q8P0X"D(;IG$I!AH3T!0B8*"(^4O:YJ?7UX(9/D9(2?W.EG)>BJF70R6
MMFNT:SSD:UP8DS0/()[X#,>[O2G#<._U[G T89,\VNMM[/^5QY.]O#\9MTCB
M\K,K4K'@2[ R)'(DO-.JI+HS)XH&+=N6ZFH-B:.%2&(.0EN1'9.%BYI%$1FF
M:%BQ*>I:)0"N)E/Y6V^I-G_B(8J["*!X+;R79':"#<*49'3FV4=(HG596;FX
MST4,BTL^T_^8S[8P2!X8<N-9B!*SX2X9+INX-W&_K)VBK&H!C @:HA+D6Z:L
MB\W2F"P,MO!!5V%@+HI8I\QB!E:W@1@899BS6C"3N.2:=+X'[&+PH$%!5Z!
M6Z.#XUDIE!!\\"#1H]6I "AGEL\IWJ!@25"P$$DD=RW*"()9D*8F4Q$8\!Q9
M*=(G8S-@Z>0NXDUKR\)PE/*(S2Y&3S#IC8>#?NJ="-7Q\<GPX">Q<' 989BE
M/$!GPR[;PPD.;E.G=B?S<V]S<B&^=V-F_NNZ*8_+&Y3O6]D! L9@M12*T%![
M1,N]LD8Y814/=TLJNW^XQ])PPHXOW#3>]33>YX60EQ"QQ,*1*<\=H_DD;SBF
MPH05N22;@PWET1.I'ALKEI0[O$S$OX\JA(>A(IL.:#I@>=PY)>0H0(IH)-G)
M,7!1^ZII*0LJ>P=-E)H.6*8.F(N#QF1"L=$Q8Y1D8*1F&"JI1M+"H??.H"4=
M\)A;:"J@J8"F IH*()2%%#2OW;0*?>3&B>RD"E+7;; H0U,!G58!<S'P$&10
MHA3&'=2^FD$QKUQDM550L%D7B9Y4@'BL;[\;UG1 AQZ@Z8"F VZL R*WSH=*
M'J,0 I+MSPO8B,8FGH5M&=2=A?^%?0^3"Y:2%,-J_I-GYQF6K!@M^.R=-CFK
MI1/(K%P#3#=-?IQ@&.0GTW>JJ[N_?XC3E_KGCZG_UY-_3G\L0?H$_Y;XR2I^
MLZ%<[L_3B3EYH9-7F0Y7?S_E?;J]FRJ&^WO3EX>C7I_09)3'DS%]ZDUV,^'+
MWAZ!#MUYD&EM_95[D]'A>$*'3S-5>SC*O;UC&L!PU!ONT]?HG&'JX_Y:[]EP
M?]P?3^C,WL?^9+<WG-[FY-N] UI%\>CQ[&8GW^KMXOCX)+IF/813Q.EA' W'
M] ]=*N7!48_&+H_&_=*GTPZ&HTFAJPU[P])[L_9ZK8?[:?9&^],5A(->GG$7
MU@-3O*+#4Q;#<8Z'H_ZDG\=KO8IUO;\JV(WKE3+&W9/C1]-7.!V:N3'!Z?GK
M.>:]D$>SJ5;B<8] 5_8^TKCVAF&"%5E[933<FWOE^DQU) ..Z00:\_\<#NO;
M[^'H0Z9QJMR+TQO0^NC_U4^']#IG9N'GWN[P8Z;1>-P;TTOEZ=7+81V!R3@/
M2B\-Z>O[PPF-+3TQ7G3YZ2R,OPSVJ+XDS1Y)/9U)__U*-QCTY-IU%_"3?X;1
MCT^ZN>RW+USE=>2FPS5=([,E&(9UJBLZS<:0AIY4:#VCG"Z9WB&-_KOI^?MY
M,AO)XR,'>=0;[]9!G4[BZ<RMG4W[[D5Z[Y![-. Y[]6;[]'//MV%5CM.CM?,
M:%1%Y_(;G*ZAZ2+X\G!TX_H7>K<\&AS5!YU-]5KO%=UO[V!J8)0124G>CT>]
M_KB7D,9YK3<=)'J(=\,1R<C4ZJ"%? X%Z-=CZ?HB3/6&8[(R!O1DI'(^UCO2
M6-/<TL''O?IFY#G6V4HSB3US<# EV)@^-ZMWW:\#787DW91OX\O?SGQG*M?#
M$4WO_I<_DW1BF@W'>3"8+?WQM5?S?2J>\\^VJ!///.WQMT&N64UW.!B.^_6<
MGT9Y@'5-_TR8.=D]L2K/?/%8X?,O7\% ROUP<OE7SNCU6&=A=/6AV>[OT9QL
MY8^]5T/2&K<;)*OF!NC,S]W3.JX#4DTLC#)^(".*'O8G''S$H_&C'\^]TUY_
MG\V-X?SK7XYFLY]STS.S?F712D7G(%8&-^FQZ,Q%=@ELLF2PSXQX^DY.3ZLM
M'8(I1H&%DFJ'0([<.*6YE[9DA]Y=,!.K6J.]YY\."#"KWI_Y"KT#//IB%'P!
MR"^H."9/HZ+.X0QMQG1H!K$IUQ*8_GX]L=H()U<<!EIFL^'\FH)=ZQT[2EN'
M>_0R<8Y'-P63I4N11A."4T%+B0&*L]X+(_C;]7H-+KA@]</,13KO%+V.NSD=
M#L@#.GGI$__H^)6WJV;8IEO^:S",'[Y3U^?/_]WE<>_?^_B'/WSY?N?3SA^O
M]EZNOQ&;GU_L;GY^]7YS>P<V/T=XN?Y4;JUOR)>__'N7[BG^]_/SCUOKFQ_?
M^IA2,5HSY+PPH/$EF4O *H.Q QIQ(<+\BA=:%I=E+HG.5-(&*STM?^2B9)-
M/J*5%/&@KO;189ZI;++T!C.%,M/(_<& 3*D1K;;Q=)U]67L'F4R8X?[B$IWL
MDD*MZ_1@-'P_6\:3856^!]A//YTX5<?KZ1O6RQP67@@$WWS-U:F7V1B>ZH.I
MGU>M(3P8YY]./OR<^N.# 1[]U-^?7F_ZI9])B[XCY#Q6(A4UYWR\Z?C,#G\!
MU#4^ ]7C%+GC.Q\?7IL>FG-;9\><6@,N+SW,U\1_?SV<=_(.-+/YCL_\VI.=
M.R;7M+57?:>K#]6:\?I&5_WZLUII5C;^%Z95BB]9SE])0)S)YEW&\Q8DSUX8
MT/OM%&U>'$X."7Z.]4CO1)&<B]M\*Y'TLIC,C7,QEQ5?F8]N7CP8EP1$[C&^
M^L/4O1L>TB72^!]S5MW-U[&_VRE:@B%^^\E[OG<P&![E/)[&(>TWXEJK>LI7
M>=(?Y6FPJ<:NES;#-T"JJ^\J+26_>J^?TB#?YV8%&<_J"NG5]ZB$ES[V-]RQ
M6^*.W/U/ZTUWY):QXW;_;WN-';<@DTHF0L2 8'GQ(62ILHU6D .O9SMN\B8[
M;B=.YLQ&F',UM^@!MC_FP5]YDYYF]V^1C7% ]WO1WY)OX.4?.T#G\\U?=L3+
M]=^/7JZ_V-UY__33R_7=#^2#RH7MN+U_O]_\8T/]N?U.__E^EWS8WS_^^?X-
MD/\*]!S]S?7G\/*7W_GFYYVZ'3?9FF9B/)]LO=\D/S>^E:YP@3(RFMS(  4R
M7X1DVB3ON.,^*?+=Q&-I;]WJ[@9*X(H[;:=B=&_ N'J5>C,RF)5H3?@.M>;*
MBU";:EA4#3L91]L?ATTC+$\C;"YH!&V+5A8-,ZXX1E/LF4>EF/-:*&YYLIBJ
M1E#\UAG:MZI)O1GH7[] ?36NTO> Z_H[Q/65=VIIN'X)KN^.<F[(OCQD_WT1
MV94,Q0K'DI&*05*>H4)D/'/P7OD,T4V172S+UE^!.=]=9/^.+';S'2)[L]@[
MBNPOAH>C!NS+ _8W"\#N"[K@DV H3&W,JP/SQ@NFO"Z --'%S4QVL5IV^F:R
MKQK8[7<([,UD[RJP]_]J%OL2@7WG F"W8(NW+%J9&8@4&.K:;C$F%3W8Y S.
M8C&F6>QW9K&?KQVZ79[#_6-)E=1Q32-UO<DNO=Z[7?I%R>]0$5QG.FYC_E]Y
MOIL*N8T*J>KC1;]JB.D2W=[-HSQ-86\Z97DZ)2[HE&B\3C$"0QF T?06YI4
MYKD*W'H1M26=8AY+[I?D+%P'/^_#D[@=@"Q5&UVA(/1;>6:7U)\M.>MS>IV?
M^A-Z@/CUO+1I!O;KPX.#P30O#0>]KR:IK:3DM9M54=-*M'\-<92FI2 T9G$R
M'(U/*MN>38N^CGJ8A@<GI:-/![@WK%V:#P]Z&_MQK7=NX)]_RO%P6O(W-P6]
M'^J7:V:CY#^_?O[JM^E'\?,_'O=R*<=E@K.*E/]!6I*CHYZJI2A"K,T&L#YI
M_5[O8W\P.*T^B"2DM73N0SXZ+IJ=WG$XZ@WI?J/>+KWLX&A:O9;WQ],"AGR2
M9KGPEOOI1_KBR27'AV'<3WV<ENA]W!U.:QO&>7!<H7-T^MWIA:O"HU_V^I-)
MSK/JTX.#T?"O+Z?.AGDR[!U@!9;^ 3W-713+7;$B3-Y@\3:A.2EQG:[$_GA:
M KF?9J4N=;K[J18#GZS.T[KDDR5V>$#+9'0J&8_)N,%:Q#WJ$5YCZ _ZDZ/'
M]5?LQ5W<?Y=K*5=%Z=%P,+=<C\7B:8RD6TA]#(ZKOJ=/=ESE=5R\<W+WZ=J;
M_H-?%B%)"YX5UI/T^1](&-/,O#HIV:V7_L?L'>JOPS@KG8W32M@3L3FN!^KE
MOV950<-9_="G:<GZ^?O6LG3L'9>E3Y5N/9>&9WCR<F=//\Z*'I^<.23A'M>Q
MJG)^P0N$7&O1QR?7/WZ'X[$XO=AT</OA\+AZKK[;URK?"D\Y:QNR"@:*#$%S
MJ6*2V047M=-?J7S#P;MJKV8:LG06-IZ.1G6FZ[._JB6_X_XDO\ZCO_HQ_T8/
M,$SGC%-:M/&G=#@Z(@/V.S5';UX4%S^1J?F6RVRMXY:5G)!!R(FA$Y)))XO(
M4M?6%8^>"#Y?<M8[FOJEM%:?T13TZZ(X'N?+%_MU1'&J3"]8B+1*3RO(+_61
MR.<(U0^Y_6K[XB]M;+TXN_AH-54SCG3DR_*BOX^#Z0;XU!-Z2L8N_?TU#DCQ
M?GF%XS=X>EI?>NH*,?GW6WQ'FY^?OD7K@*?D6-8U5\G3#^2Q4DH:#8$'Y82I
M<>\%1^:_3Q9-J4._0I"IG!L;IZ07VWFT=[P<SBV"-[1@MX?KQU7$>6%-7 A*
M'TD5C?/^WVYI3(MU/[W5R1?@(K+("9T@>\D0-&="AV)1":>JGSNI4L<J%BT
M%,YFH#>>3L$I7<I9G4F843&I!BW.ZK_].AF#,Z9%KU[GA]6MLC_.K;(OR^?I
MN]STV2FD?-[\_.:M+G7_5''FN>,,C/$531(#(6C5*(UDQ#YZ8O3E^HSF^A\G
M2FACIKZFYM<)Y%QD19U:GA?HM\>7?NO$6/NRSDYLW6.W;%KM72^%O0$I#?*B
M]DYLP'/+^-SJI8N2L?JX^G_D-9&_7T,4CT_8@;JRB-</1],3?NV3E_?OZ4 L
MP.(?- K_RK_1&#RM(KI>!_GEZ-ET@#?VG\V&]T(!2'CT]UO_=/V-MYF+)!QW
MS#H$!L5[YB4X)G@,B#P+;L6C)W[1GJ,A&Q]#X<U6^;GUMG9>=*9T!O/+EI8L
M'>M/!C./[P)/;^I^I<-<#Y_UZ<Y(S&EP8J9;9[&#BO73P,3,+ZR7NDRR]FJ1
MTN"(/I+8# 8S]H4AJ8[J7DT]AGJUU4G-)G[J[QWN31<[&3_'1D8S&,XN?/K[
M[V]-#L;+B.2^0&4E1,L0C60FVFQS+-Q8 O[2IQ6>]V=H/R\#WP@@S8*W[P_'
MDWXY6CG?4I<"."<QD5&N\1/"@;WA896C&;U3Y4$9?I'G4_>-G)]X.,!9L&"*
M$)7Q;G0PK$PIO;^0A.^PTNK1HJ^/.8T#SF3]#$?/X_JEP6$-VE2(B/7&O2G5
MRN/I/]-HRMFX(IT^RO0(XW,PDJ;QG7J'0;_4"$O=^,+]>'0F8%HYS6:0,(6
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
M]PYI34R/SH@0Z@5K+'J*E/N3WNQ!<F)(JA7?5<J$T^6TR)G05.3LV<[(W/$
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
M^GO;IW_"SOZVWMY_J]?W7_1WZ+KK6ZNG&UL?3OYU6G__\WWVY,LK*UD0:!A
MHDC8FVK'4])DW]%QG! M 0+SZN'8%@MOHE7%. ?:I)B0<V>35(D+D&E:\N_U
M\[^>;[Q]WEG=6.N\>?YR_?G&5N?U\S\V7V^]VG@Y*_3Y_72_5![RY_>_V%ZK
MDK/*2"Q!@7 I!O*0*6@M&0W7O$FBA$U>_B+0A \?AOCAZSFC(7Y&ZN5.;]3Y
M1)1:^2-WQ@)H%!+4\Z:C3L3^X+@3Q]MV^2@==@Y//N%RYY[Q?K&IF^7UI*$-
M4^U\#,37#&WRAAR2Y?7>,0@1F%>8F7-.Z!CHGSB#^$SV16?(L9ZY0!0Q*U"<
MPD_"$+TGIQ&_'@["A\GF:ST:^K7L9-UJ#W6OG&9,G\:D7V=1OCBOC@='_2K&
M>:;'F6C>UOCR:%1/KIW%KN28A8/Q.Z/#<#B^T6CYQTQR-9W\].$62)]3FV5R
M?><OI"F6C;B=/N>/;^F];!LKKW?9RTM:NFF5Q3G)AS]&O<LS<T+6XH\S:[%%
MUF*^RJ%7)F8(?1^:G'2-AQ3D_*Y0;_<F_7;#/+UY3HZ'UE5]=#0\3/G.&R8C
M/8'NNDXET+:[OG87?Q1%YH=GCEHR^4V@6*0Y58.?\D7F)+0Q28U639Q0[W8'
M??PP&.29&75GK8UF/."-E9%OIG_\\ ]T@UT$:57$X($[&R!(\"5R)U%%"<H$
M][,3#K-9[6=.[8OA8'^\24!->-<[W'UV-*).P.'S+ZE_5#MO=31"^B]OA2^+
MDL!^N_6+20+[I_V-E__H[VPEL;GV8G=G;9VOK[T2-8%]Y^59E;+]C?[.N[=?
MUI]-);#O;_/M_;_Z&_5Z[UY\7#_]LVZ)Z\VMW8]G5<KDMOR+KOW\^#*%ND#!
M8<S"LR159. #,!KKQ%+2W*O(3:@[EZ(KG.XZ-WMJ[B$U1KY"99X:(RU++3Q+
M"2TC3=6BE$(("KR%%+B5JICBA70_VPUO6:IQ+#55-U&X>OXE%F:=KZEVR;$X
MSK=#\)([9[5+E:6XA*[0CZN$U+)4RU*7L912TCB:PSE$#AR]$SER8BR$R)'<
MJ9^=R&A9JFDLM3'E2VF1O!2@6<E%,,A"L5",8CD%JWQ4)LFXM$)>5%?JV9S/
MQ^.H.>GE-CA(_2,,?U#L]=Z4<QO-1U8&$8/AQFD.R?H@2[;%:>UB"J;(-K9;
M+#Z:U=8-"(*C*,P5M P"(/.2_*>L#$9K?;;(EU:DXUUIYB5/]I ^TW7U=7]-
M? L:Y%AXJN,,5HL0!8].*S3)&^="&Q4M'+ZGJ\F'F(R4BD'4MIXZ3\P'DUB!
M$JSF*69N"-]&=D'-YDNW^%YL?&<>$D\)I*XZ9<;X7*Q/@B=.XXI*M_'$HN%[
M)IZ(*D,M'!*L\0P*!A:Y Y9$UCSF(*/+A&^P72$?5Q__CO'$PFUZ;1[NXK#S
M_QY>:;[1C,1="-RD7+*(4+B*.L0@,=GB(9GX,QW+EI$:QDBS6O0NQJACE$P5
M51A808PD;2&"BKQ*H16KW=(*$1+8>972;- B[*\.[^"21:V,RP:LJSGNT:-2
M.8"V2?TTZ;"%=^/@/150Q.*RMX("BN)T%4^IRCH66 XZBY!08$U#(W@;I5IX
M/S%X%S+<(8-(A4M0/@4GD@"1E9+>JQC;>&+1X#T=3Q1E<["$;"D@,$ K*)[P
MD86LBK$U.;BDI14ENMS=.9QHP/;$Q0P .7,P];:G5IL1@A"DQBT.AYCO5D/B
M#CWS)+::Y]XIBVT'[EB-H+4##;,#LT5K!* IX( )<!3%\2Q91"59$=)G8;!
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
M4/M<7)&!^5)KRUH.S!6/+ 9EK=7)!4BU]@YW?!ZYA<T[$]A2S\)3CP:>HQ.
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
MQL"E*]$ HG&% \7L0%8)8H#4NOW-P.R4VY]*5LEP9&AU)K??6>:4%4Q)I8K
M;'EPA%G?M>X)9BO\XIB5R+U,A@(^;RAD#]X;=#9 U")CY-"Z_<W [)3;[XLS
M9%P5BU@KGPF36> $89.2T87G8I#LK!1=KMI5_V:Z_;\/PVFOWZ[V7Z"CH(JE
M+RFE= 8)V5M1P.KH:$K+DF/K]C> CF:+IPH/,E<!'&4RN?U!1^9+YLQ&<BE
M:*%S=2%D5]P]T[I=.6P89I,K2G!E3)0( -IQIUT JVQ6D=S)UNUO!F:GW'[R
M$4J)7+&2;<W+"9(YBYXI8ESR"*T@2(^+L0!O\W*>&F:=!&N-SED29DU!#]&1
MQ^\E.!Z$":W;WPS,OIW>57? 13;,@(A5_C(S1S.4^61CX9X["U7^4G3%C;4O
MV]7^1:B>^G07(I#H)MH23 X!BE QVI2X@"*S\ 7P]IY_2SHW(9W9^JA*1XM<
M&)H7N=2J;9$%E1Q+$5,5BLBAG@HVMOF* NWBX VC<="6%Q.,]X1)+WWR.<1
M\1QY]T:KVWOV+29OB,GI\J>B)(U&,9>@;OL7Q:++DGGRZ+Q3FM.X+*U8WV+R
MJ6%29,(?3S985^AB*?JBHK N6X59<GM[S[W%Y TQ.>6<AX@\:RA,>XJJ@0:)
M!5V 48#E44**3LFE%;\ M03GN2!_ZP(@BU(::4:<^:81UB]=.^G^.V6QZ=ZF
M(((D-RQ! $?D'XNHQ0$,A44&(+0;(@VP!;.E92-76D=1F%4.:FT 73,I$P-P
M@?-L0A1^:44[T>5S6UUM:JFE>VWOM<4G6[)MR?:GY44#A!2MED(A!.U#L-PK
M:Y035O&8VYVL9I#M5# <%8V2D86Y[#P#X8%%23^X*R(E8S+9S%H26'7EW6L"
MMV3;DFU+MO/0&,X62E)".:\ +7=&6*$+-R5P(],=%C):LITGV4ZO<ACK48;
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
M<HWP:SX?<P@Y.^;6"#GOK">'3DMKMF<(,=J%YHFJ8Q>[95M1TD'29^.'FW%
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
MW0 UET(WN!U':HI/!P;))*=AFU,DD#7L!RII.M"HU,E65]20PM3'VWSYU32
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
M!S+'3D.-.V2-.QQG0CB.QOJZ6W.\//;C.D!]T63_&6^[UWH 4V/P"1T&1G-
M3.66W'1%PT]<^!R24\GU<DZJE?[98\92M\Z O\<TAOF\*]WZ1K&+A]\Z459E
M2%(DEJI,M2:7**@H&7=.IV %B- ZM-P/Z9#T\S'9>4.']R_GHZSBVL'SY_'T
MR__&?(*_0#>I+ZY*.Z\/C'SMJM&\B[&H))BTKN;\34UD96#%9JZDUR4U3X*T
MQ#\DP_&H_'TL3C3L:7,52TVB/YNF;G/NZAW.NFF^=S%" *ZP.&8LC^1'H6&>
M&\64=,8Z"(ZBK.;['@>"'E9P_X@$/J[X'RU'L%F*AU[Q>?MG]IT/N!U\JRP
M??JU_M/O<4YR3@1CTY_ZZ@N7WKFF![&U-NC"E[C^EWY>[[>]^IH^PN0$W]-@
M7I6":3$*D8(N<(8%EW1MG4.6VWE?+P%+'CE"D*U#Z>..L$& 6"&\FTT_=R3=
MYV>_SVL;AW7Q:-W#3(ON\ZH%_ZCN4T4715UYANE($QH%6"9TBB(95R*T/G^X
M/;HA>;@#YO@MT6H?XF_F+JR'^+9<'O;;R4$3?#&5+[OYI^D<QK]4O4A_03^G
M=6D4YF^54:,<2Y'>>N84IGH_)#( A4RBU4DX4_>'&]/^\4<])(?[.UI.CR^X
MG>C:,LUXFQJYV$:ZI$:X]*)$EQF/]6XWTAKGIUM(A02O4/61@]P2W9"J_K\C
MVO<D_K[IN3Z'>A5?BAR*!&#<FMH\(M4LO:080X% J53!YCM1VZ,;TA&"[Y^>
MAXK_,;0G#1ZEY(Y1C!W("8-"3E@N+,B0+"01LVC=S')?[7GH9E60.O(@)..A
MGB-1(=$H36)0=,XQ)D#50[BQVV;5$8\"],&0^_>N=A% RXX4G[MYS0Q-9R^G
MR[@HR_'YS404@H@2 )&I#(K&)B6+-CCR;1)&6[@NMO5M8??A&9*3?"2&-!-/
MPXZ?W]I$C+)07GDGF".&$@+!F3?D;(20H^5)D EIO7-Y^?E#<A^/1(B]I[]=
MBN"\L\AY%5D, E(VG#FLW8F!*XJ LJ[7$T'A"20V/QAQ'<.0'+4C$>$@,;3K
MD'BE_OAZG^)1L5ESQS6+OG92SS3*:#4G@AJOHA8N-.^#<3^B(37>/!)1&HJH
M)]I<! ;U",=\A$(E*U)A-M"(M36DT"@R8,8"10D WKGF5_'<@V=(;3<?A3('
MB*==M?E'F.%SBEESW4@E?;<V@#0T@QD+<QH-88FUBR4(<HA$--)RG43K7/'M
M2(;4X?-()&D@DO[:T%\[+JL<@*(PBKGHR#8Z]"R"-,Q$BY!X\J6T#N,?@+0-
M8?R/19B60FIYLOU:3FQS4?GJ5/X[.%M=P2BD%@&(Q<G7;)BH1K+V5T'T0MA
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
M;)PLG GC-"DR13$&A\@4>E7O<52^^64N[= /83=KD.[.06+NCZ;?>JC2U+R
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
M#02ZI8N_>;U^B3#'O__I_P-02P,$%     @ V8-75H@ [\_A@@  Q_P% !0
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
MJS7:#4(Q07@=?&&B>8&(5N![N_8]*B+WI.QCN6%>PJ</+VY'@D0K(LDQR*A
M164@"(4T#67DQ3CK6?,.'5<!'.P&^3 <N'FVL+,NNMC\=Q;$Y3#&N1HYOX=3
M/#]YV61,755,Z6 \A[GJWH,FZU(BCT''CX6_R+1B-2.!I5 O *T$+T,"XU&8
M[+@TO'D>R:/A[0/W\D=.VVU4V[CHS/\^"Z-A&9[;Q>>G(ZM39!43FIC 9J-J
M1W,+7O$::^X"4R5H?_-R9VVMDGM><82>2^?ZF[07?N/R-;]/QA?(KH.RI106
M+0?M?2!;EQRD*"59&)SF%)G!,FJY 2/N?,$SYT,;P?=6 N<]SH?3I9>T[+.P
M.%;:^6KGWL>UN>39'/&-ZYZBC"T>$W=9TEP47F3ABN<R%2U+P<&]3]XS<Z*.
M%_.5Y_X\G%4_[6R*EVZHM2X0%X@7FG$R_H6$D(,!C-P%:[V0J;6WOQ&P=N<A
MMU\WNWS?[/( 1Z&S0M5Z\,;6^JVN0*RM7FJ4'7-)(6O>&GIKD/TO=.U9=/=A
M1A>:ZO2ZY<5L=G:Z7'#_6/2QOG8B:#1'J4,!+FKY>A%H*PZ&S,?(8U$A8/"F
M,T+="^UITZB=5CJ]H/@=5VM^[8H]NP$S9Q>-E@Z<K"4Z:LD?5YP#]$F1@9=B
MM,VKCFT&[6F3IYU6.CWD?S%:?'I8V^A6@1#G\19:D;PV6M'J6-, 52RY7DM;
M*(S97%/(Q4VSN^4"M '"ITVEYCKJ($KOUS"<+O)\E^!^6P20DA<Q?H_I;#H]
M[Y%P9>_5G,L2N8*2T9)'(0IXG2-$%LAKP6!-:&TE;8OQ*;*J4SUU4?#F8A;4
MEGKU G4EG*4K?',:Q&"RU)F!3XL>'"I!J&$#0KGDE3?TW^ZNUC>"^!19U:66
MNJAN<P'WU:=ZSC)[/7XWG?SG5>!OXVAX$BZC)Z\$IB2FLC0&4BF+YO(U)286
MD&B81?H-;]ZM=1^\3YMN'>NOBZ(WFWJIBRM5([*RG!<H4M6 0%U[P=1Z!;4&
ME"D"!3:/F-T&8%]Q$D=T>K"U7HXEW.'RB+".Z>(VJLB@M90%C)6RQNH+"#5@
M'WW0B0OF..L@A68-DL,'0#37_.T$FWTUT,%)PFU4JUR1#7!U%+%P%Z;#1!VT
MT-N#5-A#Z'V2@OQ(X80G%S/;6N@U*/#%)K!")#+KG$C8^C"R7S(\<)7?)Q>V
MD74'''BW%,ER';RV-)[?"O)8-'>%@3;!ULQ !<%% 2S%Q"(7W&+K;/N',!VB
MMW@+[4TZ%'T75Q=GGS\OS9,P^N7T\VCR#?&Z(-:B-D*HHC&!%];6EFCT%=)>
M*GB.Z MW0C8W9W="^D1HU(.:>KOM_S \&0_+,(7Q_$5*D[/QO!88G(R&:8BS
MRV(%K\=E,CU=>'X_UWSFT4Y9GCN_JU$R:)NQWLP9M47ZK!A#917FZ!R+AB7M
MDO1"N#C8_;5[-+.^]:)+?Z[6%A'&"#!,U;[=+!,C':UT(KBL"[ET:I.V8_>\
M8M]U<-7,]3U^GDSGU4%8]84;&!*K4\;5(GRI1OD5"-9Y*+;D4&\(HVL=+WDW
MFIX[Z3;2Z<WEK)&T.]@/+_-[%B4O>0HZ)Q? 6DT+J(@20L( *"W:$)/7S5-?
MKB-X&OK>0ZH=F,._5AGBF^$7S*]I0QV?#(F BVN4/V98SD9OA@7)+D,F"V%T
MWNH:4F(@!,Z(AU$$F4O@H77EX4UP/0T^--= !U?K5XID_(R?IYB&YQLE61T+
MB8_SBU-:O8;_6OS\W73R&:?S;]46F]/O:M6.SW5)&QC41=;B2BDY1H)"#<YR
M"\BSB#PQ[VSK2_=6V)\&VPZBR4ZZY'PA7,,9":C>SHUG.'#1Y1B% ,MK%9AB
M10WG%: +(X$EH91K7BGG%HHGPI+]I-O!E3GMFD@/_$0<_!F_X&BR8.$*G)0^
M:4^>9/*.ED>1++F3R@.R("4*4:)M?69S+Z"GP8)V,N_BNGMMDOKM).-X,\6
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
M.KA=NAOC[&_3>O8=B]%*>@^R8 +ER60,@KYE*+C3MF#&UN?+#V'ZSJ@FVNK
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
ME80OQOE5^#R<A]$"X]LX&IXL+V9?C\_C?5^=3:>UG7.8GTU)!3@;8+ Y.^V
MV)HK?@NQT'ZK)7?*)<NC;7T=NB_FIT&G7C77P>7$9OC/80^"%$YZZ\D%HD52
MA5(@*O1@K:P! 6A1'H9FYP"?$Z=VT4D'5ZN;@1WX+.CO%@1N:A^+FA+C<PV#
M\X*L>!U]P-8WJILA>TZ4V4H+W61OWMY[SWG\81[FBSC^MV7YL6$8O9O,ALLD
MJWD]OJDQ!</9?!!C]DSR !IKX!H7M98$1_HCTN[-9)8WR^UT8Q!MC?QI<.T
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
M+SQ+QH%&H(%^S@LJFS7;*$F(GGIE%M)WES/PV@N?YRZ\N\P;ED2[ +'R#C>
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
M\2N% F6%@1!,A,25]B8R)NSH?E-C'E^VV-!;;$C03?O1YT$V;?$N).X@E5A
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
M!S9[:.5  "HR<(.T;ZS4I<:U,SA7%"1GHW5DOT;6^F(]&' >J6 Z/&[Z*&,
MO! 5>;6>QTK@M@"F\&2<BP9JDUURC#4'K.FVTB6G&/=6E]97UFTJQC?\FROK
MII6TGZ0;IKS'^OZQ_#[[X^/,)"WH!D4PO@XU%2&!TTE!)O>!Q\!X$0_-65GE
M^+\_+[[]Q_83SU6]_>92RY?K'<"=VU/JB[U$-L"&?;M8YOGGTZO\:&V#%QXP
M$S*5)OL=F39D$'''6<045.MZH%M$/+WMNI^<![_9:PGD^?W$T$@E#4A6F[^(
M@N3"B9HM611F5#%BZQ?KNREY\2KVT,P 50BWJ?HQX.]QND;Q'P[==:&%WAZ%
MPAY"'^40V=)G47A3ZC46:-NI1 8O"N; BYH!*%!&)H\:#+T<@6&QT$?6C:O8
M?EEBPI.3FCV"I]]_5%%=)W5[WV'TW"0NP;@8M_T<>"D06:$+--@<Y(V;Y<[
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
M\PY=[]W1^4>NX^OO/_[XG_.\I%6^?'^?O^633>) *FAC=@C>(KD?GG,R,I4
MQH(U+*&0LG5>5S?*GGY*UP :&J"HXP=IOV:LC&\P?IO>B_W4@=B!,KQZ$7J8
MK*\A-'X?J 93UP!)8/V(ICN4,ZXU))MK!"Q(P.(TQ)R4J!T )+:N.9P MAY)
M%IL<M/IH:4A(O3O]\VR]VDB 7R1/B&"9)%H<JPG_'".)0PJ(@0<;@O#(6O=I
M>8"<\<VA 15Y'V3VU,( 91=WD28N2"M>8]*63'19B_.R(.\L27!1:>F3=Q%;
M%UD\0,YS \@N6ACI!)%;TIQ,7F6=(>200-FB(7#FH423BQ(2,;4N9'N G.<&
MD%VT<*]E/';!Z\78NXN?XO>-\(8K>7UDP7&*7OMP?:/LU=D2K1>E"&2J&.MT
MDG5<KS6V*,7#HV6OCZP]1N%KE$%Z%QQXAG37Y=J)-9D$05A7G-0$UN%' XY2
M^'HA[+=G:UKHALC_0:K]]%<^^99_79RNOZQF)L6D$QT%)(8Z&DG5MFTN0XY)
M8G1:^]*Z-<">)$^U4+8/PKK/YFROQ5$:U3Q(_G]E7'[Z:S$SP6;M0X#LBR-7
M2'GPFORAG-#[F"UY1*V]@-TH?8'<3CH;IXW6HU03=/(L:>6#9A&"E%C+L\CK
M48%#TCR2.22TC5/ 6J7U!6T[ZFV M]<=Z'Z[.%O.=/ JU,YUEI&8%-,>D)%U
M')4,A4=3VX@='FZ5U!>T[::UAE4>^Y ]_Y9GC AU@1PPYXJM9W($5#J MXYC
M9L*(YAVP=R3U!6R[::UA&<F.9%>2WY+D\*0RL/KT)2\SEG4-LXKLK*TMSXQ/
MYSFU7@@'!7W@0GE>^/ M=7:C_06.C?3:L"QFMRBP-+1GN(T0R1H%97E-U<)
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
M(([5R))Z+H*3LDL^_BIR4<U@3URUK.G]V(QS\1_LX$L-J<K8[&+DEUM:VGD
M'5&$@\.]MF9PA'ZB)A-@BP9;",@4P[WO6TE&\HL8H0"NFK8L8X)E223YXN;I
M?]XH3+E53+VU]K+^A<.G((ZAO*&PIUB7+'LKU_._WF<"70<)KRI<W! >ULK/
MJW9+GGNQ99O><+]V_QOG*A16%?48>C <0W**1O8P 4%<0,VLXP%,:#8PX:P=
MSZ9U==[)6!I8E&U:ZQ;7*WKRGT/I+]O]?L.FZBEWH"Y+1'<N-!%0TK6/>TS.
M@&J1AK/S0<+OCUXVDW,K;LE0EO=&JEXYDLTV<*UJ\N<)UMVB%-H:=%4/>@XK
M%::1,B]-C\?X$*]L=O<>5SC:[?Q=IZ6][</^E<A[$_:?'EU7ZVZ/B1/]QL&*
MCN2Q _53^YU,Q(YK?&<"-X-*R%2SE<:>^Q<R;^:>&1IN$._YHA^Z3.3L&!IG
M.4@V1P=#6TT!$[PP(]:-:;C7#"5QG5ZS-_C2R7VT8!,FL):7_JE@[6RJO:N;
MX[.=4.$+-:JW->78^B[6/?SC3=FCEZ$U&4-,@.3 !([1K,'H);7S!B@#0JI-
M?K2AS33?V]=J)Q9X^OB-6D2?'[MOT">@PT+--4<]IWHR1CR/TE_!\=D=IZ$V
M%P[2-@MX"QJKG_#W4]%]TD70S>'PE16R6!RIG;MTYF0AE(KCZX9].,B]/R1&
M:?7:I'XS7W5@;+7Z2H!4;-C'0U^L"3$FK44MB S849HN20PJ;#):&VP_&S O
M/E(^KNZ5%K-S^%N6T$KZT-2Y@@V5[2@\_./"#)7!$[4$%Z1=!_O)HUM=\\"8
MKFQ 4/F,Q8YKOR;4FSZ-C3N")E8SQCL&JN%EX=GW8M"](XA,3$/N1A35%4J=
MI/<HSG]ANH:2,:Z+XTJ_=#;8LR_J1H+2W/:5LY4(34*!V(S3%TD7ER=\)95.
MHW HO\2SG'\W!IM//B63)/IUZ+%"N\YS^931U:<;FTY74B23S*JY>$Y9M2S=
M I9>V'/.ASG]U-@P@RYX3MXBQE,U(Y"4I!9Z4[O=XCZ9U3.^I.RYVD#\0'O!
M+/UZN^UL^\N%,.][!GUV/Q D.QRH6-9"Y5OS5![7S9S1=B3CR7)'L_J/EY<U
MOJ_;YNUY.A>J3ISW'Y[KZYQ\QSDF<AF1<ISG&UJ+L8!K5.R#BZ[BFMD6^-K/
MED94!^BLIR-ZZKL#R>X>[FJ-[1<5T\\)GK_$67X1H-<4=3A#!0I&]\*/02E;
M(5NTD,]27N43S,N3B6\O/99U=[?**9+5]+/(<6'AE[_D!+N#$]VU[(4G'I<"
M<:055_ Z801.N==2_BD@C%)_;#GM],=L?:GBBFX5_K3";QQTT3_GH/AIX +9
MC<$U28V&)N8['%&?L#[XE;/G(.W>@4E-A7O;!?5\AE'UDOJEJ<TC2<]8MSL^
M6FW/8*E!-">P& (B+<C%9']<+69C?<G8S(Z4&Q]2FN@^T5"9:[5?K(3[X/6
MTSGFR 4!/H5;H4J% M\_JVP',7BVD.&D\_ XK(#)L?6#LJ=E 072XU4G,F:O
M//4856APT#I]<X!N?>.37':DPH?#F$X ==,"L[A8< K"DGMV#+M"@5%#E4[<
M-<14C2,]V02VCN;\SM!?,S&,]G86^X2I<&[@"V&SACUAM56W'&PSD+[O] E.
M\H!GP 51=\E7%\LWU$B*5]L9"Q,:2^-(_%@-KX;J3DM3W<.75C,&+Z<T/_))
M2K% .*A1A#.!XV.80 .E;8D)/.A0IN>9R ;N7PUB<'V7V.R\*^Y2KJ?/?R'K
M94^MICOGT/WH5YR!4%(X12+R>PK$04W2,H8_(HYJ%XFZ' ;-_]D>]^AGMRYF
M99G"BAJ<?BUT+8 R_9D,>9H2::4G"8/$"4_;$@0$7-9L_&=$ZM3:[ [9U(?/
M/GEW!1SB"'W!7055ZQ&]$!, >PAO1J9BKF%3L<);[==+ H@5,[VZOVBY-K[A
MWC+';PHHJV<95L;#6.\H?SSQDW5/+T5E1X#!K4C]%SV*:\00Z_V@=YJ@9[?[
MP1.K3KYW0PBN33C9L7K8_?RSSV%=_&=B_G"=A&YGN!-G^ # N?I+] ^<7,XX
MC"0/4FZ"R'#R).4:O:S=O#IB\GPB,5?BWO,RZ(-18LMW DG_;(M;RGO+I.YR
MGN%<Q7*C+M'?&$%]Q98-/JY&?R_@^&ZDO52ELDC!A>P[/:IJ.'@04#[P;?Z/
M_QV>E[/.1\I1_WP$/MIS3NTZ?<22D!I)[><(B.FK??H%)R>1NEQ7";ROL^?G
MC-Y64B3-&H[*Q69?,E[_#$WUMGEU,B(1%X2)I[AR)N_Q'/,;._)5].5&EFHB
M$8_JM.+,,"@4&#]0V5%D\!N2G5*,-,M1)TPDR/*, C^LYTYZ^E+O\K4 <.Y=
MVI*B^)[N-(1 ASK4P>8KX!VR+.4.F%4YY[[><9CL__PA?=#ZE*5A@\81U=L.
M"HV/J.+1O0 Z=@0Q+$;,IYZC70:'J18H"W!I<4LJZ AX?Z6O;CH &?S&1@I]
M_D_R35$'J)LNAY0LO9*=Z-B$MLXZ6-[#@-&ST'R>OTUD<;5Y43^%;?PBR#K8
MW]QHKQ+A82-H2$:+=J(_YXJ)8>OVNZ/:6N9=?$G\&=N#LD?]O'VYY!Y_DMNO
M&1H&%7-3VYTJ,)TA:"U_PTPH"ZG'=.%'DVZ6?\@BI*F_>77OU9EC4KS\[ #Z
M]65$3E.',7F$"<2G9,8+I.LB-S!$?=@T?$:+G@\CI>7V/VWSF__3>G>E"EUJ
MSV+N$\$$^AC2H!_>PX^@G[IEWO2T<#5<(J'4@ GDW#*3M%I9^'6U%\WN@OX.
M:U3 DCMF&=RPT.BW3:GPGC_N'W7%30;&J@=SQYI66$R^GDCCC?ZQ+\)"Y[CL
MGE-RH$AD)9U:I(D3[B5>(M<\6*"JN,3JZ]R:=X.IWV5)L')A9<D:>[V.> )K
M7J )K?0OU&IL$,/)\Y.4;V3]Y..3_S;6,[X\MLOYIO_B5WADW.8_WF-(DW$6
MJK@YVHK1#R=9(8^COR/JD0\Q_BJ9L_$]!Y)@QDQ _D7;4VZQR%\_;/B-NB/R
MZW^M;&:\)^8MT)N-/ AM J!Z>1<3$)@"L?8)71YVW2?=E&I\G-UU.^>>< 8,
MH_^SF;:]EYQ2C1!4 --YLZ%&.!"M/)[;>5SONU='4%#^JL2TZI[:-_?L$J)#
MPOJ71TJ_:\N/G:EIP^#+<+!92C ]V>@NF=4.IW=0-9$3]I)OA$38W/AS^#?F
M@T3;($0PTH&H[Z)_SE)U4/KDE1@</ADN9F(,YO9*M*T?UW]@6^;^(U#H^8EW
MC2U6)V=<ZAZ6Z*MEI7_^1'3'T(37&5S)$%K-9E*B$1GZF":_Y'8=8I7[%.9&
M_W6UJ9YS)IC3<_V3&-MV[RH _>DR0I@Q *7)3@0]"&]0B">/7:;7[C&!HV9%
M55/1'%2+"*^6G2K?&-^O/V*"M1)ARI_LSZR93!4>2J%]H-=B\)D,/3"8M$Z
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
MC\T@60EW^S A7Z=W\#RJJAF^MF_^SGL!PN#^=B<HOE*HUUXQIABG1PCT9GA
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
M&BW@!F;=_$_WHX&(29J()>,?.\(6_3'Q*A.P+NB -GY\&.[G9QHTE'PM=IB
M;6MP-)+J1M,BZ_=E3L?W+W"ACJD-51'@7 L!,\B97]N$G=*'6?IZ_"/96K>"
M^G#X+#@$(+V0G*JDA$Z:B*$"/%0#\Q+3JW7=0DOFGR]1STY/=[5X52;,L9(S
MGNT5"F3"\1T!&@_AP=@'6$&4>2#QE>4B]=KT>8>O3:5R]:^EASYY#>R+'@R6
MKN7=:RES"W(UWG5RS'TD1VD^?<8G1]_^\YHEVY%SG.]U"=CF_@TUT@YE&S3$
M\=/<7G<\K5Q]W#B9T&[&=LCRW7N5QG@9V2_)'UG&9,_^&\<=CQ".T*880MM^
MBS%T7 +&CN9&W1O9;%<+X35$U0;FW)%O5SPCJ+N'PQZ*0?^,X$9O50&W%T@.
M<^?'" C:48U%OS@4Z\GARH!:$&G;<71%370L\(X[,/7;49G@96<:B7=:L^O'
M_)%A0'R^]NIE)C :H/(3:C%([9SUA!3CJ6'J5?1WV)%K9$R/=4' S9SYR!"9
MNKQK%YJU[$X+A-[Z_*7EE*B^IN0G1T0=0RDBRIX<WFTG&''5:IKRP>Y\6T/C
MCEO@G^SSOUN,$YSOF,)>PDC!N;0DN"B$!YHE3.!W9=Y!$(-[A0J!>+<NNL=$
MZ7M8&Q.0=2.?%Q#P-W?CEV]Q%!HH?ZT<4G]&MIA]KUJ%<7B5RD4+HR>VJRU]
MD%VZ_YN /+)V5!OJB&F)Y/>27M9/]X52&WY-2D=-*-)$G2C<] HF$,($T@K8
MOM'$(HNF:$:D#6^J!6'+0?G.RH]_BI9]DV0$ZHXM'>8:LLG0'N#L1M3E$O.I
MHJB3]!@4AGJ*YD!2S-!HMR&SS5F_7IMQS/15JVI_DZ*JUY ;VG;84S?_R;'P
M6UJG@U8%0/VKE%QJ2#(!\N5LCT2"3QT&M#+2R]974%06_1%4$(L8N,49Z6/2
M>"!9@AYB BP-Q@J3%\8@&>:AMD$<Y0D+YIA+*5)R8'OR"<]OITM&0O(4GP=O
M4.S"@J<X7E*]&(/WCDLUDU 'Z1\F&HL_O8Y^FFW@O:VQF"$C?D5<_W,[_FQ&
MOCD0>1R2*BI*BO2',DQ@W"-H+PZGC0OZ>P)03F0"A"U0R2D)=Q,Q'=YC(C5Z
M/)(H]TU7I<K%D2"4YZ.7_5BR:TV[Z?)0Q(EQ[/]$I)4V_K&#R)<RI DQ>"9
MCUS''DBGHPMHNO7D!"QIQ?0=^!"5ZTJ3D'][_]<7']$<\O7+VG' ,2T.(\#@
MM\H2'%1-I DO4>+H[_<0B9-8UK$+RHN5T;:Z&L1HJ]D70Q-EQL\LYABE.V-2
M][]Q?H8UPSNQH KG1BRIHY_ F0&_.2P:\;AS?U2^K#AJ<4$$(>NL$W^XOEA$
M1DKZ5;RHVL/@TMSP*0S)'!&#J4/$H8%!<B4E@AQ23+!%])0&HVS?K#^2T[^G
MU;LC"9/A.2QRE!_MMZ.O@O2=XIPP,0:]%P6@E//>U7@ L;5=JT9I2=?1O/Y_
MZQ^79-4%GS%VB/WE?/LMR[$33MU8TB4LJ-A/?$EE88Q+;-R3Z'A8C5(BLXVZ
M>:XX*=_S.M\WNC.@'*NUXOWZIF@6Z=+1&!-C$F*C$6J-F7T&]P<R=M$R#JWE
M 1[=AA^+**.M.]X;O;B1M?:V3*WVJV"W.,O0!NJ# /)U0PTHXT3D*0_,F7F
M(UV>N^\0MRCGGY$>OO/P6B@3D.$'JRU[,:1_$*#R2BS\)B8)VX#;Z%^"\_X6
M HM[#;\.8=%W'VA+2K9-OKP\:B7];]:O;,,XS;Q5W"(6CE]$'AA\A0"?=0/W
MASL&;A.T'4^!2.D3!LJ"";PK3UK?7<</8<D\UJ#QHJT*8;Y<>BN%V*Y[72QY
MR\M7.?2U6BO/<Y$WKV5*^2T *1+G17")$@D!523Z&XX7ZMPW'1KT=^W_Y,%H
M,@=SF[5J6<WC@W/!+4S J54M_CB-;'I\[N^]!DUYZPRN+;*KTI%Z 9[Z1\9'
MG:>P Q+D85!_>9F+"5S[1$AQN)'8?S_E(@NUZI>;G@#^(T.7HM^#39P7!VM)
M^^[@]24;[="2B$3K]V.-2@Y-]>=T@B6)\*XI[_@I_.2RQ@,</@]!<L1,(7M;
M)[!4 =2M423*H-(],N9#[QMQT\7C06Z_"^2>\4*Z?(#UQ2W@%*;3X>(:G.0J
M$#NAE]YAVB&2_#12)J/MEBGM&>PO'8[/*,Y#IF*Y7C7G^F06K[' J"4_SL5[
MOJ1*_3T:Q07RN5%JZND-."032)YP[?A0.E>ZB2UU]4A-OM&6'LKS^7>JB&;/
MK4]2+NQ/T;_9]/\*J_#_EK>FFAX$$%&,K_._,=E]STDS$#$S\SRVV5KG4INI
MQ5P7["+PQY)"!8VA2YSIF2A!7T)F"JS)*=7(%D]T7=HPS"E=W!)>8/'?%-A<
M2?\L7=T6]^*IG*A72?56(U21=!C !'P6$C'U6)I:S71]KVMBTI:1XR=8TM[+
M0)&$S7G_._D*L3P\MQX.!O-2]Q/GUZ["[%$>X%6(KB%X]W /,$)A/KAO>U3.
MAG&U_#B'5D/LXMUKTM"F>&-YLD/N[^$P^B,3:"K?X*&>CXBWZ/@>QH=<1"3)
MYZCDICKZMEP51];-OV4_72?Z1\YTJGL/J>;/NHR;AE%\2'[$2&HH ^+GK$:!
ME1*!H>M;98''/9?'MJYZ6,0M1M&JQ@_IR]P=.C:9'M%&B0.S2.$4<S 9(B#?
MP!WO4([RQ6$Q-X^(,.L<MQL9*_J.'_>3]WF29C=?CDJ]7%/915(XZ+%H$_00
MO#F\=W@&1M#R+^Z>UXG^]W=9]Q6M84;6&_DO:*^;DIA[Y48OCJO &-P+T%N_
M(B.(J80/PDM.&V"K>4VJ=YIS1#;?I=^SO9B;;_[11G(O?,BDNPS\R7KD$WGM
MB,"_]'B3(S0M\._A;#?H2UHA;,7I,($C_KGH8P_+H=;4?^7[]//[S;<"%E<.
M[]5$C$&C7&Z$(3],?FP#WBUQ \N6K%)M<CU2/IGW3RW)E<C4;K\>D/*6L9=Z
M8&\ GTJ%\#:5 3 ^,=A!_:7%0%VL@']0T&L>9=I ^\<-M./''Z<MS]3\6W@H
M1>F_[+_LO^R_LYVM8XSO3*#>LGLA*12E0![N1_ $F"CD.<NFGL=->*6L%MR,
MM/E5.X2XO30I._&!X__B7J W!TV59?ZN'D,M58CN #^_D)VY.7<KH3->YJI#
M7R*X ;G'W[B!6O-;"X<A98.=WEJ:(V[FD]R6]!.-+H>67\A>.%<46/O#Z'#/
MPQO<UL CBZ *LE^JD3;>CG<A8K#/E5C]O&0UI^;.ZS7]^L.+S0\Y7.8RN0MO
M6Q?R<:OD@VZ06O?K8P)\^FD=1U"FHRCK4OFQ69-7Q9YO2<E/E/WWE65O\99D
M4AZ&/0$NFXO\'TR+0)@?FK=I:QE5*CJ_/2C+_J^]EK5B#+!E*E#4KHV @/L9
MXR-#8C*_V[6&Z+(HT"C[!%.W=AQUL?NU5H^$)A.(=JJ*X"$HQJ"5P1L"XC0=
M<O53 M_)%1.+\F)$_QW6K''.M*RL'WZR'X";(__=)_^U4)@@)L N!G:8YE$>
MP4G ],$$_ TGJI,./'/?K(5V&X^V)^@HI=W^^/Z4Y@^OF+/W_\>LGVHPG,@,
M#3+>:ZI$RNG5G'0?E/H\*&QA===+@-W*@#,K(R@7-*>>I_&!5';Z<*==RH%
MBO?8<=UQA-GX%;R;3FP*Y]2EN5E)\?6&;YS>YB+V+/]AM[%'&08T*9!G<9=L
MUX=)GE%,4)6__<CN[9HR9P'>I^1ZAL_-.XWGSA#=_;IPLRL4;7"2< 8%(PU2
M,DD=I97N'8.V.FN'N#9AU-J23E<+BKTM<']/Q"D3=0'*9PRC%\MMY*?1/9P$
M:RA_&$:\,8\\M=FYQR+K9F584G:Z2T&Z^Y'E?8 B<2HW$66YN"7VV[% B530
MYO<F()>D.F&8@+W]^%RH)&^BY7F'<<J)+'>[7KN9,8HO*$VPHL'(B4O-#VFZ
M;P;]FR^O'@S52 DUJ'ZI/.%X@JB:P;)W==7T>*)YY-%D*AJ25"?'BT9U,F<&
M%W=SM4\[>R%%75_=,V*7?''(^K=AWM[ SPSG"><76N_872Y!^K20O2B%C$W"
MD.RWIE(7G9)_D?PR_K8R]_1:SO:SZK<$'-5L=H"?V_IG@N [8[-K&;LL&^-.
M!J1NPG[7<#I: G&,=A),+([(M?%30C9XG#^;]/WC)PNE2Q/BXE?CM$=;#0&E
MHI3_M&I+PD+_0AR6155USRX=+M( YYD-%-9QU%Z_'^?V=K/PJ(.ZA16;1";!
MB2A(TL O)(8MB*$<P/I",,IFXAB?.A-P',\^5IULB[?X8HK,75YJ!.[]^Z^$
M8T5Y4)Y'4V/Q?.^=@,B0QS,_NA:SG>?,5"JDS[$=B5X?0,M@.LW@7O"'!8JY
MG04&]+)V1;\WYY0SEH>,+UR:V#RCK/CDF$7W>Z_#6Z;'!\VOTXS YZ0MPD*"
M#+FF:TMJU41F5%'>:[PA"-R\?D/:*<PGIMNHXF>X:(LIN\CE_S11T;V]G.>^
M>J45GN9()%+8VFAG0%#67/S&#2, @HB/-88D2V(659%VD?P,C,0+S, [78?>
M;UZ1UKY$EFZO&^I^TP<)Y/L11@H1XH4"%XLJUV8ZGA8&A$O,MU7,3KNXGA^=
M\_3X4MO+&Z@UM-G#;F\@]X(;SY!$3\+JMOK@PI_P-0\Q#;!XVKG*0F]Z?@D8
MQU7V2&E0ZV23C[UAW4\!5V#WXBD5*E7Z5%^PW;\?$F9F9A1R" 2":59/BM:7
M+Q'V?WT\U+Z_N$^,I:J@G,BA)+%NNQG%SKS-QAS!U3Q$4M5RGD>QVJ\W+5J
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
M?=TKQYOTD?.,,U IZG4MC<[)R&N'($@.)<.]Q*L6V=T]?6"-(9XF/:9V60H
MTU;,H+F9E<@F\@?R,2\+.5W\LI-:9PRI^G%4^X*M^1#T+.<H$^.C6_XAJ#*U
MZA\"<P:&;\;MY,+BD!2>2<Q?LBXH)H_JS42]-4*4T8<2BX:0JI;-XW4EGQLY
M"-BHMP8_3&<O9OFTXV8I%/?UI.>0VX-S%]#"1S)FEQ"<0'.YC\5LM:YL!K-O
M/$1MX43<!@J(49RGQ/$M83RR^/B^UFYQ$-G-ACF8N0EF+,;/F#\$'3>Z6#6O
M.EU(>4S9N_%I* )WB_M+3(J\0]/1\8$BLQ?,H%NAO,VQ[^W@(!8YIS? \8RW
M"7LOY%O@^2ZFZ7SH5/C?*P2&(&(<0YIBG".7W 0,K)5Q-^J_G\YH=QLTJ#+^
M6,FV9+S9%+&9]X0+(H:F24'P=H_(=N-;\2OO:*(*VT]+SU"O>8>?/Z78S8^
MKKT$9M*1W>:U1E>1^"RF.[SV>/SL)%8-1NP3;!F3"(@#(?'0Q]#\/52\%ST_
M$(-_P1#K #X'E^OW#"$DUV]MK!OQ*F!R/_;@M*[P-)8^$.?F>6$H\@I\%] E
M)Q/V!K>3#/0'P(E%.W[.?.T^2A_;[)1#<JLS*O/#PCP\C9)N&3K8N#E1E8%!
MBC4&D/:M9GS11T :2/(.#_L##JQ?-S0[[9QX4IV6'"GOD9-K_=^UHC^I(B6Z
MJ6'%=HT!@6W^B?PE)3%;*S4@9W0VTTTWHIIL4F#>&G/75WIEP,TS:DW9DERJ
MJD8F;UR?2U[=61+-69PY\7I%34S99+]J<\1PY.*E.0U5];)2<?9;CAXGJB^F
MX&>8'$IR!#$C?N1R$NRWI"?3>'C\0/M5#,YLZAU'H 7/N[<5QP#]6/G\S4B[
M9K,AXDTX^^3OB\O99R.88>[?5Y9*@$3G?TR$P1@+# %Z%HV7+'@M.&E)GER9
M%FV)?-L<3P@^X=C88"/%O[ _.41P&<F,[A-G>5X@=HM%[@\8D+/D8'!YEH/^
MTVM'T;@_H=D.0?'^?WE/UT#5@-=;<OY_\\R:LM:?BEI8M#\VO6CL92<?/LMD
M0>@;>AP&_P''A0FR$=G \.!)ZE4$L*BO'CI,,?7#UP95DMP'"_=G;(83+\+E
M9'/:Y1[P-B<3XX_.90#F5,UH)YLY:M<AB+<)E\*XX/IF[S*)P!+H5!B16J+2
M8/4Q:39EEN.7<@3Z^2'(V]!'!P><]QX4F=94O3FL7KTC>X+=N\Y2#%4E,(@K
MVD'--B/GCR&!L]X#:I<IC^M)TH-];)@96&/A\EF4WZ4P4T$QHUPQ"\A=:(K%
MNC'D-:H.0A.&X&>(A<N+EPF&@(TCR2&K\5.I%8H;2.#=>2-EN7J>-531[*>G
M.>O3<G:Y]39:'REY:Y3J%E'&X,XCV&!55LS[QF.Q\/2_Z2.F9*6DCM/++6D,
M?YN&1L_,\M<5OC)8ZU9Y]AN?6]%3;2!:P-'3X$T93J; C<.8WJ.&9$8R1)SF
M9FN>2;A;<$X5#9V<"-S/\-K[NGL-"14Q[DA$FP#,ML>9\7G<?XS94IF)(!C^
M.5RB0_Q51#-VWVW[6B?9<UU?KUBLD&K$"/Q^JRKA5(*='.+/ _,6F@>]',,,
MN^=AE+:C^\4<I;8UT/'3C](WJ]14^IRWZK"'H/(/R;>;2\6O#"G>$&=1AG!R
MYQJC7\#P[R DR^!89%UX]P"]C,$9?6_Z[TCQ1:]I23AX,SQG6'['4I%C3M$T
MRS1BP*,WV/!F%B'6&/(.=8(F20XWI;]\A$X^!)VDA09'KEC!>=11R&4KK:T\
MMVJH8QM;UWTKT-HISX9^A"R-DXQF+J9>1-2*3;?-O#<EN+@/>;)YU)M '89%
MJ7T^*$Q<V;4"R^UE-$2NYWZIF?G)^P\W")Z?H61.(/&I$#!#W06(.\#U,[1_
M@).:P()EPJU6$>6=EQ_6APE:21>=S:OU"#^NQQM9<%3D)GHR# 4H@9.0_AIQ
M2Q<[,$":SA6R5XW<!LO=UI:(A/% _I4OI0LGDM0*<CQM?QP#Q>0P.YD!%\DH
M_/B6:7 9S?OCYZG5']&F8>]_&YB]J6YP7-\9Y+3S"'+'R5JK]\:G/HQTA\LC
MN^\9B1(.0:D0DL-1K@,?S<5G:MV94DSX;&@;J^#AJ[8VK7X_Y_)9-DM[N5,_
M']<@ 25SFE #98:.A@4@66C*TPR%];;PY*V.\[;]CV\Y.^=5T_/EW1^\O;++
M]K5Z0D7U&LC.F_M822B&J518F,IRBKFY'Z)U@7OT)O7B0Q"73"*!KD$U.[Y
MP?C\"'JS>]O#HY;>Y>&1]>;)124&-],I'']&3V2""3>GWX<11\ATEA%<@\VR
ME"83IS$*?08)H[+OFC7''!O.JV4FG#1;R3\!;D9V<S+D@,UER):H;^!*%#6]
M@K27NGTDN M4!_KEXJ[<&,Q]-V4I<:#,)G5&>%4/20I"/6GB=5M:&SP$-:'3
MFJ+.%^\]-2WK%ZH('7*2+[B!<DWJI  *) ?"X!:9U&X!&))0O9MO?SNK8?*]
M@\0:-.4;AK8BPQ^K?AU\[VXLI403TK<#7KQ!]"$%=>'QVX]*3\7W-#15%US8
M+4O/OKBB,A06/WK7_-03\_/H$1M ,3OYJ(:()G /EHP)V,?B!ALV!-ZWDOEJ
M8KS=*0_-"^X6S$W*=U$'[DL^#MF9V801@ZE6$4>OO86KHB/)X0FZ@?[7)A5:
MK$:LQ>5\[;SR[SE W943^3:XQA'Y.QJ]X[,:#"[F6K-=!:ZB&H-[;5C\H&S?
M=:W:4YI<@GDV<KK5,B<M>CVF^RR#$I/FH%=<1TY=6--A\6=P'?GA-3)NJY5Z
MV^\0)(4XCOA6*DSFZ$:?- T+Y$.]W=1RNW-G_J3;?)0YY.E.O^+$+PXE=ZAF
M1SR6YL[<YU$:#R!(M030E(?D0U!O-C^]JI<_D>D\K;D>8%^.])_(<3'A[ T.
M/7?STQ.]7 MA<N66?WE$+X7)Y'%=O52E:!6@22,M6O>]WV7K&??XU:Q5F:]C
M1K/Y+T2BO#>Z?D8&06]\C6\F09,K_%&DD*7JMJ9GX3R^,:&AQZ[&QGTIXCP#
M7/Q.B-TRELLQEIDB41D\<R0M9(I$\I.C%,BX4E7 AU*0.W[BH-$K_'[="Y$+
MI_G+<XS20-=4CGUE.27U'2'!',<N[0PR_3^'6(0R8LQ-FV2?6#L"H<!3PT8_
M7!/0F_WC\>1=WX6-WSMW63-GT2)'M@VX7R*+TD20^.#DIDPM\:U_$305OHI@
M^;LU/=#V4$F5^+U88Z&U)G]F'/.EN0!W'[CPWVFX_NA,V2[H9ZW.;L:!]S[*
M&42UI:S1,9V\B&X$YQ3-DJP\3;7]_J^U//T2B?%,<+Q=,U'+PFG(<<5Z2#SK
MNJNQ/7&W@$EB;$124/(R7<64_@KC@9$$.*Q^S,84.W6ZG^'/Y7BY:J2I/= >
MZR[^D,/X.@N33N-0C#F$(*"QC$F&'#<RI&I'6"V;]Z$$^OU#"-/DTI="E -_
M2X/>H"^.[%I&&R'-%CW[4>F/T#D8?)V!*'$_F+37#56@-S%D(T0<T?^B<EX!
M-MV4!$E1_K,%YODK? M"MXYG=<27?.-H0W8/MNCMH=@1HJ[8Z[G]&BG!;F?E
M JK>MV3$<6YP5F<#ZN.T%Q"F6STX8'I:ZRH[&+Y]'D/(9K &!Y2<R,,Q%$AV
MF/^SD;$TBB9L3JDGH[:(3$-=!SQ)>X3.%KT7U33C;ZK5%=\#R\^J&D3KG6L:
MRDQ6'O-(U.=+V\X0X&SZ7WH.']*C*GMNW)@L2N0EQ%CUN:F21=+9Z/^ZIO\$
MRDW)1$R;G#C+^DKQ7+>5)2:4_3PH4<:!N<"?@6#T)KPN?&N/;#\P::ES" *O
MJU1N\*7G"+HY.G4$+,7K9;2N%["^%SX0I$I$!Y#,!\?GXKN1 AW"-?.N)K#D
M0%F,A>?QN<5!;E7*#ICPZ$%7_/QQCY,6'".HCQ":H :E@,[D_'%^H+ '+M18
ME9W@G/TRZ%'5_+HS@R$H0_5UED^YTF!ZFM-C@4?C12(+R3 8BV-P4TF]E ?
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
M()DY^.+38,LOKI<+8N]8-[?CF$M[^Q#$PIC --66436B>0&;:B!NQJ+TWCL
M*SE;:)/&^:#^#LN(ECBX@#D\1R>+K@N0VS-K,S3)F1K$> -CM.U/(M[_)D?V
MZQ]?2_6IMN^+EF4=G2WY66'>7*V7#D$G2GUA,9;4/Q?#KQ3?#)11\YJHG3&L
ML2=<BV<UJ@V=?*+V?SNSX>CG\ 797$@3V#2EMT!A 'QYKP^>L=?<II1TMR4.
MQFE2IM(?(C#F62*>\:KJVKG$."EE#0XINI,I2%;6[#7_I0\9(':0\$YX'QI0
M>!R_C)EOL*&W1W.02W=[)49KR[RCHLKF?[_7T<\U%4NZ 1^]5*4CY_Y$>U?;
MHP!=_>X5^#F#']FMVWA4AJS%._40%,2#3'<(;W%3T.^G&1Q<*G\04_[Z_',+
MJ\ Y^D0)I6QYAB;H<@6HH89'>%,(GX"F<,\P0H.';>_[<I5!V-S>BK8XBRM3
M_[2%9/W[NRK$L@LA[AZ=@IR !8U+ "H#SBW]Q1C>EO@K#+O/G4];9#>_YBK]
M;$QMD+DA#5ZBU Y2L/1X!A=BL92EB93<[QBTM?WWO8PK1Y^$B_*BH^$3*=ZN
MJ@&JP\-SW5A.9>-[Q$<W.-:\DV'X)_;_%314S$6'T1L[7%<@W#YCL ::5ENH
M"V>96)^O?*%M]55C[NA/WU=>NVG^4R+:4<$1DI0L^K,\RE72TL?.$]\",]/6
MQ]^N+WLV)OWXD:N;T?;SGO%PP-[/F98)8QD[DA7%[2.@095W9'S16](LOM%2
M1UJ=SM5]KYH0M DK?F'TJN^8T5)QZZ";_RCF/F[6W?BH^G*T 'DU,3D]# (Q
M>5==5$U1>3-X8HHS\+FDS\JNN(<W*TB 19[[X+\T$,T)<"4E,[C4J*;1EC/1
MGG@XMFH Q]98>/J?!E?$RZVM/M(7QV&VBJ$B8W?)D+J]CR<Z^*>.SF]>C= @
M3#<P@ZN[9$P*QHLJ#B'@DAJM+UU4W!,0TOM*FN^RLMP5>9H<TO[K;G5(]R .
M+H#!%V(^ZO=CA.X XX.0!K-4]8I(%:OPD,KQ4/<UBT'5/\WU ]5]/PODY',M
M1_^SZ8;-K>&SMU8(A21D%R[)V2:I<;]<X$[_V_G J&16EM6GJZMWS[/-/CW_
MBJ^-J.[15&!X8?ILD1[_5?(VYRP^?VB!A9B#N@E70_2@2%887D3_(4C4R('<
M>POX'+,"YP?>3+S*/03=F+PU]TK 9FU!?T1NVU?:79Z<F5S[!_K^S9-SB+.T
M"R0<LUM2VR&H!RWF$MD&3VF,RC2@@\1WWF;FI/R]UWZ*<DIBWYO"Y*JX:TI;
MN]2+T3?H)6H8GQ$Z_ J07R'II0U$RAK<(0KV[?&_*TE6S8A]M@*]]5 3?O^F
M,42#=I+9SS7Z'.!.%0(**;+DELSM#NM7 ,JVB+)FZZ+;4,HE9NSNT^4+\OG9
M8BE4$F?&G?,T.IV033LYQAQ2T6T43T<X]2&P[01X*\S?L211K1+_;OHGJ7WB
MLL%ZFK$]46M64#4SL8V#TM\\@5K1BV#X CUX0_;6(!E&N=L,;(97K2,%5)6>
MN(V\DM?RS;7VHTQ:"%WKN?,^@ZCPP'US-^0W\B-XR[:"T8UC"^[D78><##*R
M%-Y.6?N121\K:?Z:*7_.='7+(3KV)VL)<WFOJRSX,'&-P;_$D:P#P0RN_7?
MR(T)AIHK4 )T.'&)K%FXP!MB2A;X,^NAQ*7(OP-+^Q6 \!%*OS$X$?,,37HC
M$:KFNJ'OIF&0_8*PKY.891C<-"XU*)#*%=BNN6<6BNTL84[%X*B(:Q:<&^D;
MG$:D&D=K A75T3KDCIWJ%FQS>O#:Y9!S8KNTU_(V4GUW12V%]&]5I+J#MX[.
M' 0 WE1HM%LZ)0$8)(<[ F4K5I8)V*"*FGFQ>\TE)]2Z,U=?K+XPTVL8NH1Z
M?N9N-<9SPICM :P1M35""J?4 _="284KWHD#917CIXJ6''_N_%&MO'%I_'C\
M\Y_B<D9Q7/8GRN-QS+TM,FBA2=8'J@<]0B6CFJ<_5T3\]^>2UV0037>M0=W
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
M!^\?['$3/^(_"(]-GZ+%D&=Z8*1K\$0,J!$MR1B$-[6D_F%H1CSVOS!][W]
MN^HJ\CBUE FTLZWEEW^!"[0JH\[IL!P<O=%/I[]F:"&^(NOED0*=[!&3UAPN
MP2).3L6_M_ E^QI2_5,!0YO#IFOB*S61**(^]1YC4H89!,=! 1[*<U)A7VL
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
M-9<1A\&#S:WH/@Q39AOJ(+64I@V (1DHZ&)E@\B7IVUJ*RL)9<TEZ>4=4]B
M@"!?QUO0QX-2;E8*"<ILD"V8<A$!Z-CLM@[G&08^<9!%/+CQJ84:'"?]=?PZ
MAJ"D-*[2ENIP[YJ8:K[8$Q>'>H-!R?YZ\%R+XG?RKP[AXJN=]T.7:P/F$2_G
M&,,'MMF@VS]^6[0_[U"A[=9Y+T)SHNL!//_&)MT5"8'A6KD_?"9>DKY3&,AZ
M6G,_6FEF)F7G#D7C0MGA\"$CQO9Q0O W24?K4W'_RCC^CT:[: *8PVK8H!LX
MVIVE[V\ 1S9(CQ/F.+ XL-:#0X*RRB!85O;0&S:HW\;'6M+UJ\V+?WTC+/5S
MJP\'J-ELS%(AM!)*TD 3@%BT=] ZQQK-Z5<Z<&#/'^]#Q<@XO/:]*\KZ=D_V
M7=S2*/B;D@*J?/ZUP#1Q.S6$NZ?-NCHAX:F62%%N;EN?L-BK[N>'8BM*;H)D
MI089O@ 7Q8,6/[II#J$V+);GD.%:0CEA@2&5'@*7Y,[E+I1LF]F!TZ,D+_*&
MR)P=ZSA>ZHZ,.?TF8[*_FV 68W;%54#8]IFC9!37*>YU;S]J$DV6^9 %0;Y
M$LD[&VS0XCS\"D':X0+<2N$7Z.ASF[37^:"KB&'^/9W>*:"/%)M[YE*4\>[)
MXKW [<639E:C&RHS >7!+L$\^VO"3S\'\=FI%B]GWS9>P\K@?& S_$M3J3:9
M%KKHD2Z%R::GFOE.!9\'C!9/":TV!IQ_"^+"18$&SOU.T>0VZT:+4UIB&<<#
M.0K#@PP?L!V[!9PQ.1!:>/VA)4+VZZL'>U[1N#N#1O]#Q*A?])N8#V<!4TZ4
MJ2+^/0\OKPG\5Q +D^DE;MUD@T2_#2NX]G,TH+;P^.G_JWKP7WX<$6C2DO5&
M.KP+#B%)./"<ZJA(BAJO"Q]0DQ7>=^ZA@34(:COXJFP^%N2?C=R#4^"X/5'
MS.F=]()*SB*$(3%%\YWJP)"/_S@PV>-*=7[1W#P&S>;/\=D76A,Q#I>/'D;6
M/L.1GNSBKG-L$$)O1FL)W),):.'PW[$BP=C].B\:*$\*SS>/UQP:1V@OQY&G
MW9[](OUTNV2[0+I=-6XZ>%KXCI3!G+6@Q633\\;13K3MZ-@CO]M!T=AF&$,&
MQQ)X0I>Z6VM-Q0P48F2 O*GPE@0+I8KK+3X#E[//^""XN;\$Y,H7)[9"15E$
M-@C,!I$J,!0[A"QK%$LYKQEJ+D]U(5YN'3<JDK@8H]7ZK+6Y-;EX[D-X'&\V
M7$[<^AJ7W^W+H6;VX'@,*1WWQI4A-MO/!K6X9F+\H'(,*>I4)NL@2J\9EW/I
M"_I(9U--?F2D#T8Q_:/'NDOV^P2>;"VN"&WZHYQ&O\QYQ%ZD:3=8M.-X,&F+
M"^GD,&J4NO=^U F7+#_%IJ:V?:D*CK&O3L;N:>GKX8\+NW]H[DO1"MQX?>;/
MM\L3A[_F=062=Y,A &.."^EC5C,"1/MQ@!9TL[URGCCRR^%Y$*&JH*N\+B='
MH+-M4/KM5W'9U33AJVFNW[<VMNAZ#$5F#L?O0/>AAX@BV_!9K"#29+ \AZ\E
M_&_ZNSTVA6'!!F[Q[5*"(&^I/;$EJ!Z.Y70P4S"D,DR#S>9Q:C0Y<#.'[IKY
M0$F(ZC]F2:H^0N^+_IN^<O^B]\?)^L=KZ5>;1!!:H1GJ$).Y[=I*2-#N57E^
M"UZ4T00*2BU<6DVEK.(WRJ^@K"NOY^5MAM+W*4FU"6>_[Y!**_UQ3-[CV/&E
MNF-I#L[0(CLM-VLW5/[#B@N7HCI'5N19@I5@AH19+U@Q4C092W' '0"R;CG
M+Q<X0/&$J03"Q_'SCQB;:FE5=-;PX$WE;-6@]P?M=:4L8&,A&[J_/> .KHXF
M4?5SASSG'YPO/A,0&SB]5^=>3F-DOU89L+6DHS7 !LFB[,B=>VQ5QVM^%R:.
MURB/^HYWC2)63?,-9WL>I=AXFFEJ"/?ZQVIEUW[6Q(\_+XW:_M[ZM<_=!/(:
M ICZ+=8R)#P6<1O5%>MLT!N]OE]+S.L>A:Y $;G3QKH0.J'>J<DZKX<PB.?9
MR[-P^?IPJ>[L_)/'3#_Z>58WIFYJ,\>W&=.XL[&X")&SD\)EA;SZ1KATMXV@
MG5,OWSAKKI7G=S]R>:T:8T:D6"$ 7=&>+4 M*=[<D;)#QL6BG,F*\MY?^AC2
M2K(MXUDN$0IAC;_L3B0OWZP[\@)^Y$Q)*V%P)>DKM!<"F$W1%%L!8[*7/6FK
M&_/@(?!#43IBT<NTC\!;,KXV(2BVM]C>8PVA>IR7VI02Q\43#Y-+_Q0AE?%H
M_;!9I]I=C)""\V%G6GKIZ*T1P+B%)?";!"$$XF&-@7B<&-#30P%L^O+<YXJ%
M.R<D+HTC+(8,!A_R%:$_IWC)A 7[?XS3'X9#6(([NP5BWA6+,RMTNDYB\,9-
MJC@@LASPGOP($UC/;S:]Y#E<:Y0S<C+AK\APOW6:?/C8C63]QC7^#46.-EFA
M>\ *:%%\!7JF^.1HEP2PB5B."]FS\,D9U_3VGK/)O/;Z-;^D&!DE>]N-9US:
MT3[H2@J,(2W*$@A>VM(. K>L=;\EP-X6M*3I--(TQF4<Y$9:W/O#AS2G+G2:
M6GB=7(G<^?U;K>VC]T_<:\H(0Z*=)?2+CF)<9+[ID*/SH6>Q;X2^6NA2O;;S
M/E7.SL*"P@E]PGI&4P97%EX47Z]R-*NSVQ_V;EF03B3;,*1,60([% 0MM8OY
M"'V4-=$E1\%FW/H>$URS/2(^3+MXR/-L?:_(W,=F_!,Y#Y^<F\(=X89?N\1V
MZX-=PR3_G)U#2BRUW$.=IK;"W8PR)6:\<GW+PA./R_,DJF3T9OS^V;*YQ@;Q
M_<'@3^)()4J020MC8,>&"DGLB*YY3'2B!B8P3B_^6#B6ISGXT#.YA!/R%\4$
MG+E5JGT.D[1\]5SV%;3,3'G_W6XY8W]K1<<YLZGC)!FZ#VBW;J%JW/_]7<?I
M0GN:73#FI9<J93"I5.79D9ZY ^VP?!CE/ 8PQ9$'&!).M/EZ8&81.PN[2 7W
MQ'@9L$'#E!<WYX.SO1?L!1+%(A$*8Q[S-@?:NU:5DU4>W%_26L.TZ#&DIUB"
MWSF^A0UBUJ+NZF7@KEZ;LN!W1R;:=FA5$+^Z1BUN^ H=^%A079?-^RO%:/9:
M>M&9DOWM41-5>VJ]QGL<H/;??S":OBF-%+C$M](E_N.&8A4'S/U%CX IEVL?
MY(-Y4(H4>+^W!+4L(UZW[I7;-R'>A:=YHQ\D0S]$R_,=NUT**Y;]><7O9-='
MBFL_+AXKCK*L0D(7U_HR1;ZWU2;5EM5/;0^!/5M:6\=#?<.SK<(D0]UE7'C/
MO>51^O+)0P0F:BJ8U7#FG$%JPXD[FL_?J/Z?<H1_ GTU%O\$"7_70_X<</K#
M!JUKSXHR_*,X8 1]_X[E?SJ.D4JH9EP [B[B%+YBA7]OR;BYPUFJ&2O;BNK!
M=2=_SI;_28,S/"03+>)B38/^.W/X_^.1G-0J1@QR8V0&NFC:#Q%EC4#$T!#
MXQR5F!)Z-=Z2DM!?D>38?OOQ"U6/U[H5&X*5;P1ME96TQH\\59,L]$@H$-3Z
M2?]'^W7>J=U* SQ?=Q.> 0@M""@EP43<4;(31C$.@1Y4@^"6Z!.]>1%JO=J^
M,YIILC]\()KI3W)M5([7."U&,Q152M$3X.:1>Y! \$P@[1C5I7)1,;KW\Q4@
MJ;?@/L*B3.1I[8KQ1)2)KZ5DF*%VS98*:]-#\V76O$*M_)'K+_R033'$EW_^
M'(@YDNX]\$TOF67"D*5 'TAT>QL"[8OI*L[9!(\'VT-06'/+VR _*]7LO<LW
M^Z0D&TR.2HK?Y$4.=&, +1A#8FMI9-..?^,VQ8:6/F;NL62??N+;#Z//4C^T
MKWB\"E:Q[X,="C9!W*QK9]0=5[T:N"@*''9ER-M3#5F"N^?3NKLUU%ZB/[>!
M[W<(D(<,SQ>Z$LOMHU_WQ"#@BB\>]H .RZO8A$@6PS_N#7Y\X^I3INL_[)LC
M,H'=1CP<N%5<K#J.UD294;Q?DQ%*Z]?[I_I9.A-I4R8;U,;0JXG*#ZURHST?
M?-KT%2J.N%2:-][S^D2&$]R_&1VRO0W649,G.I$@LY]8@KN'\;W,%QC2<Y8^
MY_&>K $+N3<4J<E,LGRAD =1M+?.VRNX6[HU[N^:8[M:B+2]5TYM]B',TT-/
M9&.)[AB\- ?!L4%-'#BQ1<:EL$'!"$(.#8^0!RH'"@2G@=13372'#;TC@]D#
MD;K/HKKAR3GBRLRQ6+6<O/<#7]]F+! ''Q]2_]7F^DY.F2L;'2O\5_!/-.W9
M;A8;!F\ \8<V3J.N,*L8IA&5LP&PG@6II]]ENBW9(.T%,WV-A\3?$R4[U1:M
M[IW@RL77J@5V,UXX,S;(NW3M4>DGR=O@C=V*.5;MS$P<Z356C./5N\2 Q9?X
M19S<AXHR;,^LWKYFWT36E1I_D?!QWC2UWIA<<1/Y4YZUYYA<M7V0## E6NGE
M$DX,T]W,F1"2U4/82HDL;#Y<[@UT=&0/]MQK<1C_]$'S)/*M4T9I\;%,X!*$
M$FG*D!+> G*7OA/CBD5QWX,C7XD*G\W"=LI[N%5^,Q#&B+Q3WM:H,:G,7X(;
M.\D<ZSG3=)WF;8\9#'VZT! %N8(V9HUS(#0;-"WD-FD>28TA0[J)22=H#88+
M\+.RU3Z3D78*6[>+A?Q-7<\/9,_*9I^],X7'-6XQ%%?HRH"X6P>$KHD2H@;V
M%MF$91 O?7ERR^O$67,M]96\U0N8A&=IQ4\4&W8;-0!&8%HH964.?83)X<K!
M$"G4J8GEG.'V<?.3@NLNX;87W/QS!Z<DA-?67!(R/0694O](WRF$O$G:0$CJ
MT$W1GRS$*%\V!/? @\M3BVPSK6)N^K_UV?#ON[;@:#G?ZHP!!-D@??3JR9D_
M,FR02 @':]AP5/<B)H(B0>J;PF_Q$YGS%SZ=]>)3X5I7[IJ8J2EC@^Z,RQWO
MIMZ;1"FS0?'G+0ZC8%0#Q@6.[+-8"P4C#YI2GRJ>'>\><\!$ZT4402]]DOA
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
M[/6C*R\C!L9K),.TE35*+FMMREA]_8ONQ4JH750+[U6)^/.)LQJN6O GCA$
MI@'!$.\KNN8T+M7H"%@W/.:(,?H$$)/<AK04<_ON#*^\;WCE$3KZ(C]M]F^;
MRCMUF8!=:!A H'(>AUL/U^)D8/<^I'B:\-BZ!1VW6&@2[!7FCSP_]/["W85!
M%Q?NIJ:4BKB#^Q(ZIZ]R);)]&H9P[L2?9@P? -$ZA<>)830+0.N928*/_\Q-
M!TI9M2=Y_\B3Y[<RY>]&E@F?MKER68;;-_4>4AX:1@!!M2P1KVG"F!8^ZAFD
M#!(_=&2F5,EI_?09[[JZH1L)AU/-#CQBG"D%JE&V[]Y<Q%>EUUW+'+/(?]9#
M.R&<89\<$*'$],6U'-Z&>4R!Q\GMB%TL9S81(Q%1Y#O)-_B^*D+7=.1==>7P
MM3NI)@=6$RN[9>^KQAKBA=C_<BJ?<)>Q3H)JS.-0.^[ L4%(G(4 '-H0O#<N
MRF^A5% 1.E.1>!V*1VUX6+>"^-G?Y%E5 G!C"CPC _':*?@0 &N-G]TLL9GE
M07MRN]/#:$;CAU_^_@ZV/!XO@QT'XA3EGW\'B"P9!$<^C[.KJI?1\0C@^C8,
M/"[7?)0U\,ZD:"(D\2\LK/V]5^+84%%7QOQKN7K;GKUZ@<.G@H;=FWHWLS</
M,?Q5K.S_&OUF%^*F?\/!HQHKO8P4'?)L"4E(.PF#7R'&UB#&3G35J(_F52D8
M98A0EX$_R8CI>1IXG$#%4_CP<4C@BB"H--'SU?DK-/QYJ*S!)%PX-_TY=5 _
M_/H0VR<3UF==,$[X2&/)</R_/>_9V98U1448D<\@OL298QY\,9>&C2:3PPC_
MM!RI^_OOQ,3+>JX1/C4<GB9Q8PR!==+C!JX90TV3P9(A__<O\GZ:^:-W;RG>
M>_3!\%%)8]/U.$A.5W?2JF<5660P[/&15 3>(@!F./",,\3K.FOSGXF2/_'3
M:/[)5V17N>$@^IG]$[R+3C861\Y1%>/;WM#PA3M3/4!M;HBG#4"N;)&Z#*T[
MD&+KCN6W\3>&!7+>9\GQCM_(S)""I)32K,_K_?D')?:]1Z>\#+TUK#!V8@K
M">D-^?98F\2#AYE:4#^BTBP.-R/"SH7V@PXM3J%7%6N OIB]SW/D?I\Z?EJ7
M><5<*1U5^S9Q[;:R^41]I5IKXO%W_[>VQ.;7V-CDH<35L;-VG@YV:5RPKRV9
MGU<E=PNZ[RKBP-LFR?\,7(6#)VC)N.E2A "$8$FQWTU_-X*-CH\Z@I6M6P$U
MXW,UM6ME ?R]R73)H^$)R)4>+=/\"[<1QWK;5L-4?+7SSUN^>S7D5$S;2CT]
MY^8:]!XB(RH%2NG,Z^S,DB:#$!?6I4%AI2;@2EW#O25CS\@ T7<")I<-GMT0
M:!ZWB_1S>$ON:=K'><<7H&Z$P$Z7S[$LEBBI+2TDI>F0[TAM<; _KB3B?4M
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
MN*5$LT?2W"C\\C3C'VZGG::<S=$/)-WK\X).M"FD/;$^TJ3)N1\]7,NA'?_
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
M9":Z<T-H=8N=;+SEWHCC<(BQ-:@(?V1 6M'XB6S-V P99]<&A1?]669TSTV
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
M8!AY%L<Z00#UX(R&1G\5^W)V?D-]\N:S['EB\$R.[C8L5-VS.FY-; $2X%"
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
M:I2 R<G/8K(1EY+=DN$LQ[_PWWV]L)'N/78\)_;%OV035?$-D$_&X$?;5MF
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
M"%UA*7)\<5=N0K7+_,\]@W.6MX4-,Y)&6KW(]:O&5#M&]T1Q&(S!*0$N'V?
M=X9^ZHM,:H_#'H1[Y7ZXZ4S=T9'[8^*#^"??!87=XS\J:*W #B+ _CN4B9S.
MLG[)D!AA' !R-CAV4<_U'1X5FLQ)LR?.>?]1VC__WB,^R]#Z_0G\^H+)]RL2
M<<LB7[&',EO/$BQ\9K:AN3!6\!%;X!7;7=@Q!WMZ(\VX_#-A5<\XQ618GT^[
MQ#T(T\,RZ'S$V7S^EW%SK(/>O<+0"[\18B#W/ N.O#3B\B5?F!3"B# X4U"+
MM[*H0Y_SO_$&=6%GJ <$(L_Y%>^9%GG8860_JLXS47-2;^SIB,[#V@)TV62C
MSI'DLI'1AP\/_TJ<+T-0R<8,+B*]3--=D29!+VN5!IXYR*L1E;6I%J'2;V("
MVF")!LNQ6=#H)9V'9;Z%EBH3!1ZY4>$VD_W1T'JSE22R.R4 -<%T I>J,0,\
M)<RK@?[+#Y24\.MSAV%O1BW%XMG-+U8<D,\GP5?[J(((,PZD-$CJ.6NGYCDT
M4=#%43GT13.U^0DL"RT('((WX%@G(WF0G\4+5S0("2<GNZ&L6X>X4004%Q!G
MDB[?O30]IQ$\ZUH>P'?KJ#K[K/F$.8P3 79)A!<#AV*13PF,AU;T=\=)G*Z>
M<S,A*&*K(V"+!)D464"\T5&%HUY'.;CUM??B(-7G](]"U1J4>V-(8<&RL/>'
M1?&G(O;K7+T&-<4+.-/+1D7+.UXD'$TX*_ ICF36 F>P&Q.PC\6WHQ!F\SK)
M,PNTJW6WU7U]/_3-.7-Z3<NO!P5P? KJO)M92X0>!,,]:@)G,5160)JG"47V
M,""9^P2N+4VKD'7;WO-#X"M N?W9LZQ<)4G6)V4[:R=2[]5FODYK7-@,&.7O
MM&R@1]K"8P\P.!VA;3C@B,E7-Q"8(A(7#+7IA36+R3>&3=J;6P+UX ?5C8N=
M9:V+"K79PJQ_22:JZT=30L#_Q*#:O\,$6L6]<2)($9IR)9!+H)^3?SVQ/M0V
M$3[46%(E15KL%ZS,_-+)%6MCVWZH03;UYFTQB\]R&6X;/@R?90^SBK?T0P/P
M?4 G@P-%=69\@Y'.,T'^&7($"KG_398XU;S(O=:Y_$U^V_R9FU78V'D,UYH<
M6:VFN\>BDY]MG[D0.?0I"K_!2;W_Q/ 8.#4,+I06-:VFFW5=SHZ^6'IY[)[&
M'L1*4=S17KLQM5 B;V(JH.7:*_&4<6A#C<.G+%#O1732^&R 8^%)-"$4T:Q3
M5="KE;>Q]RVAA+=ZVL>WZ9KN94%N.=N/ZC?AS7EFJ1&=WN2U0ZCVGRB2.4Z0
M17<^">%+^-:;7!9VE&B%A5>!B^9"SVFN6VM]5DW:F;7# 37'[#+&H;DO'9(
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
MU@(;Y(<2&$$EO54$*^%%?6/7CICKCQ*6>GLIZ9 $'AYV?8?9P 04OA1+<L(
MRH&Q&.1A5+LZDLT'Q=U\R%-[(BEFLP^C0CS>;Q=<^HE?SWXRFL_I68;8OGRA
M3?@*,QVYB/$=S;XE:JC$P+GI91#7XF]GK#HX2:I_XXD1:M=[\^FK23<U8/Y^
ME*;?BP&M4"4L[U.7L<_C>Q"EX+3^'-7Q'JC$#O0,T,?@J 850 4X02;"<K8)
M4)J );X@GS1$H%K[UT(%O--,3^3&;^D\_/J$?ZJ.0,NX5.TN(V82#J4>1+47
MHZL#.[C/\<;BZM$)<T#+C-@QZM7O<9(I[=G=9_3>?/X8LS89JI>OEGLKZNGH
M4G0D0@2_%NTF4D4RZ]R#L"\V"L<5M!T9JDF0[M'S=;[6>S[Q>-MYVP6(4*&M
M@^:'[!72 .7N^M1N2_M(2,W5Y P"[R' C+ =Y=<LA%?E6&R43_CKZLRCX-6^
MUZ*95U]A7IUO(C2K/=FD]N\WK_Y_V%8,!5%]>Q!ZU1YD?#FIO)-@1L/N0295
MZ5DM?DD,TY<,U*ZE-MAS8E+/!&WAV=(O_G.VPO^U$;N/T[_6P,M^Y+XKM,OI
M:L\S(K?\!*/GCZS0<.9O3B6[(Z(G%]JB['[QQ0(VE!9PG08P"WNB:@,G:EMD
M"8(XKF:CNZ_%>SL?O.XY2C==EG>H5<QJDC4] SN%3VKQ*OM 5"3,?KM@!3N:
M>\)DH;]]RI/!!@(7"[/&\BV?>FEFL5LWQK@&4'T^UA[-X&M2-O=._?YPSE5[
MZW=%@\S=U",>9SJXB'6MPJCV'^@ZU$HJ<<&0E^E<L0>Y875Y<%?UM2O<;$A^
M(%C>Y+1&>.+:MHCCRH %EV?$:2UJLLM\-RP2G)FMIP%3%(3F!=Q^'U9MW+ '
M@>>%I9I'4<:_JZ5*?NG+"CO]"6-&O2RTV3UHM^%DN6::-6PYXV 82G\!"G=0
M<ED%3L)7&N$=-A/.YD.UU-*3@%T/-SWUPTXTPS''Y7 :]Q[$1=IHK1U3O+QQ
M@-(*]M)E+#X++8T<)O*.;U\9;3WLFQIPRTK:_</BL7Y[7\NTZ5P#X1,YMN,/
MW6=AP,U X(P[@UV D4I51%QO!+!X*3VZ?62^:^9-H<?WDZ@G@0<D@43[3V!0
M"DPW+$PCHJ:6UEN'ALA.K,?.T%2F"_\X)#'X$,<!C#O]+=F2$!W=;.E?'SB^
M11?F[)I<K+MU(W9GGHBB\4$9[&?(C[X:JM C:0?\;G^GD*;?[9XXLY9I@)>A
MQ@*R%']F"0Q-%"\0S1 *I GZ4DQ'$7P8QT\R/[?@[.VR<OS;&S7+':F33WX^
M4?K6SPDOP%9AF)4RY.AU-;^;Z6^PWC"NL)S9G VY@>R6=:WC#F+REB<Z7$QU
MUP>>M+<3*TNBOE:(MWJ5+RYN9Y^^6H#P!_4IM_Y?7R07S!G<-L];.4+DNAI9
MXUZ'_: <A'?>Z4*U5:_!#</6&%RS@S69QE04Y1'3Q-Q7U^#GP=H\I[7(UQ;[
M5AFI_L%\-A_B1U?+!!?G=EX9%.LL>^Y$E%T-AJ$Q23!20#1-Q'";4#O:X0R?
MC+,"DO$-LXEV! -+HGWYBT]D[86QB>GS_L-/(!%0F=C #KHJ@R<)O L2(3-H
MN,\;6U6;%H\X0,@(J1] &"A$:=H</OM"Q/.D8;O"A(NP!ZSYV,ZNPR:O22"]
MULUVML1:W7FI<?L')E"^=-!S0XU9KXEI](AJ-VLU9/0X8"L+5Z^"(66]!G L
MT"[S?K@;]1;OZG ^<5_@B;3K]4TJL6+?B<8\C%HS"HS>B,4_<5)8H1)4G\+K
MDF@"BEWI_3'WPT_XU_9+ "&SXJ[6,W>5]9ZO^;N:G>ZY]A@RARV\O$]45F;K
M4#.6B%HQH8HC_#:@Q#W(2B8)U[5NF3FTW,I>V9BF\/'!427>CS(C/[Z1IOO&
M&ZU/;F_?&L&.OAGV<AJISX6!X0B?AR-=#02.17=A #EE[ HXQ0]N9%P>NEE/
M/I15)\U"UD9_,*+X&ZC\;GF5OOY #"ZP<MHWXO?'GK.G>^AQ*/QS+,DL:6*(
MXDVRB0_& 2?TP:"=6>9UV 7DD/;0PYHG4JU:[KY^HGS,IN:XFV!4\GI[Q53T
MXEHW+Z!CR6#;)IM;&(RNQ'EG3UEDUB-%R,*Y-ZH-D\U@J3L]OO,VL5"2Y_8*
M)]%.>;2C/W$/(D!3U9N_I1/Z6C>A!OG&M#[1&/B"XEC(?X._838^6'1:KV[2
M8JJ5_N6J]X=Q[>=8? 7\4*LD"")Z6#P.RLOX["8,5)>X+KP(*[0<5-*W*1P_
MO^W@M[TM7G17O%_\5HUU6&J=[RP(XI$,MB!P0,.!7*I>F"HED?X2A2]LC'J2
M#_1WUDU\3RWT86B/UCB_D<D\T"/I*/&4ZTKD>J5DHF\EV9,FKDR]1#.("$-Y
MH('CPZDFBL+"Z74QCW*+#"*URKK; K?K>/-USM.?P/#+:V/;3(OXMJ0))%34
M.]V@T7FQ,3PZT:^6[6B$%D=RKW0+U_6C'R J$ B$Q?="[?%+O[.?QZ6F^G]V
MVMXR,;4P'4C903LC)Z75F!,H"T<RQG%[9<G02TK]D6?&E^K$;V]WN?IV6=Y)
M<U"'6]U94JEE(\O[_^CA*C:\VBLJ1%[K[)_H9_!,5)&T4\D:YTE6F"XX]]((
MW_3";ATZ)\SS<@1C^*?FO5SOQ-*E+T:L&(S6+*[>!ARYTZHSN/:^P"=0TB55
M0"&DC,S:J>O6)(RA9&JTU>>8E^=$>=G#:[PT2J^QZ^?.VU^L./U)=!,WWL3@
M22>SK@21FCJ@U0K=H,B3'\G-\V[E(LV^CBEXH^^LE3_H['3NQ1$OE97/H2<?
M5XN)**=.QX8Y_>ALO7"G1$%^NM]L? KVXKB%V?D,F)&A,G(*9*(VXY,,=DX"
M:J*O&UL-I<G!)0,24L(BV^Z$^6PJ-Z2O=CU;?>^1KOQZB?W8<RXC?4F'SA <
M*;2P%Q-MIXSNQ0#RWK4OZT;4@-;EB]<?$524Y/J'9)==DFB"O0S.2:HT.'ML
M41Z9G'AX)$.&=A$0*O=&:M2-J@0OX[C+5IN+A,I^'IVZ/;2&V&(I%^I[8$:_
M)'IF9JU_S)/!"8KQ@^AJ^MM6*(UK%(9_;RCQ<RN)&U"U'-CZ9M=S";[8>ZDI
M8N1T0>;OG]E)H6^/5L^^H?^Q"E(ZV?ECKBSJGG^+B'K58G%CI>2[RN9<5/,:
M@FE*GP"8D*H9[-$$5>#$6G?_TRRYBA_Z5UY[P#@6JB>GX1T!GF$S'.LU?)_7
MLU^\P_3!GV));AA *0 $.A9KH(A@I8-_:2@_P! %[,SYG;S<9.MCIXGA;O:!
MADO7\.G7)OV0+K:971\VS'O?=&!!+8['P*6;;Y#[*&=)N&<H_&LW*&!)GK1-
M[:E;]S44JX\S(AL\'DP97*CF/),YD-'OB]!T#Y.H?&R%9*8E/,+BT=*Z]#1]
M.*F:DIB&+TC"TV6)GIVN8LTV^6%VG>3%1H\DXB>_7/&$=.=S^DW^7>Q7=2LU
MW/5$1TTM+=G%E^XE%/QJN$I9K\_?.AD1\6IZ?K[;^4?P:F#'Q&Q:#$VCY-?B
M[NO,4*D1-.JVGHE6#;GB_FN=RQRZ%5RBAXT@L47VFU*LSF3KAMN$)*Y%$=VH
M_ ]3O;Z%8XYG![\%Z<?S'4T0Y/_S]=PS2(KY_M;*B8G,PLW.&11P0H$F&$GT
MI/&EX@M7DZB':)+5Y-$NM-@OYT7#4Q72(A]_WHXA.C<Y-P$R]<G":I0^PXM/
MDNWO)O?X@D'^1B"@FT:AT]=66:G6_:0FX^8Y2PFTJ'&>[#G4XXD%\Z\TU$%
M+NG-=C&ZWK,3%HG:A\6_15<7KMP"-052'+ E!D9-A$_2K$D]D<02ZD[Y/!;F
MFZY0,="5H%\Q51,C]L[TR:WD^OAWNR+=&$"OJ6TBY&TA0H^>N@>YC>6C&9/U
MG(R])K9C'.]_4@W<#QDR=O<+D$^6:C^J(>>WKS< >>[525("Z67.V@F?F6*'
M(8>"7O[+\/U_[L-)\"1^QF?D/D"-JH[\#)*AR[R\B'-DE4K6<4]T+W)_:_70
MJHI<?7U$GYWWL2:+WQS?E!SDM>+N<HIN7$DQ&]35H?$W,=B8U01^DV:QB88*
MM!. .W-Y&SPBSK6FK=[IS#5-?UG&AWQSN(?G[I-TVCK9X^T>A!5DANVN6BU@
MR(MNE](CN,5<7V^-+EZ2EJPC+2\>]<_(J_O8S+\TL,;VUHM']&CJ.^6':>UP
M0-/Y$KGW.8QP$]5^%E3CKJ'=XBV3K#]7]8\(-%?5AT^\SI[3?[PY-V6#U3]/
MN! EK;E$/./_Z$/=6NBXU]/!^,OWZK.),)(C##B)6\',X"91!)'>P+%^2@LY
M)#^;II+888EF"PLT;[$2]EWFW C:9ZYRNR[2-WO=[8K#CGL\9.GT6@"*:7)#
M<F'N585W+N!(5GN0L2N IUG#O1=A47UG4QT>A2A #',1E8N+>Y #S^_KD^'Y
MV&H%VN$-!GL0]7AXUAZ$T+_RBC!E9U_?J=(R<WS2J6F#E59C%^)Z)# LF;4V
MW-7?/] S4"H_CUW05L8\)^%<\7%1R+XVR-W8N:(W^"-L'9DJ :X"Z!UEQJW&
MEX,6BI,-@$8!V)T?P>=R@$TN]_ QC6\C7C,FM=/U1P_+J3NY^*@OCU)()341
M+!'"L=\%N?Z<C;V<G9DX_8#ZUV9#I!,6)/W[D?W%- M2_W/&"9^!&^F!HLO*
M0N]?A%HZJW&\VH/<M#L^CQ6ER^0T%,\!2Y6SEV==<PMG,43C,MO%1P\E"SM@
M3^ '&1# 'R%%TB"(1"&D\E5@1%=" @^GJ(44^S5;8VA0JJNKH$/Z9&J3.L=Q
M3#JSZ N@&+K"- ):&KP-K5'M470GJLI^K2;!HCNFEW7.B,$W@Z_+V$O)9>;&
MST3U"UU9O%)F:"Z/>S%X+\1LL'8#MLKTJ@NF,X_O9.JZ5#)^P$7]?Y-EHK_6
MD'2BS_WU$RYMI0<Y.O-2:\SOW.DBPU\9,KT@6E'MGC!\C;1R*\#T$VL$!(II
M>B2+-Y,^;L>'"CF#!3V+&D?DV(7>*D;S.1.1V6Y.NYP4D"-%7D'NHVD-WP1
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
M0,E0@0?E+:\NS)@/YS]6Q#V;6?+@,)=#\*Q-&9S?1TACZ:,GTLY3!>9H/(U
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
M3N1IX-6+9<GTD^FUSV:3I!5NE[492F[\AU5P\_G3H3=VLQW!R>!XAA2BT!3
M%EV>0H1TC<RO.FB>[7)N_R0ZWRFAH"3->AU+,ZRGB.V "E.'H1OCO3L@J8K3
M]#<H*:0!5(S!ZPMNTU>IP9+?O,4[[X \3WV>-:-X_51T;0BB'!==8;IB'_*J
MX70I_#WFGQG5.Z#%H,^+54]UKYZW+O1]X:_^J]CS0M)U@^HO-L!=^)KZ#L@,
M4H#&EZ8R],S^_-KB'1 Q&^J%_Z6'96/^J>2] ^KYN@.*]:#GH+_.T_B9$GR6
MQ_Q@N<8//S;:"'7RIP3=/B\8^6X'Q*].C\%^7?QN0_T1\&_?BLMD=."_!_Q2
MHO]JV.W6=SSMJ-+:S [HS#8!35-<8_J)<Y _]?X.NM01\B5K'MMG5&K3;.3Q
MI^?<07?VHZ_"?QVC"S/HE]'DIE]PAD3&;J:RPC 2E"$4C*;=3 6\;*;K&<D;
MNR?B+:9W0.0FZ/@;_BW+#=@GB%W)7)[6WS\$2OR,?5M/ET;%[X!0Y5!@+IS)
MM#SOJ+H[H.%6@(E_3@/H[I3]>00K$^"?+[8K-OE?CWX;S/[3<R"D3?R4"R,%
M>GH'A'6 T&[NIN7_TX06_GD(_VN&P>.^V]X?\O[^,:E_+TX8,\#HU$(-8+_#
M4> =4(<UD]F2A__1('[5WF/XAJ_2HE9JJ/]<7!32G9DSKHWYP3#YX1P^O:7T
MIT<5,F1=J-SHX=ZO>=LKB\P>3HZB_P$&_CP01MD5]!-8Z YH_Z\RH[6?&7__
MG.$_07!U&?L/8/"/QF'_%CJ@T8I."_^-Y?\76+Z-;C\'O6J>UH>O"4XP7JWC
MCD3+B>[FQ,M"=;QAX\<9G/X4$OL'-HI1.&CU9)LZF.)(QE0^I_&1PA_-8>YO
M[!DOB?5W3]>=;2E5NQ+U3;46\*?J,#YFP?AJN$LK(MRXTIVT71S2+0Q5O9P>
M=Q2EGT.FA_T]@JB_$?3_+8)^L^%O-ORO@N7?;/@;0;_9\#<;_L;R/\1R#H0F
MTDL1>12BL2Y3R/(4.;&M2ENH*$'_25:KW>BK_!$P5J0I*>02A@QNAW'"K'-U
MQA<L*@SU_%3?^-TZF:\N(6=,X(O\VW?*_!;J;X+Z35"_L?ROAF6K5 :7.Y7K
M;',6)64XXJ.17]@C1H##*/;/*WX+V+=Q;1KWC.0!@]<P1!2A(KJBQ$9RA:PX
MF2M5^VA"IT'.5BPI+?\6V.1OWYGR6ZB_">HW0?W&\K\@EBO.T;/1-Z'3!@O8
M!"42K',P&6?]ZK5KBXJ_-]?[,@49@.TV2UY/*_1/\]&2P41L!S86PH<YCA1K
M!,))BR9#14WDSK(/3W13]Y2>*YCNXW&WF]UK?7149SBZC_38\&09IT5M.*[N
M]5Q"K*Q EI911D&"ZK3>OUO'YV<&)8L9H;LR!K$U&CV#8-HU."O"VSK#<K((
M0W[1,,QB=# F@U4E02MRAG%M;5]N+":G(.(H386HP04(=];E"I+,8M]HAQ_J
MD!--R7Z!4Q2C+-/'DD%V,@C6%OS"]IHJ=3\ME.Q#7NH>G-[N?#)1'2.T$NB\
M[\M391;D1-*K+!!([UO;OF6W2E.0-\*FPTV,!(E3HT$(J7R.RY+6>1RQG5:C
M_A<XU!=E1 5!=K)M(66274 J&<*<<HX6WE<T"R!CP<\5<GIXW7G1=DQ#$?=@
M/]TIOLU.0JT+Q+G?(6JWBB.44)@KR1QD9)[$ #$U5APC'=6AIQOP)JLIW7HR
M,8"27%9['EG%+IU4/[_:NQ]B,0S31LW!2)?0$3N@MYA2=T*JT+)^23S2Y94+
M=R*<S^<>FRFWYJ5T7^F%(]V.RBR/%PV,V\L5*$PL1H[1>.F%J,-.-"[R9&=X
M"'$'%%]KD<DK+W/]4N;\EV )1YX(!3.%3S=X[CFFL=T\Q $>=],#+A(A]XWD
M24L)AF8\ZR%$?XN*F@R>SZ)>RK:9D*XCH0X6;L>I(:C))ILU$ZHAC!8\UJ)
MQVI+QI0]BDVDOZ#8U YH1PA^^7G[QLR^=)N&Z4URSVT#/ _-O"Z'0,DA^RU8
MM5;$%.9TOKW^9%:\*<+G3MF06E7AQ_<1;SP>';8+K#\FH\Q67(!QI=_'$EX:
ML= ;43J(?J)W)SXNJTX?';.>^Z4?UH3ET3FVIS<]G0-9ZU//"MD3#R)L.6+K
M*FABW$3(FB7Y%883,4HTN_\C9WS$?X,Q_6+@9N6-AW7B0D>.2_&A:EA^?!;]
MR51.05G&QQW0=SA&>P?4EF/#. Y[GBL[H4#FN^=>T7V35/;CJ0.W"/8N6_Z5
MDEEO$9;;?ZE>^7\I0$R@A8P@B,"%BGM!T#C4X02'T2 _]ST+[2IFRN:&1[XB
MRM2ESM8,W0FSXK>Q%W!R,6-GF5&45[9[]^W6GKL:ZW-4MV5H)7B-C";/7""E
M4FA#U\7J["4U*%G31I/:(R"SG,_OJF]<LS!:].[OE>C;0!XER^/@43AX=T6\
M+@4CE@+G:W_M=\MMA>7Y2+UQU?M4@T.LE>F7&NT^SA+NY/,]2?@90I%G#BL?
M %,^ ^.+&C%Y_"A9MZEEAGA=6(XZ:H5V9(P@+GO67&YSO&"6 RFFR!8U< =;
M[T 3L22DKHD2YW0W%M3+GY>NAA(SJ%*=3<8V^A[GP(^F^QP+]D3,WK8X9G=#
M%W2"D@!D46XSWS.'E :PY"A+X  91MB(-Y)>^;5&[BP8+-/OAVM7Z4X]F'H#
MASR>LO./L3BFIC\Y<^FO'<DR__#RQ5P$R",=P8KYXYK5GJN !=F/LIY*.01X
M$LTFK@0WW0?F)^U/^6RYX"P"#O7N.^EA._QX.Z[]N()JI+%164%+)Z667L[@
M973O@+B*@$IRUL4&2X=&L:;@9R4=BLUCA[DR!4]'O_PX[J7VX77^[5"V3:4H
M+(&(CG285ZJL!1Y13R"PG4:0L1<SO@O"VB&JU?LEG/>_/'L8!5=_>F](<R'"
M: -X0*)VYHDBN5_1#,AW+F!R2EWV:8AQGCU^TH08=ZK;UP=G5QQ5B/,)#7T;
M^1YW;#_?M)S@R7*;P A5K1W0@D;4&D-J@'Q=YCKW,U9UWMJ@,?\B7NFZ:\)Z
M3\J&7J5^ 3?H?,:_%5^_6XJ:P8-Z>_W-B&8T>8'+?@ZZSN%Q%/P,8UA$CB7O
MPZ;<3#9/?+UO;];3K0B6]1J']T:[E<TJ:?+#Z)N\8(HRR2P&UE4?FENX]]EK
M1'JOO6G=:(7,8VVI8+TGPQ'-;SMYNO5+'1H9(]":N([4:3.B[G-RSN+!I@EG
MTWN.P_M3/^1^"_G8)W<N>5.7;Z\Q2.S:ZS=M;,T%6*,6P1T0F O)/DYS]RQ!
MG@2$%S9X$"$7'[_(BB].-XCADO)]L&#+UPT-Z_?E6.,-_UFPZFP6K^UG(XA
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
M+^!XL]]Y5IEVUMS(9X:GM9V1AR8P;3,)!H]!DQS1$$0U<? >VALK@#A$;6=
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
M08>Z7WEWF<-FGE5HH+!+4:G":XDCY@]4GW+(DI2/ZTR@O[BRD0>[=H'SXDZ
M)QEGE6HQ'N=O)9/OI6MZXN8/6(#&F0Q1MC+1&SW;$ CD!?\$ @^CCC'^ PUB
MI;539N8!1*Q*6P(QW92>F*O:O_CS&$^5@/PG.P/$0HN!3P/,A[! HUHPJD.M
M.BZ1U4FB)6_?+73Y%%FT-I:,;IEKY#OL"/*F:&H.?>!-RRJD4P%A8B87<_ZP
MVPR3G =K#$OGP%4@[VXZNFA=_OK,*O",@_.@=Z#P98**N6!:.Q?^"[?LMXVM
MU^#<NHO^]%A]._@E>A++K]Q!MDW2OAR[/M:S?*QD9J G+*VML29(3K7^LJ%=
ME;=H;/&O+Y:<T[?^YVM2KO:T(/3T/\XM*YHRL$FMH=C&(W1&8%UM4C_#'U_#
M:EKH3*J<V3+'/(,6O?W]@O]PX4X[IMNE$X+IENN$&%-L5Y\_:SN I.C\]6XB
MZ\54J>6II'NLZK O%2?\4BU=+/%:< KZ?<3Q^:T#R"6L!"CB^8&SB7T8B9%5
M_D2XB($RF6:M)1SX HCL%M,++HO0O[TV[?DA=^$X>]PIY:?BY4A[NM@N\^AS
M/;IH W70%L]O07[]=H7 ZV=XO&&B0VMEY Y%*7M4FW!V9P"6\RAG^.2G;V_2
MH&T:E#4(Q@A*MLH$##@'9#2 TC(4)Q@Z%AEBU#355/EF:\OP#/!X>K[\R:C)
MV^G EN/T[,'U$O6SE\_=U6Q_CD&_RKM0ZO@RRT7:5/[M)[?' I&S9![X7 U=
M*IYF!Q11&\#?NHQ2H_BFL_<5ML17*Y&?;V]/+WNZ\EWH2/)1G<Z!) DMYMU1
MKH9$MM!%,DF$#)@/>/H@3,)0RAS6HKVIC]1>2$@ZWY2]_E,%T2@J&^LIE ^)
MY3GS3;"03F*D8H@%A]N,QF:BE&'03B7TXN/<C71$4)#-\K-VQ*[V:ZL"P?=7
MIR*>?+C]%"(0&-HK0WA#: H'T>AS #F"$IN>I;Z?::3!V#?]'U5?]G_PF>(L
M<>-3JN!IMSYY 7.N,URR,? 2R3&Z0%$W5OBW*HRTL<5'<S!X;%[-OX"Z6/BG
M:BA>@5B]>-+;Z)@]WS%*AI7L.&<U.']/=_"!C"S * 8I%DN-8+QJM EW !#^
M^58K!Q!A?WN3>^X?8F\[X.>??TE%&#C]=_+X39'HLLX(&'!>?A7;O\M] .EI
M C#>J]5P4R"J9M$9*^SRO:K[?7GZBHQSD>6RD+*OP]#1+:L+<T=7,=U:!Y"
MF@4>(FY[&$87KJ0V4:+&DGE2BP*LGYO3EVTK%OOOS0;7.[>,G17JZE#Y]M9K
MX(MF,0*?.(B3.NSNQ+28U]%8Z9<HBMB$3BA2^&9;T9WVPGZ?K.4!VP:;Q[T)
M87OEOUZE.XH')'@.R;(^!=P#R;/4&V#6G](5@1"0:N<9+^C&)!?._H=S_)(_
MZG]RA]Z?V?O$N_#EQJ"42).2QU'Q^)R<XG?,_]#++?F%X5M6%/\#B&U;-O<*
M$%YEH&5ZTMY<+%N@*\.8\T/-9]OY69)O"AA8*EP&K4A7 <;(\&M?_]">@TE9
M$:$<Q?--6K)*^5I=.S$W&KQ^YOGGB>@'G[NB*)7,B1)=1A6&^!0K@#8 -E8:
M#<4^S!I*!VP'5)BBIJIJ%3LFJHCU)XW6'.(O_ U[WJ<#09T&@U\Y?#](-V7@
M#'DV8:([L/OJ0L@[-BI]DS^XO?+L7)-UG9Q&UO/T@CT9:%T2$%*"W,3XVLJ@
MIW%DFQK@=',,31K8((7NI]'55VUN]MH6+J_O.,KFJ2PJ?OP2?&4GT,=*(IQ=
M^:3E,$NULSI=6'YEEBZJ-P!G#1W&S2%6=S+!X7G44[Q3;S7B FYG[3)'@ER-
MO)MSHW^ER2>PGD&.6OVKH*J (9K1(\8Q_J<P]^$+V-4_F<D=5NZ/U!_1I*2&
M@DH"FFRR;(*UDV+NR!ZQ+&7SMGM:V1B-3K!?LZ>+5I J^@X@J0>0%EPBSAT4
M"ADUY-D5FK%'X>OW^WQ\C9/.+[/>JQUMBWCSHNI*1L^YGU;R"IE?[P(Y5!(
MPH/MT+?%TD,;&24=UI1\FCA)-X>M.8^_=,$RZ'+PP"P?XF('^M:G=ZY&[5\3
MG (@EK+0"_2 P]?5]$A&;H=J&3V4$6T( TK[_GT+)_^=N6ODY+>6W"VW>EHN
MW^L-UY%2-V-[9046?L(R%^,UPE $/?B8<S!S(1L&&/^QCN22I3P<\_F5A.#M
M-$*HS7O)7NEV9F<[]?28!KSP "(-(SZ'MV#I0GO=X0>01O4N&#YKIT/GY8A(
M83[UTB)5ZXQ!I63'S$WQV$?+/X_FH5OQ1@J1_-N.-+L ;+,R7:!YEZ276G6R
M959AYNS9T/XFFSJK$(YR(8GK&*[0.=KCTQZ<+-&&Y90-NF@^DYM&7@4E"\J"
M9NI8OYFGL>S0[U[NZOQ9E; S!!;D,0Z+DUY'^P2,9->;#!5!!KAZ '&O><+D
M&&>>!&JH<9/0:Q35MZWC"?DBLSE+EX^_Q"BQ^:9QWC'QXDDPM]L[S4JJF1^D
MZC**U4#@)QG* 4W5=(7Q7;K]6R1_G^1BB4+'5&DV5:K(ITV7>?4+3\\;V;1
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
M+G$V[7W'D=4#2.93ZW=SSL?55R9^IPY_:\FZ)G'70>[>T$VN,U66LK%':IP
M/IH%2H!1@3J.ED5Q :F>JY=4?<Z-Z+S^G<U][MB01]8=RR*V$Q=CC3G+T3YT
M84KFEK.:@1V1,"?,Y Y<A:77+1&.O^^P($7>\VIH4@Q[9Z;3=[-1L,294\-R
M?DB>-0A'ERK\EX&EB)/,XU7K&I/E)M.:>=3^)%PN_&,2E_/\1?V&LF'C$5 8
M<3"1-?V&\@".\@XJ .1?QUF*V_X2HE+6!-=7]_1-A3/B*LJCX!0X* ! %066
M QV2?@T$V4O:[FBKCN\UQAS+*EN&*S:F//@\V2ULT6HI^\;#F$V #P62(1OW
MY/LF I0Y+BF=4:'X;+\PJDQ@V6R?&)[W]W+J3MFW*)5/G5!D /7EX7XC/Y?E
MR"V#MH!R2P):#@ACDIO&DIHR>8N^EZ6;3WR#O[/,NKRY=_R;35=QKEV6$:A:
M64 Q%PMM),399G:RH<QK*3+/&B*T;'P_ROR?#$J_?_'4^(=+$PK4?&QN0"^-
M#;EYB^*30]-$G9Q!L9/TV[4_4F02WV[N$4Q#_+.?U@3UTYLM2]RP/TN#UV,^
M7:CIO/=_L4?A_SG>H67)U)C5$4E2;\GI\:T_EPQW8&H[O=>;K5X6P-J^$ROY
M/<ZLB1SYM;$]"P;TF/$$I"_;^=T[@"")$%,B1:;OWRC05A=#PGMGF@LS4I&<
M0\&\6:_R($2#JV&6K7>DN9A6.&(9AFPSAM=G<D?1+.#,,7BC6AQC,Y,7*!Q5
MHG$FG=5S#ZJ>8QXAP;0#<X/ZP %R0<Z4@7G#YP>I+PX@3P*8DN)$7"+=_0#"
MA4F2FZ%K,=HKJ@X@\_L4QE .+.'6FA/K@_/'(?3#>1",(>)IUC0;<2H=O$EI
M] L92.5T=4-IE.IL5:]"DKGG=-,I9[=8KGO5Q8\-XG:JT;M(>>)&CWJ"?0B!
MK@?8K^#X;4./9ZP'\INV-$9</Q'O*73:C?^\SN0-(Z@JIML1X\N/]Z0V $<J
MZ'R,$F%+2_4_C>T4 _S[-X&]W9 E$5GVP.YRE9._SZE7AQ'J;;=LR154-*.H
M TK.[,,<Z]![^Q-OGBFY>?')O\M:3?V;.:J]G(\6A]?;X\?,CNK;MTP808^
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
M32ET9)6FK'-Y[[U@N7U'PUHDOH#[9D4$7QJ+X1 XY 4"U?)PU2_S*UP(I78
M:=P=;(<F+DN3%^/?(PPXJXJ<%IH\.CUE&V6UJP0@HY^SON6:?FX)!H=,_)]=
MY9&,9FU< CZ\*Z?<TD!)QVS:R>7KLI)<:(.@0+_S)\P#6O*%[Q$C4=UF$)0-
M>%(L(Q9]";U0(@Z$E]&%;8Z/K!0T<4P?0/X'D9I.9^Z?E K7T'WLF4+3ZYVQ
M^U'(GE$4DJFY/'KJ&_ZAWAE(,'"H^%$7#AM,&*F8^XB%H+T>-#<@'?YR<$5:
M3 (4.5&VC@$A(6_:1>Z<$FSA6N7T^U.PV8N60/?@R,ZX.$/.6B"0W$*J26R\
MQ',U/7O0IF[&S6&5M_^_/7\KQ?_J%+*M% H9MT%"NL9X>P!QXY=!X[&U+4\Z
M!5!NE.I&F(B!?L5=EP-(C\7)/;?\6TX8M16O4R_^*U>L_]S*)L^N'X;-#SJ
M$ N@Y%MC^!1^=CH'X[WAV7MAF&,H006_P%"_"+:IH:.R29IG;R06N@O,U5R0
M,E;XEL?WKP*\K'W: W27*S>C"N=%@\_C>O>S[@D!@8%>9!>2N:N*1.#+<X-2
M,7O'"Y7N+9Q(2^@^<P1XM\_DS@*3X<QX05<E'D#F$=0,H&YE03T!S=N:Y+CL
MM&RJG^1A*N(M=G[&<4G.Q[*O'\(W)/JOP0R"Y-]VH1VA7V2\ N6L$V8>:M;.
M[&L>/ULUVSV[#2VB<F_+_7KI>P+!)X%<_"-G+E]LW[N/(5_% BH6H A+7)9D
M9!IJHNS)(Q4]!Q >@OE,"\6U7W?.D]T3+Z18$I6T(Y_ADJ)Y1/9,+L/U5?2%
ML2=0'I0*V6+%-Y$I ,@MD291>F7&%7/)7&I#0NS+WSS5^L0\E_XK_/[]5?11
MXLX!Q+MF/H/YTVES=WZL*\16.UUARF:%1RGB1'&>A\>00G%V0 >(7I 8 S"
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
MP5:87(',Y:MG3EV^+2NV](M1\7^Y?=[_._[?\?^._U\<1P[F_Q=02P,$%
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
M+OJ^?DRF8+\W=S/Q"C_E*MRU29=1D'G^T/B<#:^<[T55C\[.1LHQ6;7R[63
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
M 3E&ML*YSD?95@2^N0#CAN(/!F@G)G]X2S9*Y=2.'%XM[R2YJ$,8SF3_5+D
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
MUV92'VYWE,E\4JUN$I]^<.#Z/GR_L;O;:$JXW8K;U;):XH5*[M4\7\VRC+*
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
MRO*Z[#@5*0GB"$,/BP"B-$I@ZB5R/Q/&&1,THH9E7P;*,37[1'Z-R;D,I3<
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
M0GT8AQZ#2*146C^80!IFQ$,B\:/0*''(^2)-C3X.W8/?'PE&=B/!SD@R8F&
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
M498O-PNYI:H=-E5=1>O^*UZT]NJGHDZ'R9FR2#^T^^/8\Y/$"QG,.%;%740
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
MWYG4,H-6Z#H$\:*?3?\"O%("D!?0J6&UY),9<O:*/VGV.W89*#,X]A2$,FS
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
MG4*^/TFDVR[/"*?X6LSE&]7U?ZV4]Z +#$(T%B+U0QA[',E%(HXA2>1*P5!
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
M1[?\%DF0^EF0>9!X"$.$PQ2F:1C"A,28>"%/.#?+6&$NP]16JKY[HU$"U%J
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
M&OH7CPQSTRBP<4@[H@7H9-JP4C6]%)7Z@P( 4""@/FU^IVKU0:4_V   &@@
M#8'#F+1Q#:FK.+>1:#5L[-Q(E#ZR5H]-O&Z+O\ZRK%YZNICSS^)5S!8O>IY7
M!L8T").8BCB +$T3'4^C-SP)@1'W?8F$(-0S"ODSZFUL"^5=OM!)\0#?2EID
M[!#*+)L+D9>KY7)EZ5K7CKC9PN4,QYZ7DUK. K>&I'6>2G>\;X2((S9N[VM0
MCC12>Y>YS%[JEIGD\F+*<9BF?IA"Y*4A1$G(]2F)!_TX15*$."1F.1.V38Z-
M&2[)G'!BEYE$ =,^M[NIV_,$OKRXN?A\X2XSR5:YLS.3J*8&S4RR%7TW,TGC
MDVZ+\)=_K+-B#M;!=-A//!E*J&:,4-.(<$A(&$,?\X0E/J)Q;+7L[K0_MNET
MKZ\V9V CI=UZN@N>V0IZ!B0]3[F-9#V$QAW1VM&ZN-OZH"OA$=5VU[YCCYV7
MS+C*"[K)KURMI54$W31!0120.(0RP#%$E#!(DYA SH5DGA\)A(Q\S^VZ'=LT
M/Y4C]QR$S2:]>]QZYH)-)N(ZX7,C&WPE-/BI$OMX);K.R8?-<'*<</A$IQ^2
M9-@,B&.)A0W?/N/T?B]1>^/,[M/;]I'J2*_(OZ&9</5V/5^N\L*Y:%G<OCX\
MD7EU E%DP%E>SZO2I#(E41Q% JI_(YW^A\/4HQ(*+HE'!$L3&5D?SP\@^-AH
ML$XLI,M)%B4DEY8U) <;<8M#])&-XX"GY$VEFT?E1>:U0Z?I6O4)*)4'#>TK
M+Y>5TK\Z95].0 D!4%\55X5S/VK87)Z$#R'V\$?= P[&P;/L(?OO?%B]RC/M
M 5&<J'^?9ZOE_;?OU<8OC' 0$QQ"7^HL$H1C2$4@(&,RC"7B$>-6T2NMO8UM
M5=D*6Q;9!86XX"<EL.WZTHZR\0&U&^SZ/Z ^#EL/&W C7-P=4[?T-?0Q]6FU
M#QQ3&[S4,9]5OF!"\.65$O5K-A?+6WFI+'6UDPP"'(:$<$@#S"$22.W5/?43
MB3G!.(@\&5OMU8_V-#8&^;3(\\6/;/ZX!,J2H63^WR 7KXO9:W'/58@,)&&%
MN[IEAJNC8)N1B1,(>R:26D:@O_R@D%)GYRWE=)C;ZA04KI):'>UGV&Q6I]3=
M2V-U\@6GQ2?5'\KFE_6=VI0)Y%&?$<AQD8T_(C -: S3"!/)I$!<H.E</&I_
MYX>SZTSN"V T)])R3NR)T>-"^R_D^>7?/U=$XJ20Y 'PS?C$+99C*PBI/RCU
MF(!:D<'*/1['L-^2C@?Z'4/9QN-P&)9F;&F@&Y%]7XI;^66YRI[5=V<Y14F(
M8QK&$&%]88]E "G6D5^^^H<+@>+$JK3B^^;'9N(HZ?2BO)'/CH9VH#/CFNZ
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
MY-BSBQ;L:6 &C1.\^*CA,+,"^X6XYQ7AJO7B8@*:V%^88&]M/W:'SY%MV4&
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
M]C@V'BA3M<VTS]A*^XPU*BIWO8 ^AK7M];,#!(>[?"Y3D6S$G8"MP'W</)_
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
MCQ;YVU1X*4^(6GH\D@@UU5.B9[EB3NQ%6/A!F" K9[/C78UOQE>" 6759TO
M,[7FYD*-YMEUHFIPC:\>'$#6__7"?NVGC:"]5GC: :._6DYU1Q]=M6E'88/Z
M3+MO=*,)Q3?:S5Y\%N6_U_.ZY4PLIP&-0^%%D3*O$@*1E#'$H;[&3'#((V6R
M4M_OD+JEM5.C"3!\S%)#0CNN:$?8C"[.!VP8QJCE!#_5DOZL$^^:8&?-&D:8
M."*.]KX&Y0XCM7?IP^PE^]C'+VKYU%MGL<E.I^M(W0NM2S;+"H/ZE]F"DMFV
M$L/7Q0_UG*[-H%^Y>-;7%E/&B/01YC *,84HBCA,F6#09[&7!)Z(A)E)XE*H
ML1DOOUQ_?;@VC^MS-C;M%/51B/?,9!N5FDDQBW)T[]6:@%*Q9C$8I1HL=*O>
MG8!2O0\8._.XS8\8PX%B.P<=2ZLP4->@MX2*.NMJL'!2U^ T0TZ=M^V\2L?=
M8I:QM_*_VPL?'"=2C6L,$9'*(,=Q "F1 H;,1X%2B7G,**M'5P'&MB:^*^G0
ME-Y9]8W#XV!FMO>);L_KGQ(=' 5W DK!P1_5OT/7T&A%K_]Z&8>['TMMC%9P
M+.I@M+?CZ%12_5#_K8K*:-[17<QKY\;EX4N\R\5R-4T3Z44B03"FD6+&1&*(
M@]B',:'43SRA_F!%BGT(.3;B+#T82M\&UI#US'-0%\/9\01UX$'ZB+-7_?/F
M@TK)R3O7E*+B4:WH!#2=)=X]IK7M\0#7X5CT=?3K0L2//31V"/+)XV:7?;DZ
MJ+[+Q0O)^(Y<2I8BHV<I]Y0D//!3+X&8<&4P)PF!..(,\I3B*,"ASQAV<H)M
M(LU(C[8KT3>%. L266BQSSWI-AJBKD?@SA#_T+/Q&ORZX(K&OLS3?-%>;L+!
M@;D-@KV=I!L)\<%'[#9 G3Y[MVJM:U4&11ZJQ<(%^7^M\VS),Z:9N([7"25B
M,HYAC%(?(AJGNCHQ@3RB29)Z'A&AG2-P>W_CLWZ);:WS4XB:L9A#G'JFJT+2
M@HW*2("FL#U$]1@"XZS>0GMO U=;,%)]O]:"V6O=".1.9T<I++N"E.Z4 9>+
M59871P,ZTG!9/5$=$TRY%X5I0"D,?$0ABGT,TS#ABEM\+T&"A2RUJA5E*\#8
M**:6SHYEK&$WHYT^P>R9ARK!&G;1>^F+H&=](EDI,,S99%= '?&7=?>#$EI7
M<'89KG,[W2CO=Z$+8PE^\2IR\EC%;%71 \O;]6JIJTMG\\?/V6RM'MM6_+Q>
MB>=M@DL2H1CC2,(TDA(B'#!(1<@A2Q )@X!BY%N5[G4CUMCHL=)&GST^J]E=
M%L*RS#3J:,#,*'3X8>B96&N%0#T4I4J;P+<E:&BU<U/>2UI3MP@[8EI'0@W*
MOVZ!W&5EQZUWKJOS7(5P[74\9:D?$!W @E-$E 'JQ9"FA$$<H@1ACA$F5IO;
MML[&QJN7%9]J82<5K8)%8R+_E-5L:UL2N0UR,PYU!63/S%AA^*W$L)1TTF1#
MIS5T3B+BKG[.\:Z&KIUS4ND#=7-.O].-2^H2[M,PY()(+X*!3N"'?$8A#7$*
M%9_0B(81E939\$;=\-@XHI;+;OYO8$*$>3C%$M* (8BXH! C%$$O8)@'8<PD
MBJ<O1<W';RN2K_H#:[>3_B&; $IF1?)BL@)J4P*H>,SF<TVLRF[2?RAEZ@AM
M$ 6>2 .%99QJ]RY=)B:-,63$3X(TI'',2 7MESGO&]BZBP^ 5>@;* > FJU+
M72#J>0TZ.4>MEYI=)1TM*YMF!UU"=I7972[V/K>/;=ADD_Z<9Z]B_FVAS%E]
ME7W]<'U=G?ES$I%(T!"B),401=KD#"B',4\%CY+$9\3(\<BLN[$M([^+V6P)
MKDC^N-CF< >E^*"6'R@%P+5%V((![.V3VCV8/4_U4]B=OFWI]-TUC@QP"^9
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
M;M7SX[H R^3&@>."/S W[I(I;#FZ8TF/M?3AJ# <?($H,H! HU)G. #?4FK
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
M*YCIS)P$8\TAU5) A=(TR3-%6.IUDW]JHJF19*-*B!446$D[EGD\B:T;_X5
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
M)LB&G#!&(+;1L!3S&!(M=!+'&9*I?SS^VUFFQC.5WV:Y6L):0,!*B3MXMPX
M]?!M]8%I%,_6-D-I+V)@O]8I!$)ZM0[F&-^G=4K-HQZMDQ\.E'.YSWE?%<45
M6Z]?]&IM2RJ:.3=?GOE_*K%Y6%W_?)JOJQ,#3W"68\&@4)1#C&(%&8XIS/(T
M53CAB21>Q;QZ2S0U.BF#PO>U+&Q7%-'4HNI"][Q<S+_/[<U3\Y>VZ4U;).A
M:^K&4J.NU,",=C3ULE%IPZ[:*XTL[6U K92-[]^K-6"^95>$ATJS]);G?;,K
MN\)W-JFR\\#A<REMA:*/B]6?_Z+DH_J-S9?VAY?:,-V]$@MCR<SUO*J9;Z2O
MDE)F7,0:HT3 *";F>&D(';)(<:@1B5'.<:3-Y$OU:"]5/0R]<!(Z,06MF*(I
MYW"$\75I3/'%_+\-93P:%< OEMC_8ELDFF6<_V";*I%J5X X7.YFEP7V,#M'
M7K3)9(26A=JLAJ!4\0+\5BYK_5MF-05O5;VH4KU"IW8-M XCY)QVD6XRZ:D]
MH/7)9.TSC?\56UW5W,CR?;4LBZ47N^OI1&,>*46@+98"<<H5I)Q%,"(8L31.
MA,B=4DO.S#,U@WS;/D&4LH*B%/:?W&]=VB ]?_$5"*B!"7.+425FU<FB<+G'
M]T++_>XI$&HCW2EU1L_KFL@!DY;KG[:G1[O6<5"A>5WC\O&16S_5_22N?ZJU
MF!?6$?OYN;Q73:FBB*H$1BIE$".10:9D#I,D5B16J4J07]Y>: FG1LNUG$#M
M!05L ]12V@0SVW,)_#+?TO58W9=.+B])XH0Q+2'!MGQT8A8ZUY3!6*&,L%QE
ML>8^Q2+>=WE'*#%Q;'DGM)YN)Z1W7:6!M_P 7:UV?:L:>EZ 2M,)=*0ZMPCO
MW57JI'S_,SI#G8,W6'>GLQ/Y'Y/,.6NSK8NJ$.)):LY!"*$(8A%1F).$P2B6
M.4($Y2IQ"K9X,^[4]MM2-'<[OHG0^5-.1[T'IKA2J@YQ=DW=W<\L'3$8Z8SB
MB(77B>2(QBTGD.:G1SMQ'!&Q><(X]NMN)XI/\Z6ZU57FT4<F;!;"R]>E;;%Q
MQ<R2V!Q8<XR9;\I.5TK=&2ZSB_ZH9E0IQ2F6$&%M3@Y9BB!E.89",T59FFH6
M"Y^30V=)IL98>S&!5L9Z?*HD];0=NR^,FXTX"MP#$Z75P9ZZZMS'K1H7H%($
M;#4I"]%NU\0H _;:A+/W>@,:R*[K+L>H]EMON-[::?T']+?'?E7:S"K+'IRV
MBI[9"FW(;67GW>HOS[R8RSE;VPY"E"#)22X,528<8IEKR##54&<Z8RG%>2R(
MJ[WF,>_4V+&2T;ZU\U<A[45#9MM>> .>S"8W%_,GMK%7E$!6.E>-KFNERYRN
M@MGDV0(\>>6/^"S=>4-RH 49/IRDA+0I=IDIL#T-V^2"INS#P.MNJPX$\TBV
M;#BXO<S=#J"UF,,^HXUF+G=0L6E.=WF\F[G][VSQ7/D/%HO5G\PH5E25 -3Z
MARJNOK'UHY(/*]O$Q_R\KGP^2V*A,H%S2*BP?2+B#/*<(;.)$!$KG"=<>,4W
M=Y)B<AN);5M7B6H#VZRP1;D?U/)ZQK)T6QDW6WMPO(?VN5Y?@6WIM N 8AC1
M"[!3"NRU*O'?ZG4!+J6QQ2I7:Z7D=J&:ZQ3. N\%<R#KNYL,HUK>O6!Z:W7W
M&ZP;B5X*LUT_+VSX7%L$2UG!<4842U4<21CS7%DW:0QS%3'K-55*:IHBY77!
MZ3/YU"BS(3LX&VM6E\!T]#]V6ALW]AP*\8%),RS8WF38!;5 '.@U]:C4UP64
MMXS7:8SW"?>X?=X4&[/5FN/Q-MPC37&DM((T0A3B/&:04YW"+(H9PA3'*I6S
M*IOCR\:<O\>)"CB0T^<U?BOM\+$!J[VX-O2#J\?Y<FG_\>X!((<+KI4Y'%">
MF17&Q!P=B("44 95KN)8L%SFR7;!KY>.4?,36.ZMK*,O]B3B? Z7F1C#1L<4
MPRB/S'N="0IY8M[K7&K;/SXCA+,QXWQZ+?&8<3[-Y9W0>KI91N^Z2D.?.0/&
M^33TG%Z<S\E%F$B<SZ%\_Z/B?$["&SK.Y_1$/2N._?Z\>6:+C\]+N0WN0(31
M'#,%\TC:XIW&BJ/8'''3#,N<L3SFR*EN_/FIIG:"?25MQPI4AWB>O]\)A]+
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
M3+.$HRB+84QLL>F4)^;X(Q!,%$-$2_,R(]JMOZF; %/;8YK-.[<:@*8*%[8
M1.,'?7NA.JZ3VRXR)/H#[PKA@>_13-4/O> =5AVG?Z>VJW[@G.[%ZCE.QSPP
M5GRS$>WF#UO'X@=;V H6EYLKMEZ_&(ZN2KV+G&:Y5!BF(LEMD0D!\SBR9489
M553$J2)>40).LTZ-^JRT92G]LA&7VLOMF0GFA+@;GP7'<6 2VT%8_J4A<MG/
M8"MUZ#+\7BB%2AISFG/<]#$?& X2R;P>[AB[5%IXV]R,6,L49UA#+9"$6&>&
M<Q*=0IH)S7B:Y%B2V6:U80LWSGDUNA>W[.88[L5XL'. NLAHIW/Z:_#<Z*,S
M) /31"77$.DKQQ0.%=?S:NQQHW:.J740DW/T0QW[\]C,EKLJ%VN7H&:L )%1
M# F.&<12Q#!/40RCC$=I%-O:Y%XVPI$YIF81E")Z]M$Y@IS;R]H3CX%?V5(Z
M4(LWP)O;HGVH7CI'9ABWF<YI%0^ZZ;1\-)1SW_;Y+8/W[E;%9JTV\W55!:_Q
MB===?S^9 6XVZGLQBV-&4,9BF/*40JRHH0**<JAB@H2(9**E5^V9D,)-C4..
M>7N+TD:NHF-?*_CF8V_;BH,_K)Z@5-33XQ+T"]#5IS_.LKZ#_W[@%0W@F^\/
M_6!^^!ZBO;//O3^HY_WK >;H&GZX2W*^8W/Y66UF0C%-$LV@^8_M02 3F&N>
M0TP2(1*%*1)>Q'\XQ=3HNUF=P#>T\  ^-]KL!\K Y->L/P"L>&4*1\B0P5/*
M!XL5/)A@Y"#!4PH>1@>>_&3'BH*O6K??SQ^_;6[UUT*5)T>/KD0RR^-$QADD
M.I(0"RPA3_,$1H0;1LA5$G&G9-_ <DV-.G9J;9L8E9K!E89&M^HV?JR.5*%6
MWHW WF$]!V:]]UE*_P*,88$/5:DQD%3CEG0,"^5![<? PW?;$([<0.[/>((Q
MG/ XAX1%,<0)9M#\!$';+85G2B+JQ_)MDTV-NH]=P/<X>[?B[,:IH= ;F"B[
M ^=-=BZ(!&*PUJE&I247I=]RC=,S?@0BU7QVO=S,-R]?OK/%8CO#3#,M$]N?
M5/ \@MBVK6 )(5!AGE"I8I[$3D7Q3XP_-9JH1 2EC+N@'3=J.(5@.QL$P&5@
M O"#Q/FE/Z/XD?>\4.(?'U<__J]YLGK%S5_V;_:I\49YF<\HLWU_SWVL1\NU
MHIF>'1.28YEE]N;='.<D99 *H:!F,<J$&221=/94!G(:RV2]<=ON#^;Q^9*^
MG6W #4L]SI=+:]ESMB@[SO;K8O8*V41D.4M2#16S-?H92F">I@C*E-(DIR(A
M<5PC>[V4H^&ZG6M(%I #0>IF+?4":6"&K&2[&*8,P$G%0S8H*]XMD?^D>D>;
M?1W]8(]VO=]6"_-$4?4#^[S:J%_GA5BLBN?UWOD^RS%B,HNLS:-S\\[S&-*$
M1Y!P1 2.TS15_FUZ76:>FG%T=?O[[[>?P9>'VZM_[="%UPEL1S88 L*A6:(A
M\__9=E6T8H.]W."/0;+VO>$*V637:=[QF^OZP'&TJ:[7 +U;?OPZ_S&7:BF+
M.[4NJ?!7)1;F#SF3)(D$C3@D1#.("94PUW$,)4\I4DF2:>9T0O.9=&K,M!,4
M&'NH,DQ*$T6N%D;>QD^[]P YO0!NE!4:UH'9ZG57D)W$%S9IL6H28GY:BSU(
MBY"S((7O%7)ZRO=J&G(6A);N(>>?[9N0]UEM8Q9L%N";F(59;D-+A2 P%9'A
M)63;G(HHAU&L"$$I5WGFY6UVG'=JU-3, CN9]-LUU:Y]!1QMJ?"X#FU)O8&T
MB611)]$-4_[($ZO@:73ML[Y3]IP3%*>3YMP>[\95]^J'6CZK8M?3B"@1JPSG
M4*4D@EAQ 2F5#'*=2"+C1% D?$CI[0138Q_[>A1LH8I_\J.8 ^#<N*0/' .3
MQE:T09HZG=([$ $<##_JFWY*N;>O],G/=7MW/\Z7\XWZ-/]AF[-LS%+:*_(J
M)<9&WIGWE3)IRR1B%4.<H1PR\PI#(G!BWF2"D60^R6;MTWF]UZ-EGRU;XO2Z
M89I)A$0"2:X-.Z)$0XIR RS!F>19EM T]F''@)B.Q)5BF]"ZJZT[WPE>@#_G
MFV] VGA>HQ9X+I1^7H"%4<\SD/3,,KAQ;3AP!V;>2E!82@KVHH)MSF#0:%,W
M5 +Q\IG)1F5I-\7?<K;C4WV*5O[^O-C,?V=+]FC.H?;:\XH]U77Z<IJ))-,2
M\E@*B!/#/ RE$8QYBK5@!"6YDS7F.N'4&*=9NZ^4&M9BU[?M1O N11);$&^G
MEB%P')A<'"#L57"R!<LN52;#8/H.I24[8]NQF.1YH)PJ2+8,\PYE(\\K=;Q6
MI,-S_@Q]K;42FUUWAP?VTU:9NU=6H_EBSJK85"6>[6=L.PBU+%@5:O9]7GWU
MJO+HLS376! 5P5PFW)B-'$-NV](PE%&$:*H9<3(;@THU-:[?"5WVI]E*;:S'
MK=CN[!1NY<YO!^^R'@/O&3N=&KU7JQ*+K_6RI1BWB]94#>QUNZA;0+S'XKGO
M/^^RB"-M4F,NIM=>%ASTE@TOW%RC[8K!X6ENG>$'[^I_+C;KN:V-:<LPS80B
M&6<IAC22]JI>QY#%L88B1GF62H8(R_V\S\WAI[;C[:4KZZ_Y.J!?(>?J?NZ*
MQ^#.YQT45VU0=' \'],XF-OYU> C.YV/*7;H<C[ZJ8X.YVW?G\K_\;MB-I9'
MWBX-;SROU_/EXP=6S(O]_6J""<I5AF"LXQQB'6>0DCR'F:!2I:GD2'L%!OH*
M,+47?M\;ZZ)V[H&M#K9D]4X+4*KAZ3+U71Q')^J D _M5O5">]!K\:XHAG+#
M^DX_KF.V(S@'KMJNX_0M+; JBK)FI%ZM_V1K6=W0SQ"33(F(P,B<_B'.C!F3
M8V1._BAF"8DT8:E7\;@S\TV-ZQKYXT9>\$K@;@6TSP'N1F@!81R8OWHAV".1
MOA67X GRQV=[I\3W5M5/)[2W/]8QBG#^N)SKN6#+S:40]JAE9BI;I<U5T\12
MF!).<I@H:5A&,%NBTAR@2)8ICBF--?'+O7":=FID\^7FM\\W'V^N+C\_@,NK
MJ]NOGQ]N/O\&[FX_W5S=7'_QC!YT0]Z-;L+C.3#K- 0&>XG!5N2A$C"\8 H5
M-N@VZ;A1@UY ' 0-^CWM?R?R>;7\MV>V,',8PZKJ@%)?]HD$IRF+%22Y,$2$
M$PX9UPQ2%9$D-R80Q\SUCN/D+%/C'2,HV$D*:E'=7=VGT3Q_[Q $HX&YY"@\
M'6Z;3^/D[N(/@M=(+ON.N'EYW\_BT>)-/_WL:-[QL^(WO=WG/]S-1KO^_K18
MO2CU1:U_S(4JDTC,&5/)IL?<3/Y#%1LE+RO;T 8F-G]O@[H_KS;_H3;6_6[X
M^[]MSIK.\YBE"F818Q!'-GB3J!3*)"$49X0)Z676#2;IU!BYBOM\7JYW$KZ^
M3A9&![!6"V9=S9L56*Z6L%*ZRG^#W*+R^AECVILIRO)4GDZYX;X@;M;G))9]
M:(.U7+92*UNLO:Q&=[E?L0NPTP^4"EZ4:3 VL1B\J W8ZQ3N=G,T^ ,9PL/)
M.:KM/#C<;\WMX2?LZ)JTM9/M'&OUS9;.VU[S6D?%O4UR+(KRE%!>X\K_?"XV
M]DWY: "]O+VZN;./F%^<K<'\<;7^K#:_L?G2#OS ?LYB1B+%!8%2D0QBDEIO
MA/FG.0U$*E&92EDZ6ZI'R[X/'J[/=]+'B>5HQ7('6@UH'AK:>C12EDUP*^7*
M6NRKLA;[D]$/-HJQ\TI#SYWKW;Y"CE[<*7\C1G(/EZO]"H-MA,\O5MJ_V/SS
M8VUWK3J[C[P%"^S1 I9A@<7KPL8,!70UO_/BA?)AOY<:XSK'WWFQ#KSN[RU/
MCQIT![9!PT[]\++_2&W&E@9#?5YMU'6Z7RT6'ZN;AEDFHCSBG$&2IKF]9!0P
M%RB"C.9,4Y4(Z9>N.XR84SLD5J6R.M1E"[^ CK<([[XL(Q[B7@6?-G2TS8"/
M'O:J4UVMZJLJ<^ /JRZH]0UY7S'H@H2L7!=>R/'+WPT&]-$:>L/-UFWK^'WU
MHYS[9FFC6RJ)%HO5G[;.I.V4<Z\*<_Y419-6F$J%[2@*&=.VTR@6D":9@ JC
ME#&9J2Q*??:%#C),CO2OK\"VJ,8%L%T<Z078Z@6,2;S3#.Q5*\]56^5<V238
M*KIM#@.OS=#,/]JR>)-\#V #,7@7"4:EYQX0O>7>/D-U(]:[]>I)K3<OUN#?
MF!ELI<(G*\*QNIL)C52211E4-,\@IED"N:#4T&K*=1PG+$Z\&-5G\JE1Z=W]
M[=WU_<-_7("[3V7(S>=?P?6_?;VY^_WZ\X,?+7JM@1L?#H7LP$2X%?NB=--L
M2HK;B3Y\"=0NJ 5B.:^I1Z6W+J"\Y;5.8X3J>/M79?OL*'GY0ZW98Q49;5FU
M\H\4LT@S':N$6>LP@9@E"E)),I@KB1A*&":QE__ 6X*I45LI'V![ 0$S_[/U
M486-^W@L2]X\F4<Z=;3W7R WRAL4]H%Y[[B3VOYW5P#G4FR>V0+LY2^KK-8+
M,F0'64<4!VL3>V[^=^X%ZPC/^8:OK@,%MO,>S'B_KKZS^7+&&,;4/ W3/(D@
M3G,.J3'RH(X3K6G.59)X99XZS#DUZFLU0"Z %1S\48GN>?9U68">METW6 >F
MMD^KY6-=UNOA55&O\SB&L]\.D1G:;&O,. UK[1 "9R/MR*.=6TNO;>/#7U7U
MY\VRCM"VMU9J_J-,86)$B213*21I+B!&3$$6IX:%LBPV](1RF<8=XB=<YIYH
MK,,__!W*HG\^]5]0_;'5!JQWZG@WKCZ_.&X,%0SKT9I;EV*"7[8"_\4ZW7:(
MWI]'M$O#:V>(PK7 /C_EV$VQG4$XTB;;_5G_-H=?;+[L?/."8OXPWYAO/DUS
M%*$4P9P)VQ<U(9"E60R5THJF&:4:*=<>AV\'GYH55 IE#WDH_H7_!6S%=6]Q
M>(!>.V_TQ61@?O"%PZN]X2F]._4V/!ALM,:&I]1H=C4\^9F^/28.#U/%WK%4
M9T8S',<ICVP='<8AYI) *A&'(E=1S',2&2.C6Z<)A]FG]H(WFR,<\ST4#5]K
MQTQUO]5Q# $9"O.A[_>"PMVC(84';,';4KC,_4[-*3Q@.=VBPF>0KH7"ME%Z
M=O0O3ZMEL5I_JAU$M0L!"Y1CEFE(,MOHBZ8:TM16W(A9QKG0F"BOZNP.<TZ-
MW/8B5Q[46FBPE;JC \<%?3<:"XSIP.35'\X.!<N< 0I6Q>S\C".7-G.&X+#>
MF?NCW8CHDRH*I?:U/ZIS6"'6\S($;-</1F11++6QN2+$S)E)&7.+IS8R-\IM
M:J<R1RFO\C^.\TZ-D!I%;*S$GO=EKF"[<<\ $ [M0"XEMK&MKU"TF1T[L0?I
MU^,)52 F<IUU5#;RA.(M(_D^WO<\^+61^OS ?M8F63-JZDT3/!8CE.F<0JRI
M^4^",YAK2B#+4(*0RDF6>=U\=1=E:MS5/+HT=2DK*&^U <W@PZ['1.]%\STS
M#KD4(QX@W59AI Z'73$-?KKT%N2=CII= 3M][NP\8L=  O9BA[/1J)="K)_9
MPK?_7\L($WKEME*6(0!;.0>Q,QSP"'5;W3+3N+?4YU4^N)UV>*1S:(Q\%O;&
MNZYA4*9%UL65LCQ'&A,,66R[W:5:0JI5#@DB"#'".<]\0YY/3C:UO;_*KOY_
MO.-<3J/I2!"!,!J:(2HQ2X*H!36GE!*S<&6J?# )%]-R>JJQ@UG.*GTDBN7\
M,UW]KT]5NEMQJS_-E\K\<;56<KZ9Y8CR3,H<1LKVJ.-:0\,+,<PPCE$<)SD6
MJ$/,RLD))QJHLI/75N7@;/DWL%8_5HL?]M N2L&!9K:WANM=\GGD73VN?8 <
MR\^ZE=%:^:64]B^5G"%]JV>@".91/37/R'[4,^H>>D_//="GS^4G\Q]UQ9Y^
M6Z_^W'R[64KU\^/S4M;;(^(D1GD<0T&I[9&&<\@YIC#+!4GS!#&12?]6EZUS
M3LWF:+83_+!@XF_WYL@"2A7*5H*5$J#4 E@UNO1K;%^%=DH9"-N!R:4):PN8
MO;I@MJ/:I1%F,'3?H1=F+Y0[]L-TPLNI)6;[2._0%=-)M>.-,=T>[9IMQC<W
M2W,,+;]>=K^XV:COQ<QVZB(\8S!"Q!P;LRPV3$YB&,51'A,5Q01['1M/S#,U
M]K9B@KV<X \K*2A%];QM/P6LF[T7 *Z!";D34AVRN5IQ"):S=7R6D3.S6E4]
MS+]J_W@W.OCP7%B3L;A:?>?S996_OY15*I?XK^=Y,>]P9>LWZ(2^XUO!04/R
MRIU:YO\TA!_$K]H-MT#OA.?DH[XJW8!Y^P9U'*7OW:Z9X/E[56GH:Z'>W@EJ
M'N<D9@FD.M<01Y&&3"<(THSJ2.%<"YUTN\AMG7=J^W#SOK A.+"2=[V?;0?>
M]S(V&)R#[]/',K.;F(YST>J$5_!;U?99W^D*U0F*T_>E;H]WHZDK6WKS5G_9
MF*'V-FO&9:XYRV'$D:T(C1+(B4ZAH2A*1:(BG'DU,C@ZR]0HJ!32\D\I9H^3
MP'%,W?BF-U(#LTL7D+Q)I!6$0)1Q?(Y1":)5S;=TT/[ASI$1M=^X/%P8FK%E
MNVQI^V(6Q31.&!*09?:"B/(<YC*)8"H5TE&2(Y3GVPLBQXODT[-UN!T:PR\P
MKV4L^X]X7BJW0.MXI]P3KM&"3G8W0)6'8(M9*6G0F)-S<(2+.3DYT]@Q)^=4
M/A)S<O:1OHUS;2SLISGCY:WH+&<TQL8<@#Q5"<1:,)ACGL"(2&,FI$F*A=,-
MT)EYIF8L5!V+%F42_J(6<NX;*'\*4\.P<4:QP52F'.(,*\ACB6&49UBF*=(L
MSF<;*\%XF.YF&QK3U2YJ?B!TW>@W &8#4^]!>L%.R"'Z"Q]%(7A?X=>SO%,_
MX:.JGNXC?/SC';U&ZM'R][UZ6JWMX,?J:?(4,4JXAB1.B0W=X;8[>0S3V+!%
MEO"((.WE,3H_Y]38]_[ZWZ\_?[TN2YA^N?[-%C %]]=WM_>V@;"GN\@!<4=7
M45@<!V:/6EJP$W?X8J4> (7R"SG,.*Y/R!V" W^0QZ/=R*>]@O,'MK _FF6Y
MHB*Q966HSJQQ(B"/S#]99&LMTQR).)X9<IROY)<-6V_<2,AI;I_7YZT$ UX:
M5<*!#^IQOES:-\F<A?Y#L;4?$;FAGV8QRB*%($+()G\18QI&G,&(1S3+(DTT
MH37ZUTO'@_E V&_G'Q[Y:]M&;3C,$\*09 +#3!)SQ%$R@31**&1)C!)%2<ZR
MS&?##8[W.#4*ZKK]>K4&!;-Y)M(P4%5OS+:TJZ*8"U!\FS\]*0F>E]+VM3,4
MN+*Z&LO>_/UQS;Y[FO%N:^2V10='?NA-^EB;A;.M%<*W1/7"+=#>[3;GJ+NW
M%PQO]V^_AT/V*ZO:W)C);I:V^O+\ARIKO=RM%G/Q,M-I2AC/.=38[N<,9Y!G
M<0XYIHS&5,L<>Y4\Z"##U+BN=+(?Z6L5HO=8^V(XGC2&A7AH4FMO_0S^J"0>
MZ'ZZ.W2#]O=JEV "S;N<('+KS.4V5.=F"FJ]+O.*/^T=A]N?7O^T0MC0VOF&
M+6S^\<WRAQ%AM7ZIKF882JE,M(0JSAG$4:P@)3&#YJ=":1ISFJ@.:5']I.IP
M.S9&[M1.2,!9,;?FH#;Z*+NQ>?=7Z+-F;IPYPA*,%M]3BEQ64FBH<@%V(@=M
MKA  M7"=%OH(,W;;A0# '>G!$&+4KK[IA?GMXV]JJ=9L82,GY??Y<FZC)2V'
MU[,7=?8,44SFD;8U2W,,,:49I"K/;6$MI*),$9DS/R^UQ^R3,R@KX2] +7X5
M4_Q* :!J#7S=USZ+XNK('@CJP5W:YU'>"C] PGLGV((YNGWF'MGEW0&60^=W
MET'\\UY_GTM#G[\_V\Y%-N5J^^)$+,WR7&60Q8F$6! &N2 $QL8NC(2(.='$
M-<_UQ!Q3XRPCIDT&=,^K/(5=.^D$0F1@:JG! )6,94ZD X4X0^2>:AH JI%2
M2X]!%B9]] P&+>FBIYX<+3WTC.C-=-!S'^UFQ'TTK+E197>C&_,5J-H;51W;
M+K_;B\7_+K\6-:':&Y6'/U<S<_95@J0,DMB8<%@S#G.NS=]X&F,913QE7L9<
M)RFF1I#FVY7X&6O=P'<SV@:'=&"&K>2O^V[M-:@R[RY*NTULS*^:RER45W[
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
M[LXCR#NU_>^O\\TWVY3;[G\;]M.G/?08JWO^YG]B:S;P_F6#SZVZP.@+K,+
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
M1&W%#XUQ+C1)G?@@@"Q3HXV;?3#?TU;J,IQCU\1*L%)P/R.MSVJY668CK<'
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
M=3Z$$VE/EE'%ZE*3R[V\CO5,SK&T8\IA"(U,= ?"W02U>![KB[2J[JMXR/D
MTU8&:57PK.Q'^Y4].V(7SP47*U[JQC\+1$@8Y4@"G-!$%S^/0):$!(A<1#""
M$!+2)[SA:)"91C'L9 P>2>%8%O,81+OOV1V3B3I=-W+=F-Y>'MM;7U+85U?K
MHV=/V\SZDEIG/:PO7C1"C;*FO=?;)Z$/N+_^OEZ@*,_"7$H00Y&J#1I&@" $
M :(Q%TD>95F4NVS0',>?V^9+O3O08PFR"X!;KN?CP3CV8F]1=FR[#JC:]B@F
MO0F:Y,^)"HZU8S=%J;$+H\^GR%@[-$[EQ3H>XQZ\]&'%G\KMIB#+7\B*5&=I
M39/ D$54$@@DR@2 1*=29RD!29C$<8QXR)&T#55J'V9N!+67U"*FSP7.;E[R
M!]+(]'. SU[*'G%%'4C91Q'Y06RBF*&>R#D%!UT'I",4J./FR0)_KBMP&.9C
M<;4[)?YU0SA9+NN7,8E3+@4F(,J3"$"!8T 2_1-2_(CC+,'2.F#SZ,ES([Y:
M./LO^!BGZ_366_N1&:V6JP>''2-@3UN]D9B(J:P1<>*FBUIWT-'Q]9,QT$4Q
M#TGG\@6]RY>)Y5*P[1-9-H'I]>LDLI"36 J0AVD&("8A('&*0)SF)!4XPS%Q
M*O':/M3<F.@3V9KN:/J(GNL.MDI8'FP%^[9:+]</SD[?#I#M-HM^H!O=,-L+
MN<].\9\D?1T,?]6QV@::NB;6%84O5,*Z=D?O5B*Z"/^N:8DH/RH=ZH,,$3.6
MQZ%4#,%THG.< 9)F#$0)@8Q0'F*W4("NP>9&&2:21PWTW?1<:HZ'7IP;@[2C
M:\<4OC ;F2N:;A[[;DCZY&@OJM<6'E<!\=>GHWVHJ9MQ7%7Z0L>-Z_=X;?*V
M8#S!89S'(!*" !@R#C(4"Q#%88YP ED4QXNJ","7+=EL[6BC9327M_]TS/$^
MA#=$_97IDJ@Z:)"*AV*EB]3JO^BJ!U[:LRTX@QQF* %*AEQO''6#DI@#+ B2
M>:+TAJS&^=W*LD6)-Y2;$:?"6"BCSBNZ=L3L :^1.;FU:=WHG>@\\W#;*'/H
M(-?&OM<N[WFZ+Z10!*Z?N"N)NL@@BR62NAE B #,, *YX G $4M%%.=YG!*7
MV)U+@SB99Q-$[^CJO;R6,RCVS3%)C[+(%T&U(X&A4(W, (UXYNL_+'RL^%*G
MB=09ILOE^G=-J!YC SIP\14B<&F(:2,%.I0\"QCHNG8P%QQ$$35UD:NFDT?E
MDT__OHA)DH>Y;KT=0D4<'&% $&8 IQ%A.,UC1J(^T4%#!;/Z@J:/*#HK>-^;
M9GK.ES,GC0C_*Q#845"B?2G\(>0U#$#_3-=3GM>BQ6'P=7#HP ?WB6I@:MM<
M/(N#$.TXC%(=IMVXUWF,4!9" -,\ I!E&2!4G^OQ".,4HS /K<K#VPTW-W^9
MEB[X\.7>9+.X'-I?Q?7Z.:!?M$;WJM?"'B<!&?RTP+TB'ZZ"Z!(!X1/,R2(A
MAH+J&!1ABU%G<,35ATP8)&&KT'&PA/5=?0\S]<9.U]K2295W:S78ZJE8/=1Q
M;.M5^4;(]48<^#C?JA_*;<$64&:(IB0!"=5YC)RE@(2Q!"A..$XE3VF"W$X[
M>\LR-ZYNY'(]].P_&;:GHI- /#[!:V]$7>?/9(OO50GVN@34*'-R9')U;GH<
MKPY&U=OY:W]))CZ@'0S9^0GN\$<.2!(_KUQU5I25GA9E???CL:ADJVJ,+)(,
M29SP5+%IJLS<S-3:3PG ',-44-U,A#JGAON0;&X$6YL?YOBX?[%K+W-FQ[RO
M,A,C\["',M=[[<:I<>T3<9^9W5[DFCZ?VR><%[.XO0[0V^M;K 2OSY.TI7U;
MED_?#>&4OVKQR)(]+4V6QT>QK<8L6'V]KF+VMFXE_YELQ8+E4B#&)(A2?7:$
MJ0 DD[&N'ALSC 1&.7>A=+_BS8W7&]F"C7.K.\_S9NT*?J79&-\OK!5K3K3-
M'O\F.% N^-70_EX]<^S5*+B[3ZNH>S;7T_JY:UK[^)%'0-^?4]FG<%-[F$<
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
M7FT.+^CLL;?AX=,G;VAX0;5+70PO7=;O(_ZZ(5Q\U%-99XI#QAF-" 9"9!!
M$J8@TP7-TB25*),PD\2I/.7I ',S,(Q\@1'0[9L]0\[NHQV"Q\A?[0$4(S0H
M;5/<TZ=[]OA)O]TVY4X_WM;K>E0JV9WF[YH0W:[X_WXBRT*^J%7^EE4)^">9
MV E$*&4Y!R2C$8 A51L-RD* 8QA'>41A+F/KXB6]1)@; QQ&:.W[.>G#YKTF
M0:.*0UF.?O-SW5T\/NHC\\P.\/NC!EJ7 7?)E/<U!P[54D:?BZD*J(PU)VXU
M50;!V55FI=^#IZN\,DCQHV(LPY[4SXH\WG%6X5N12)2YR "*(080PQ#D<9P
M)G#"\D1&D%F%;[4/,;=UY,2EXA2\U0&DG5DY#)Z1"=\1&6?3LEUY3\;EA0$F
M-2_;%3PU,#NN=#<Q+_<*,Q5.3 C%(I:(A0)A$$I. 122 <(R ;#ZWB.<2Y@[
MN7QLQIRI_Z<JJ&1"L^S-DZOX7C<&O<#UVFT(*_!N/8-G;\7Y!'$B>VT8F$Y&
MF2TZ'>;7U4=,9FC9*G-H4EG?T\]XVA^IZ]BTK^HAE0'%",0X#8$4"5<&E-"!
ML9P#'B+".!&<,*N->O<P<S.B#H)*3.2EEK.7)=6"JITU-1RKD;FT#TS.9E4W
M"IY,JY9!)C6ONA4]-;&N7.UN9GW]??U_Q<;\][%8B7?_[TF9;KNV@(?-49,D
M@9@0D* L C#/%"7(/ ,(*SX@,$-I:E6YS670N1&$MNZ"2MI@W[#2K5^J->#7
M[:\Q8!S;S?_[.M#R5G]HJ2_CV:,4L36P]K;9& !/9*/Y ]K)7G-%K,-NLW[4
M9/:;JW*'=ISSO3WCO=:K![7E_/Y6T.WMBM^1QV)+EL9<O*?+XJ%J5+A01$XE
MBW+ ,1, ADD,\I E()9A'%&62)0Z-8VR&W9N=*ZE!J;%'U=RFU,7'>NO)J7N
M,;+>RWX3K*KZC^Q)F>/*]/E>55<M7(]N+6>(DC"+HY"I[P+INM%A"G))0X!A
M1#E"B.2)6#R+#5V_WAP=#C\BDZV5F,'R:*Y&@=S.//</X\A+KGG+M<3!V^8M
MK[;I>W$]QM@YH>,KMLYNT&ECZIR .(NE<[M[:.F66\8V3X(?.!A.#B73).,)
MQQS@D"GC/U%+!0UC"&A*4)RB,.*Y6]]8ZZ'GMF8<'MC7LA^ZP/H60+DZ W;D
M- ZN(Q/4%4A'+5?O#ICWBB)7!WZEZB"V@+17^K!^0M\8X&=EB*TW+[O#YKH[
M4+G($$FB..< 88@ I,J^U;\",DNB5!$7C9%PJTK7-M3<^&DGJ3)>2S5HR71O
MJF!3B^L:&MR*L!T?^<%M9/[90[8//OE\#:\>P</7H/ 61]PZT,0AQ=<4/H\N
MOGK'0*;8)U@=!"7&6<I%E $1<0)@)$- 84* Q 1G.,PI8K(75UP8;'9L\?%O
M[SY^O?_\X=V7GLQP"5%';AB(TV3LL)=3F21C&",VB/@FB4M#O0Y-="C=2A1=
M]PRJ'W2W7FTW!7UJ2H^]^_ZX7+^(C1Y0EWI8K\CFY?"BNG]IEDC*$4]!3B32
M]2H%R$@8 Q(G$.=1F$&[]HQ^Q)D;W=RN5D]D&; #00/BT%#6TR39\=-TT(_,
M8$W5H4,AF])#M3+!D3;'5_KJ.NL75[\5B?H*\QHUB@8"UU*U:.A3A[J@M*?K
MPZK<;LSA6+DW)E 6"\QP"++(= QC$) (A2"F4F"I##66XWZNI[8AY\::A_X1
M73)SO=+BZK\=NW;[^IY:H7?U.?D =$)?TXEC_$#RB5Q.U_#R[FIJ'?"57$S7
M &AW+5V]LQ\?5<>RCI5?CF^:T<M>'_B/4=OELLZ>7MB3AT_Z<EY6[/1%;+G*
M/?SJ[V*Y+-^3S</ZE_=?3 V8NP]?W]>!*CB-4RHB#BAD(8"0YB /HQ10FNH5
M4<K(KOC]M8'FMN 960,C[%^4M'6Y(B5O\-X^'*@3V>X/VR=>(W_B!U %)U#U
M"*'JQ,P^;,H7=A.%2@W"T"DZR@:8CHBHSMLGBX*R4>(P\LGJ^G[+]2^$?5.;
ME\W+[8IK2G[4;TO]NC+!:);H[NLHD^H/JF@T11BD$*<8BR3/4ZL2IQ9CS8T_
M=Z*:8 _1".NV/^C"ULXN\H38R QZ#-9.SA&*4%C@X<F ZAII4FO*0N53T\KF
M%I_-= ]:H+QYV5]2=TBY_9UL>!.LN=MNW&^_B<W7;V15]:8H_ZH>L2T_K#Z)
M3;'F'[239%46S)#=@B8IH5D:@R0F*8 B%CIV)@,19@E-8$JCW"F7YG74F!O'
M&5EU;>71NNN._F)8NE=F/]UCNVP.^A8=0G#8O$CWI;K8WT@#<;./?-][> P8
MP5:A4?<]*F^""A!=T[N"Y";8@5(9A3>U,US_>S7>V.U]IYKG41O_CJ[$#%H"
M3S51=LV")Y-F;BOQWT2I5H5&Z 5*$PYEQH!,\DPGK2% 4B9 2#!-62)%B-(>
M92&GDM^*A5^C.4S5A*M:?<V*6\YFR3UY UY[D>TQH?]NRVH%P7Y9_2.LF9>G
M;?:KY(G8_R;KXN7)F&XE;!G?6RRBXWE3QQ-FQ"^7X^9&.(JR@&.\H+G7.:2R
M4-DB9&[@\=6^W?Q7\N,#UXFLLF#FH_OX5)T8""(8#1. 1$0!9$2';A $>(AE
ME F6$VH5NG%UI+DY)RIA37F<8W&#2EX[6^DZP-U\X16VL8^J^R)F31?6:%P@
MBU*P/S^LG_^BGE'QA/IA3P_7GSP).5@KV%"#_0V^6G&^UXW%^9<MV3Z5]U+_
M9D%10GF:8: TQ3I3)P)YAA&($\1Q"D-$$[K8ZA1@NZV9S:!.=+$;>KR7OY(P
M*(V(0WMK7L#8SJSPC=S(C'&YEV8-Y4^_KJ3YZ4]!);Z.]^JLT^*AC68[7*.U
MS[PPY"NWS6P'X7J[S(Y[)_8S5?Q7]RH_Z$J^D#C)94H($$19,Y G".2I" $3
M<2Q"EHB81Y,<YK1).#=3J)+/%,Y8?_^NUO-2]W1O\A%Y(->;8%UMLX+M.J B
M*,KRZ55<2ZV3/K(/R<=4SM]95&FI7X3ZE=@K.@.'T+4Y>&W/3ZM\?PP7SS5X
MO?ERK@[4H]>%?A0]DT6/]E7)P[Z)]\6SJ"-CI AY)A/=TD(75F(Q 33C,8@Q
M%&$FHY#8)9.Z#CPWVM?-.P,M7D"D&J\Z6@W>DJUE<RIGX+LY>DPX)Z%>>H%Z
M*UZM9:_ =@_Y= +9H3?%2&!/U9'"*^AN;2AZ(-?5?,+E<=.UG.BAY%&CB3[W
M]]M#W/)GL=D69;%Z:#KD08H3C%.HVQBE .(\!GG"!>!,HI!'28A2IXBN\R'F
M1N<'$O9K,G@!13NK>A@V(W/S(2S>NPVV:^[)&+TPP*369+N"I^9@QY7]/NI[
M*7\AFW^*[7ORO-[H7#]36ZU>Y@A+PPR)#,A8IYPFZOLF2$K ">+*@$MI'#IM
M\CM'F]NGOI.QJH'Y;;W41_=5VT='YV0WRG;?OS?L1J8")2>H! WV"%9U%OU'
MDEN!XHDENL>:E#"LU#[E#KN;>IYP%"5Y>-B(JA[CO?PLGL7J29R4[@M3D>0$
M)D"&E.MBNZ$R%V0(L@R+!.=IA".G3!2K4>=&*\=":S=0+;;C>8<5XI8''KYQ
M'/O$HPW"4=/5G5#R==!A->:T)QTN,)P==3C=W/NTU32*^;!BZ^_BN%W,(J**
M9G(>@X0@K"R:- =9RE. (-2U6Y,,YV(7!^MTV-HZIM6'<Q*[.L%9:U5-FC<=
MC HC>; E/X)EWRJNG<A;G[T. _*UNVC]=;,N/19+M,'#WZ%J^U!3'Z9>5?K"
M(>KU>^86I/]QO7JN0RJ/,^5"3@4/H3Y-)0"F,@4T(2E(>4QR'B49Y^GBT01A
M?MF2S7;D(]:^>KA\L*?:C+A!>=J66[+BVE=!M@$5#\5JI?^B[(@7[:V?=R9=
MVSL3RPC"G"1 6=D,P)@2]<Y0!G 8P8P++@B-ZG?FW8K_V[PQC2Z3O2]BQ?_@
M;\K(I_A3S/W\3_G/4D+.,T)N@AT29PF6,X@$&#J/KQTIT%O^/T8DP=#IF2YK
MY)H@_:PR?;Q5/JXWU0GH:6&.D$<985$,9)YE -(< ;7SDR",0A1F"<)$$!=7
M4^=H<W,Q'0O;M^Y)-\!VBX@WV$8F_!/$QBQ^8@6))^[L'FM2GK-2^Y23[&[J
MQQ^?-FMELFU?='3M]K#$BOKY?=7\S/C'/Q</W[;W\M>ZS? ;(=<;<<O8T_>G
MI?;5O!6/&\&*BBU7_/:[$K?X5Q480CC)<<X(4/LY#&"(!2 HY"#A,HHHEEE.
M,[?>91-([?)93M/XK%'Z)GC4:@\IYC3%K-M1X\QF<F2"W4^AT??FI,:4_ENM
M='U6:-0&:PE^;?JHWZBMNM8].% ^.-3>/.50?W^D/>%D>:+^*22>= &9< I.
MEZ$IA^ZWF.WZQ-PNE^O?M4"E&J!I&G/+__%4;HUMOJ!)B/*<AB#'/ 20T!00
M@I1AG(4L$FD((YZZ&,;6(\_-2/[O_RU"X?\T%L:RZ6SZ6; E*<M=]E]940I3
M\UT6YA=NJXW]M-BM&:. /;8OY=U=T)2KO@G4CBS,;P[Z2^TU,5@WNFB'"-N8
ME>"GMZ+ZZ4_!7D-_U.Z,J2>"MA]W4IIUAN.4+-T?,+1CPCLI!=/-HW=G/Y\5
MVZIO66E<+"NZ/6WCR7D(:805[>F$?!CE@ K! &%9%,4A(B1SZDXS1)BY$>-A
M9X"=-D&ECCGOU H%QQKU[;C08^HLO=<33<C8Y-EC+B;JV= ?5^_=''J(\DI]
M'OJ#UMX!8L S^S'O'2F_Z?^T&?Q,EIK+%;UO-P53-J[^AXKO#WYQ<&531*]:
MTINE7?U]^<1-5#/[IAW.6H5*L05!*<XY# &/D;)8*=7I!CS3A^$XC/,L(S!U
M*8PPK?A.[#Y!V,]'L0TJ&74=,J:T,W:7^4'L]70C](G?"+LE8+[S//*BH56Y
M"?2?P8%&>G?3*!M4E]0&]^$OC^^H4+ADBAO[O,(B:,"H%J,*#G\KSNM,HZ<U
M:F+A)UW57F=B3M?!5Y*B;\F[9H4^6IUUH0^AY/Q9?0S+W36B7$"(*$9)#J)8
MJ*5/2 *R*"5 R##D.*<L50]WZLCK-/[<=B:__OG+GTUQ(!.GZM[#VPU\NU5F
M1$A'7B9L]Q,WIG*0,*N%4>?@>NVH\=T6LR>BWDH;NHT^<;G#7M"<ET#L]YA^
MI/=WH=WB@M\^BPUY$%5ABK?%\DG]KJI.<1!AM_</+7@L<,B88KM(-_U*$ 19
M(AF((68I)2&DV*D=>4\YYD:"1F+]U3ZNM[I2G6DC7!44JLK)Z->F+B[4U!/J
M74*H[]S9<><$,S(RAS8:!+4*Y\5]#C2X"6K=;D9Q9 ]$TQ-_]I5B4AX="-4I
MGPY]7$]C\OLC*3;Z0?>Z.?'CNB3+>ZE[N?ZLZ(&;(\AR9\M^6*GQ'PJZK,XF
MRT_K9<%>JC_WSM684LJ0I(!(4ZA60MTF (.(9(ENSR.BC#D9G/YEG!L?[U7<
MM=)=:MT"8G1PM%%'F%-+._9U9VIDGCZ<)-/CW>BWFS"C8A5E4AYZ-O9J[OZQ
MTC'XK?[_*$[V$>?"EY4\@H336M+C07QF;8\XU+ ,667=UX.T!;@LHDB7)68)
M2#&AN@)("HB ,4BYA#'#F*MUPBEEWWKHN?'\9UUL:[F/.S3[88^1B0Z38L?H
MXT ],E$?)=;N./<X>/ X=M!_KJT]8)XS;RT&?I4\7'M VK)R'9[0C]+>%ZMB
M*PRAGC+H89A=731)%V74==$6$,,XRJ3B,P9U.0 2@@QJ\Q>S.(EQ%-'<J<!1
M/S'F1G7J!45NY-43?CLB&Q_4D4FM4J"V,D]MRAM3,,T<P!UJ<Q/L*H?Z8[AA
M2'IBNYY"3,I\PX Z9<&!3^O;C>9.T>I&>W*Y^/&_Q,LBXQ J<LL!3Q,)8"@Q
MR$1$ )0LRDF2AC1Q[$)S,L+<>*P2,JBE#(R8@9+3M>O,*9#=M.4%GK'/?ER1
MZ=%=ID7[ 5UE3I\X<3>9%H7.N\BT7=B_3UKE,*S.9#[4-0@7"*<LS"12U@H6
M *),[<V0#NJ'29HPB2*>YVZGPY<'FMMGW<A5URQR/05N0=/VN'<X1F/[NG8B
MU@>UIKB D=)OK[DN'#PVFKLXS.1=YKJ4O=1BKO/Z?D2@8^C533JBY:UX%LNU
MV3C55D/E(5H(D<(LH1 ('*J5/209R!B. ,]A3"(>A2ERX@2+,>=&#XW(QDUP
M(+0;3]B ;4<9GB$<F3W:T&O*.D_C 7? S!/3V(PX*>DX0'#*/RZW>G>WO'GY
MA?QCO;G3B72W/XIR(>,PRUB>@"QA"$!!$EV8*@(8"9R+.(X2GGCRL9R./3=J
MZG0$E+JBD)$_, H$OVD5+#M8])F8P=Z7(7"_ILO%%6F??I8VS,9WKIR-/!>/
M2ALD#FZ4UD<,S2V\6A6I;"N+9%)N%GE"A8@2"#B!$,",()")% &JMFL9H[&D
M;G6(O$DV-VH\S'1K;SISH-V^_AH]K[]6Y\ YDJ>_:;>CUE>9S)&)]WP>N\OH
ME9UU]*[.XX $1D^8>\]F'"K7*Z4V>H*S/<_1UP#]EH0W3V6Q$F6IQJ;%R@Q]
MMUZ5A7I"E6&I"TE4AYW1@B8PS%@2*T,7*=:/6 (()!R$/"99*M($<^%6]\EE
M>!<VF*: TT$%C>!Q4S!'GYT3]G;4.Q:>([-K(W9P(/=-<"1Y<""Z/]KL@Y<G
M9G0:>E+RZP/**;_U>D;/O&VME3Z9T,_]7)3_O%,/+;;ZIP7B>19!FH$DU$G6
M&0E!'H7*3@TABU/"0BR=XKPZQIJ;Y7DDJFG07,D::&$=\Z [$+;C)4^XC4Q#
M1U(:G&X.09O&1V@!E:\LWHZ1IDVYO:[R67ZLQ2U] PS>KK^38K6(<9K"A%$@
M4H@ S"E3VUN.01S!7(9<8LFMND">/GAN1%$?FO]626>YMSQ#RS9XP!V#:6(&
MKJK?(U3@6-<!$0+U@R8.##@6_SP>X.3?W3^W._60VXT@=VNU;X@2FF."*, 9
M4I\;R2.]S>! 8!ZF22I)9G?$=_K@N7UN6K9 "Q=HZ>R_MB.PKG]M?2$8>XFU
MT][I8[ND:J^/[>A!DWULE\0__-@N_ON EC]G;96K7+[;I^VW]:;XE^"_KM03
MO^A,VZK2O0YJ+M_]$!M6E.*3WN=^UKZ)^C?:"5%7Q#])&#RZ)5I08194 1(=
MT@-Q0@ 5"0<<Q80ASB+,G,[P7U.9N9%*+7,@]FK<-'\1E6_"7U>7UWJ!++W/
M?Y#78FR']27?\]ZI>+-KUM)H$!@5 J/V[K?5BW26#GY\C^>F+J\\=S[[N[R6
M*M.W>GGE2;O8]>6U9>JW1M<!]+14FUNV77!,)%5/!3R23*V:4( ,0@X8)BQ!
M>49RX>3!.G[\W-:QVR]?WGW]XK8FG0!FMTKTAV%DWJXC.7YK1//H6;JLLR>^
M.WGXI QT6;%33FBYJM]7JO.<U0?Q_:V@VZ_J$;47A*4L1C358>N)^EHY$H!R
M&(&<1%@;NXD(G;[6R\/,[:LUQ0:TF(&6\R;0DCKZDZ[@:O=1#T=KY(_; /75
M%2CG#[T;!T\??,L@DW[XW8J>$L"5J_N>/AT<VNN:C-MB8RSLMT7)ENOR:2,<
MER:')\[HU=Z+&;P1*R&+D1:Q'NAX.RZQ'WGBXQ-G2,Z/4]P?T=,%I:OQF:HA
MTEC>W]9+=7-9=5MT_%*LGC6C;V0GKXDB.Y#X?S1]5<?X8IQ0\K7[M1ISVFVJ
M"PQG^TFGF[U6T=W]NDYTJ-GU=OM>Z&"*I1;M2;T!+T=U\A<(9DD89@)$$BM+
M5,88Y#&6 "8RH2')$1=.Z0E>I9N; 5M7?MV2'X&H]- ML<M&]F"C9/93EK?G
M;-KQX:O-T=A'M+8M0M2DU3H%.Z5.[YFLLN\PV,>M^]M3MCE4!1X&JV7-X(&#
M]/3\\6>QV19EL7JX6Y=-C;1]Q4,9HY +E "!) *0I03D$4U!"A'&).:QH,+)
M%=@]WMQ(^D!<1P?A%5PM/8;^T!K;A;B7--"BCANO9HF++S?CE=&F]3O:J7[F
MB+2\K1^+?!1;W0[BTV;]7'#!W[S\6NK$LJJAIR[4JU?28EN(O<L\Y6G&!.0@
M8Y$ ,$(0$"QC(&.8HDBDD%(GKZ6["'/CFIVHP5Y6-]+I,0UV/#0NN"-3DV[3
M9/KQ-.+K-*F?M 9!L?I3< GV4?;$_4'TQ&,]!)B4VOH#=,IV YXT_&CFY*"V
MJ5AB]E0BIBQF+ 59CC*=S90!(AD%440H3:F(D_YG-1WCSHWJ]F<27 D>K \+
M^^M];_#3H]CH6&O'4"';:7 _VO$$[L1G/6=!-+MZ3]6N5.U=/ZV+E2[_%'PM
M.NH_#3H.LL!NA/.AKE%?[<#( HJN$R2;V_L1V#NR6:G/3[?Q,A$KI_N5-$]I
M$L<(I!F%:A](*,@S+@'&&<0"9IF$T(6XKHPW-\)JQ#5!C'=5CQ@C=_#3?[[[
M].4_'7GJ&MIV_.01P[&=:0U\2M0*MVGRFBP1\L0^UT:;E'4L53]E&]O;^IM)
M7VLN^X5LGS;&!OLL'JM@T?)>?MH4RD)[U!4?/ZI!O_XNEL_BE_5J^ZU<1$1M
M"I-( H[S%, ,,L5!$H*(YCB!:9(0ZA3,/4B:N3&4>AL3=V.I_V38FU"30#RQ
M857K\E*7EKY?>3:=!F/FT:#J+\OD9M9@V"X97\,?.B!QYJQ(QP)A+A"%(2!Q
MJBPQ*B) 6,I ) A"419#+$/GE):S8>9&;^8$O"Y/Q [KW]1GISU22LZAM8P
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
MQ?+SYG,W23ZH9="=3[3J'O0P;2<V$J)M3&XO< 61(&QABCF(S-67C5@@&,/
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
M,J5-[<L?)0AGN7%1\N!:WVQ/(G#<!\&!L#:<B'K W]T31 =%%?2:2,X&B/8
M9%3*.@L. U=9!M>Z'.=(K3784]I02#J-V3U$$ XZ"Q,GLV Q63#HZF2(X"'*
M:,%Y(UGVI*%UZRS4PRCKQJ :T+UK+Z(.]-1=HW$G#,L%1BZ*!U2U"7 DXS$X
MP2$IGF-F*")_:&1#&Y/]B4'OY["XA@-9,W%T *U-:'^':[OQ?9=UJ='AK)2G
M0U)JG[;DP666LT+CC E#/*/LI:8;XVHX6#4210>@NO/ N+LKK#%B*7WM2<O(
MUZWS#3CXY.F@>&.#E"FR!SM^-WG6O4E2-Q;7</!J*90.,/8 EVPIO"!Z2%AK
MF6*IS<,X M.D?)%<D9Q;%Z^>^&0S6-[2LR"KD2@Z -5.4^1M37<LGHMHZ5!$
M74#Y*""F4),BO(E!%QE-:RC=IF'LGAYM9'N[HOX41G< E!<Y;YX]P^Q=F))*
MO7 T=K8U8;HXGRP'HWPMCV,90@P<T)>H93$YJM:YDH]3-?8#\B!@:BR,#N#U
M<4D>Z_GR^\X!09NU4.2C:E\[:65M(0A/'JS.TA:N&/.MHY]WJ1C7N1L(/B<R
M^]2BA8_-4/,>UV$ZQ_QK6,ZG\[/5C63T,DW3]<1D9<F:4X"F!FASEA#)@X#D
M;/992R-C:Q0]3M6XOMU J&HLC Z4TLX.-JYJG3&SQ$\X7TV_XM:K>+-855_B
M;2'W8I(\Z5R9B%U)9E!&"JA-_R 9SYE12:GK08WM E-/(7%<KV^HVW! ,76
MPKM<F[CH2^!"T>5>&Q$XD\AI+08\CTP*91PWK6OY[U(QKI\W$)9.9'8/;S:/
M.,"3%#37DOB1M)>@A"+'0Z8"WI$3$FA[VK4.GS]&T[C5*L^=AG>Z6)K![!D;
MQ[[;R.(3KJ<IS&YNY+0NLC<_/'A+V0?V\9S]94-TRC"TD),FN"B3P:%(D#/7
M&&0)]L%1<;WVE]UQ88G1;Y>;-?/&1WF'R\W<KHG2W#-$!59AG;I0' 3+)7 N
MK-4BQ"Q:E]P=0-;84:O&F'D@?M5$,!T85G<&PKTX7W]:+*?_B7D2+!8962)M
M[.K<IEB?!;P#Z3B34>3 FU=4/4#.V$&LY\/628+H$5.[0P:9-BDPS4#&.AM"
M<$5&)!T7PYD+O!2K;6O_\.2YC@/&MIX;5<>*H@-8W8C8;7<S,2:17BT>LB2V
MJ% G!AFO@'MK,(3 E&_]IKR'C+%#60.#Z%3&_R C'J[XN%J4;<3D1 M]SP>'
ML,P?H[N11;[]]-5BUZ5_0NGLF($L:@-LY7BM@I$0,3ANBC%*M':E[R'E]"#3
MQ0<_;CI=$KIST R!)Y,(XFCJ(#KR>5-"&[U&KEMG0MVD8%QKNH6\[T:6CN9P
M!Q?0%?6_G*^F<URM/N#9YMR]^#9=39+ATNBD(.820#&CP4LK(+.@4TG2*M7Z
M*GJ0H$Y\L2,D?1]H3F9[#QC:TOYJ\3E,YY,H'"]>1;!%U+';O#8#D@I<T!(+
MG2K37'?>(* 3C)PNV-N0.9K+(T*DMEG].Y[A5@!_#?-PMN'.7_%SQ.4$/1HL
M9+)YEG6M\KJ8G>LY'2':G5*9/V*</+S"R& X7F2+YOP;&06OY_F<;ENRX^_L
M(O&H@XL>4JD#]ERT-=$\0O9)!^2Y2'/(*,W[5Q@YS-($!8WXU\-U<:DBR4/
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
MK7D3F,X'>#1QUH]C< <0(7C7RQA?X?:?K^=W@V'O%[/9;XOE'V&9)ZD>LMJ
MD%GK017G(?K$H#!))TQY2UQLC)\GDMB)5W\D(NXVHAI,/!V@[VY%;D(=4:<
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
MH9CR!-PL4PB<+.W6;NG3*&S7*NQRW9U%5K]\W_FW;6:9<[Q$9@445MO(JY+
M$TM )^FS<=Q8V]Q^>"*-XSJ2 R+L_F9? PBO@]M^SZZVE;Y&*^&E ($^$,^L
MJI6^%E RKZ-3VJG6T>I[2.EEWOL0\E^T%T:GF*J_7>)E,K73=.47=&"8J!O2
M#EPA.R5JY-P5&[E[#G3=(*H/E7:2Z ^ T_%R&#G]_-7Y.GUZM_ACVX0YS+__
M\O?+$K9B6.*H(8E2VY^ERJ+DP&:.F+CT@CUFACVX0'_ .$&(B]8<[5/?7+\0
M6E^[<&L!*=I<YXYRB!(C.>.)F4R_Y:)U#LM#]/0R)'N<V^PXL?0)L7>X3%5V
M9\3-OR^VTRZV;P:KBP.:)R%YG4SQ8*WDH#CQ,-23ZET4Q1;,SK6VY(^CM#L=
M=R12'H=@:[%U!,X==ZCVV)[FBV;V'Y=AOMI2QB=!6#0L>\B^9DQ$1YR4=&\P
M;F12R?H26S<[>@I]X^K'P8'87$0-\^?;Q\I^#<LY'; 5G;E-U/#X.-E]7VH5
M(SN(TE:3;FZMM=.4O 0G7 "^Z:[E= 'GG:S-'4))#'41S2MX[Z'EY,I 7%^/
M1YE(YHK,G@.!VI(]63A9$=Q!\BEHY7-DK'7Z^0T"1IY,TT+>=PH CV9P!Q?6
M/W!Z]FF-^04I(;J(+XL9-]Q9O3U?K]9AGHEEKZ:S\\U[\^6,SXTBON*?($>X
M1)Y !U2@[/_/WIMV.94CZ\*_*.[5/'RD*.A;=U$%%ZCN==XO7AI"X#Z9-FT[
M*3B__@TYG0,Y>M#VENGN59WDN'<,CQ014@RQM@93!= HJQ"##+SU>FE#^;A&
M;A \CJ#2$P)R';A-0;>R.:I(UMQ9"M0ED^ 3%\"]KJ9.%?(T1\+KFL!QM\DQ
M$+0GB'=79Q=EC@^RMQ'G/1Y?Y']>+%?K^K=2F C12I)A+"126VO+K0*GBC$I
MV>A]ZUK^/4D==V/M%<&-5=SOOOL8HQ/I8HS!I]H3@8%BODXWE;1RA73!1B9#
M\V:%.Y(X;G95K\AMI-+]$3M?A;,V?9ON.%V7)L2X6*)U"3)*)(_+&W"(CC@Q
MRACN%=F1@2.^[2W_8.@;Q"$]7.!=V.Q[!Q.7ZV&B9/2N9 L^:@VJE#H+@!:"
M3[&P&!")X(&1LR%EW#RXHV!G'Z%W@9X7L]4T5^*G7_$#IHO%=#7%Y:MOZ>PB
M8ZYCZ^K5W\5J,[KQGC#/:X[A!'T0J&0 K1EMZ\H5B%G4K=;QY"+Y#;HUUIH0
M/D[#@4&1>7R%=IR*6?--+P?WSO+_NPAGT_*]>K67F;&W*O*>_KW]#Z7;OK_5
M4?: 4FET /X>$TZ_K@<IW^3H65Z\B@9P/9!31$9;:Z1-UFC,R2B&S?O%/4#&
M(5.*KN7YXD%Y7KO,EQ?KTB:#5B@H6L6:UQ,A%.,A2B&*9EDGWV* U4Y$C7O^
M<R@J;D\\&DX7'02_-\R=G<W_"K.$==9L[22R^(K+ZTZ[7$5ADQ44?3D/"NM
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
M%Y0-56>VBP8[L.2[))?J*(LPP8'4@5C#8FH6 P?K7%%::48FJ/.<\HX//_>
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
M!C)[B+L#T/PY6V(BAS]7-C:[)(\^\. -8"5<J4";KJY=H%DTRG*TP;1NV_T
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
M>=28$T=C487<NH7\KC2.G/%QW$N =MKJ$8WK-)F)94*Q' .$7,,V1<Y *,Z
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
M+R^HTE_[C/V.FSRSC-09E:VCCFHR99VFI9T"SEQAWD649OQGC3TWWUOBPL'
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
MYB.9*RDFG9PF#I8Z%E#5N1PN0XY)8G1:^^:'XX%;/H7@WB 0[3PEN;U$3P_
M_Y%Q]?ZO)9DN-FL? F1?'%U*R@.=")PN)?0^9LN";9T:L-].3V&<_!'ANH_\
M3A2E!+L\2UKYH!D9UE)B[?6EP:G R;#A401)1D[L :=UKZ<P?O[82!TLP]/$
MZIOE^6JF@U>A#L.QC-BJF/: K&B(2H;"HZG31::':MWJ*4RA/S)2!TOP1($Z
M_YQGC AS(21PKMAZ=T1 I0-XZ\@[8,*(YG,A]]SJ*8RG/S90ATKP](!:27Q#
MG,:S2O#Z_<>\RE@V-> FLK.V3D(Q/ETT#O!"."CH Q?*\\+'3YG8;^^G,./^
MB%!N(^.NDRX^Y\5YQD5ZES]4DG_/?RY7F_GBPW4"PMV?'))QL?]J[=(M&E'<
M*-?B[EI?G\ C0Y0R%;#>2E"($9SP"C(OBHOBLRS-^\\_LI=V611W5WB[*,O5
MIZTDO_MR^<.+&& N0HJ:@ZZD+O2%+'$L2H W7B0,);5/W-YCFQ,_=[? SN/I
M$^,(:\*;?KW:S'Y;+=-YW/RZ>I=7G^?QXCD7G8S&D WMM2#?C[Z%P#0#46WJ
M;$7*=]M// PV6N &T.B[:Y ]MG8O"1,C"7O9D/-](&==2U0O*+@J>$4CHI$N
M0I:ICIH-"AR9OF"XE\$*]*7LE/>U&WSN;V :#+61Z7V ',C@J=L*?*3/^K!<
MIC\6\Z]URR(';WFJX7FG0*64 +7CH+.1QI$K%,I.300>^.S)97^HN)8->3>Q
M['_#U==M<U\"QA@AJ$Q7,$^2_-ZLP >Z>PV=EU[A#B*_\9'3O#&,(^E].=5!
MF."2&=>\V$ZUO&IDH;WB-=?&8YU8R",#YU4 D95RSEC,IC2V6I_:SS3!_O:0
M:<[[#G#TC@1QD?9_OIXO\GI]:61=3(])AEGIN09CR'A7R!G95^@!+<IL><XN
MZ\9 >G)#O:2/C&NFMI=-#T"[V/NE^EE.%ZHN'!A:#DI$!'3D) :>$XO.L!";
MC\B^N8&)_9UV@KT+F;VY/+'1\J_\(5\(X*+-6Z7BJHE@]D71N0P^J52[2P9P
M*!,DP7Q K;ETNW0S?WR%+L(G^XALV9Q_D\]H2N?KS6J.9_>HL#:'5$H!+:T
MI4KM6NOK7+/$/.I<1SKL@(+'5YCX;FF"@D;\Z^>Z>.B&O7Z#"5S$%(@O!76H
MSQ\6'">;SKGDN9*19S-V</JA??52D7XD*Z6UI#I W^7SS!MB[NOE8AO-_O=\
M\_$U*=?R4U[]\'<\.T\UU+U>T^V=TWO\>Q:CSM9S\AWK**L+!U)D5@N@/9/D
M"$C9OOAM\#:[N.L:8N5>5=.X@ML;FY_S*BP;H?/7/_,*+]A7FY[^M%RO9Y;Q
M8",6R$(0$:RV38I$$_FQ.>L0DU>MIZ,^L(TN[M#QT'4HX[M SX_+9?IK?G8V
M*RX%P6,!GS4C(X-VCD8H\#HQ;5QQ++1.;;I:>^(;<FR<[,7B#JZ]RU8>Z*6J
MK=G!RT .:%:6?$_!(7H1C"B\ME5M#(P!O51&R[4<'19[L+?AB7',M)U7*<TO
MYN_=8.(8&3M/+C1^LL[N=(Z=IZ-9\D$B@DZ!3II2R-TG P8,,RGK6(+0S9M^
MC)2G\\MY=5A_+1<?7/V3J_#8+!JG(C<%F/>L7K8!7.*!E%$%#(Q;;5I3^?AN
M^C*E]T+"W1.J$>L[3C5\%>/YI_,SW.2T?;6I[6!6^6.M7O^\->CV/Z5V_NA6
MY])^M#0ZB2[&+GQ%G4!K6&V50WBH=2O((5@TU18662K%2L+&FGE[!P?;/D\Q
M\]K>O^SC5XB!MD;GR; CEY%Y0.EJ"3G/N8X,E;%U^<J0_4U[,AV C'L6TUA"
MZ<#8_OH(=,&O2MIR\?41* 1R#[ 6U69K0=E@P,=4@&ON<K&"V-C:.7MR0]-"
M:CP<//;D>K!0.D#8'1JNWA:8*^1X%-"J#L"VY(X&AA9TQ,0<0^93:V0]N)%.
MGF /%_2R-=<[@,X-A7N_PL7Z[$(PZ3_/+T:A7"6[V"*M+1R,,9*\X90@9)O
M!N\B<V0:N=:W_FX[Z^$&/ @"CU^$K>31%\H>:,ARCSJ?N2 >Z=H-B(-R9$YX
MF:IJ%L6+]9[\G/'0ML,.IPU_CXJZUO+I"WT_$J>J ?%+G2.U_OCF;/G7_\GI
M0_YMR_BK%.!0N$+O 'FNXP:%KG^*X+U!P[-S);=NKS!PB].&U4?%7W,)]07
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
M@U=6?&)35 P(  "EE0  $0              @ $     83(P,C(Q,&ME>#(Q
M,2YH=&U02P$"% ,4    " #9@U=6GZ@*HJX#   :#   $0
M@ $["   83(P,C(Q,&ME>#(S,2YH=&U02P$"% ,4    " #9@U=6Q>^VG. '
M   4)P  $0              @ $8#   83(P,C(Q,&ME>#,Q,2YH=&U02P$"
M% ,4    " #9@U=6VN[E:/\'  !O)@  $0              @ $G%   83(P
M,C(Q,&ME>#,Q,BYH=&U02P$"% ,4    " #9@U=6OL3H4>D$  "[%   $0
M            @ %5'   83(P,C(Q,&ME>#,R,2YH=&U02P$"% ,4    " #9
M@U=6J4'7FQ %  "E%P  $0              @ %M(0  83(P,C(Q,&ME>#,R
M,BYH=&U02P$"% ,4    " #9@U=6!,X"$..? P#4@RD $
M@ &L)@  86QG+3(P,C(Q,C,Q+FAT;5!+ 0(4 Q0    ( -F#5U:?:J37X10
M ,C_   0              "  ;W& P!A;&<M,C R,C$R,S$N>'-D4$L! A0#
M%     @ V8-75G-!#*QB*P  <[8! !0              ( !S-L# &%L9RTR
M,#(R,3(S,5]C86PN>&UL4$L! A0#%     @ V8-75H@ [\_A@@  Q_P% !0
M             ( !8 <$ &%L9RTR,#(R,3(S,5]D968N>&UL4$L! A0#%
M  @ V8-75F7OAZ &S0$ WB\" !,              ( !<XH$ &%L9RTR,#(R
M,3(S,5]G,2YJ<&=02P$"% ,4    " #9@U=6NXR@4Q!* 0 JIPT %
M        @ &J5P8 86QG+3(P,C(Q,C,Q7VQA8BYX;6Q02P$"% ,4    " #9
M@U=6"3V;M>#1  #MQ@D %               @ 'LH0< 86QG+3(P,C(Q,C,Q
>7W!R92YX;6Q02P4&      T #0 _ P  _G,(

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